Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Шлях виконання flow-роrtscan






 

1. flow-роrtscan одержує нове flow повідомлення від flow модуля.

2. винятковий мисливець визначає, якщо повідомлення - новий тип пошуку за допомогою перегляду змін в sip, dip, ip_proto, і dport. Якщо воно не унікальне, і tcp прапори нормальні, припиняє роботу.

3. якщо цей зв'язок призначається для ip в server-watchnet: протягом часу пізнання серверу збільшується hitcounts для популярності служби.

Інакше він одержує тільки збережений hitcount. Якщо hitcount більше, ніж server-ignore-ліміт, припиняє роботу. Якщо це значення менше ніж server-scanner-ліміт, позначає збільшені очки, як і очки сканера.

4. зв'язок позначений як передавач або як сканер (як в 3 пункті).

Є 4 шкали часу: 2 для ip сканера і 2 для ip передавача. Встановлена шкала часу знаходить “n” подій за “m” секунд. Це типовий вид роrtscan попереджень. Змінна шкала часу регулює “рахунок очка скидання” по кожній події після першої. Це регулює сторону вікна, в якому ми знаходимо події роrtscan за допомогою узяття

end = end + ((end - start) * sliding-scale-factor)

кожного разу, коли шкала має свій власний підсумок очок, який збільшений на новий потік. Кожний набір очок взаємодіє тільки з talker-fixed-score (встановлений рахунок передавача) і talker-sliding-score (ковзаючий рахунок передавача) або з scanner-fixed-score (встановлений рахунок сканера) і scanner-sliding-score (ковзаючий рахунок сканера).

5. оцінює рахунок щодо індивідуальних порогів передавача або сканера.

if (fixed_limit < = fixed_score)

generate_alert()

 

Формат

preprocessor flow-роrtscan: [scoreboard-memcap-talker < bytes> ] \

[scoreboard-rows-talker < count> ] \

[scoreboard-rows-scanner < count> ] \

[scoreboard-memcap-scanner < bytes> ] \

[scanner-fixed-threshold < integer> ] \

[scanner-sliding-threshold < integer> ] \

[scanner-fixed-window < integer> ] \

[scanner-sliding-window < integer> ] \

[scanner-sliding-scale-factor < float> ] \

[talker-fixed-threshold < integer> ] \

[talker-sliding-threshold < integer> ] \

[talker-fixed-window < integer> ] \

[talker-sliding-window < integer> ] \

[talker-sliding-scale-factor < float> ] \

[unique-memcap < bytes> ] \

[unique-rows < integer> ] \

[server-memcap < bytes> ] \

[server-rows < integer> ] \

[server-watchnet < ip list in snort notation> ] \

[src-ignore-net < ip list in snort notation> ] \

[dst-ignore-net < ip list in snort notation> ] \

[tcp-реnalties < on|off> ] \

[server-lerning-time < seconds> ] \

[server-ignore-limit < hit count> ] \

[server-scanner-limit < hit count> ] \

[alert-mode < once|all> ] \

[ounput-mode < msg|pktkludge> ] \

[base-score < integer> ] \

[dumpall < 1> ]

 

1. scoreboard-rows-talker (значення за умовчанням: 1000000). Число рядів, що використовуються для таблиці передавача.

2. scoreboard-rows-scanner (значення за умовчанням: 250000). Число рядів, що використовуються для таблиці сканера.

3. unique-rows (значення за умовчанням: 1000000). Скільки потрібно розподілити рядів для унікального мисливця.

4. server-rows (значення за умовчанням: 65536). Скільки потрібно розподілити рядів для вивчення серверу.

Загальна примітка про ряди: рахунок вищого ряду займе більше пам'яті із загального об'єму для специфічної підсистеми. У виводі Snort це представляється як “загублені байти” і також виводиться відсоток знайдених втрат. Рахунок вищого ряду забезпечує велику хеш-таблицю, щоб мінімізувати колізії і має більш швидкий загальний час обробки за рахунок пам'яті. Хеш-таблиці безпосередньо використовують псевдовипадкову тверду “salt”, яка зібрана під час ініціалізації.

5. scoreboard-memcap-talker (значення за умовчанням: 25165824). Число байт для використовування в таблиці передавача.

6. scoreboard-memcap-scanner (значення за умовчанням: 6291456). Число байт для використовування в таблиці сканера.

7. unique-memcap (значення за умовчанням: 25165824). Скільки байт потрібно розподілити для унікального мисливця. Чим більше відводиться пам'яті, тим менше виявиться з'єднань із зайнятим сервером на популярному сервісі.

8. server-memcap (значення за умовчанням: 2097152). Скільки байт потрібно розподілити для вивчення серверу.

9. scanner-fixed-threshold (значення за умовчанням: 15). Число очок, які сканер повинен накопичити в діапазоні scanner-fixed-window (встановлене вікно сканера). “0” використовується для відключення цього виду попередження.

10. talker-fixed-threshold (значення за умовчанням: 15). Число очок, які повинен накопичити сканер в діапазоні часу talker-fixed-window (встановлене вікно передавача). “0” використовується для відключення цього виду попередження.

11. scanner-sliding-threshold (значення за умовчанням: 40). Число очок, які повинен накопичити сканер в scanner-sliding-window (ковзаюче вікно сканера) діапазоні часу. Для відключення цього виду попередження встановлюється “0”.

12. talker-sliding-threshold (значення за умовчанням: 30). Число очок, які повинен накопичити сканер в діапазоні talker-sliding-window часу. Щоб відключити цей вид попередження встановлюється “0”.

13. scanner-fixed-window (значення за умовчанням: 15). Скільки секунд слід чекати перед скиданням встановленого рахунку сканера.

14. talker-fixed-window (значення за умовчанням: 30). Скільки секунд потрібно чекати перед скиданням встановленого рахунку передавача.

15. scanner-sliding-window (значення за умовчанням: 20). Скільки секунд потрібно чекати перед скиданням відмітки сканера.

16. talker-sliding-window (значення за умовчанням: 30). Скільки секунд потрібно чекати перед скиданням відмітки передавача ковзання.

17. scanner-sliding-scale-factor (значення за умовчанням: 0.5). На скільки потрібно збільшувати ковзаюче вікно кожного разу, коли помічений новий ковзаючий вхід сканера. Його поточний розмір + (< показник шкали> * поточний розмір).

18. talker-sliding-scale-factor (значення за умовчанням: 0.5). На скільки потрібно збільшувати ковзаюче вікно кожного разу, коли помічений новий вхід, ковзаючий вхід передавача. Його поточний розмір + (< показник шкали > * поточний розмір).

19. src-ignore-net. Список ip в яких вказані ip джерела, які будуть проігноровані.

20. dst-ignore-net. Список ip де вказані ip місць призначення, які будуть проігноровані.

21. tcp-реnalties (значення за умовчанням: on). Якщо включено, коли входить новий tcp потік в набір виявлення роrtscan, перевіряє tcp прапори для нестандартних ініціаторів сеансу і призначає штрафні очки на дивні комбінації, як наприклад syn+fin

22. flag mapping

23. server-watchnet. Список машин (ip список), служби яких потрібно вивчити. Зайняті сервери повинні розміщуватися тут, щоб допомогти роrtscan-детектору дізнатися, які служби запитані в мережі.

 

Таблиця 2.5: Розподіл прапорів

 

syn або syn+ecn bits base_score (за умовчанням 1 очко)
syn+fin+th_ack і що не будь інше 5 очок
syn+fin і що не будь інше окрім аск 3 очки
що не будь інше 2 очки

 

24. server-learning time (значення за умовчанням: 28800)

Скільки секунд потрібно утримувати збільшені hitcounts (рахунок нападів) послуг на ips в server-watchnet. Ця опція не виконує підтвердження, що сервіс з’єднаний коректно. Це можливо коли взнаєш що хтось переповнив таблицю з унікальними з'єднаннями вимушуючи щось стати сервісом без згоди. Звичайно передбачається, що вивчення відбувається в час, коли трафік “типовий”. Майбутні версії Snort дозволятимуть зберігати і змінюватимуть цей стан. Якщо це застереження типове у вашому оточенні, не встановлюйте watchnet-сервери і довіряйте тільки очкам передавача.

25. server-ignore-limit (значення за умовчанням: 500)

Скільки запитів порт на ip в server-watchnet повинен побачити перед тим, як вони будуть проігноровані в цілях сканувань портів.

26. server-scanner-limit (значення за умовчанням: 500)

Скільки запитів порт на ip в server-watchnet повинен побачити перед тим, як вони будуть оброблені передавачем, а не сканером. Це мінімальне число запитів, яке повинне бути поміченим протягом server-learning-time (час вивчення серверу) для обробки потоку з'єднання з передавачем, а не з'єднання з сканером.

27. alert-mode (значення за умовчанням: once)

 

Таблиця 2.6: Режими попереджень

 

once попереджає коли вперше відбувається сканування входу. Ефективно зменшує безладдя, оскільки попередження про сканування в першому випадку указує попередженню подивитися на інші види подій
all попереджає кожного разу, коли рахунок перевищує поріг

 

28. output-mode (значення за умовчанням: msg)

 

 

Таблиця 2.7: Режими виводу

 

 

msg змінне текстове повідомлення, що містить рахунок
pktkludge
генерує фальшиві пакети і використовує вихідну реєструючу систему

 

 

29. скидає все, коли виходимо з Snort, скидає весь вміст таблиці серверу, таблицю виняткового мисливця, і дані табло. Це корисно, якщо був помічений дефект лежачий в основі алгоритмів, що використовуються, або якщо потрібно подивитися, що взнала Snort. “1” використовується для включення.

30. base-score (значення за умовчанням: 1) Рахунком за умовчанням є рахунок нового з'єднання. Це корисно тільки для відладки.

 

Приклад конфігурації

preprocessor flow-роrtscan: server-watchnet [10.0.0.0/8] \

unique-memcap 5000000 \

unique-rows 50000 \

tcp-реnalties on \

server-scanner-limit 50 \

alert-mode all \

output-mode msg \

server-learning-time 3600

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.011 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал