Помилка реєстрації в автоблокуванні Cygwin SSHd


20

Я запускаю Cygwin з SSH-діамоном на машині Windows Server 2008. Я дивився на переглядач подій і помітив, як за останній тиждень або близько від 5-ти невдалих спроб входу в секунду (груба сила) з різних IP-адрес.

Як я можу автоблокувати ці IP-адреси, а не блокувати їх по черзі вручну?

Спасибі, Ахмеде

Відповіді:


34

Я написав програму для блокування IP-адрес, як ви просите, пару років тому, але зробив це для Клієнта як роботу за наймом. Оскільки я сьогодні закінчився «вільним» часом цього вечора, я вирішив реалізувати всю справу з нуля, написати якусь корисну документацію і взагалі зробити її презентабельною програмою. Оскільки я чув від багатьох людей, що це було б корисною справою, здається, що це, мабуть, варто часу. Сподіваємось, ви та інші члени спільноти зможете отримати певну користь від цього.


Windows sshd_block

sshd_block - це програма VBScript, яка діє як раковина подій WMI, щоб отримувати записи журналу подій Windows, що реєструються sshd. Він аналізує ці записи в журналі та діє на них так:

  • Якщо IP-адреса намагається увійти з ім'ям користувача, позначеним як "забороняти негайно", IP-адресу заборонено негайно.

  • Якщо IP-адреса намагається ввійти частіше, ніж це дозволено в даний період часу, IP-адресу заборонено.

Імена користувачів та пороги "заборони негайно", пов'язані з повторними спробами входу, можна налаштувати в розділі "Конфігурація" сценарію. Параметри за замовчуванням такі:

  • Заборонити негайно Імена користувачів - адміністратор, root, гість
  • Дозволені спроби входу - 5 за 120 секунд (2 хвилини)
  • Тривалість заборони - 300 секунд (5 хвилин)

Раз на секунду будь-які IP-адреси, заборонені протягом тривалості заборони, забороняються (шляхом видалення маршруту з чорної діри з таблиці маршрутів).


Завантажити програмне забезпечення можна тут, а архів можна переглянути тут .

Редагувати:

Станом на 2010-01-20 я оновив код на підтримку, використовуючи "Розширений брандмауер" на Windows Vista / 2008/7/2008 R2, щоб виконувати затримку трафіку, створюючи правила брандмауера (що набагато більше відповідає поведінка "fail2ban"). Я також додав кілька додаткових рядків відповідності, щоб спіймати версії OpenSSH, які є "недійсним користувачем" на відміну від "незаконного користувача".


2
Я ціную роботу, яку ви зробили, і вважаю, що це чудова ідея, проте чи є ймовірність, що вона може бути змінена для роботи зі спробами RDP? Мої сервери Windows постійно атакуються в Інтернеті та блокування облікових записів, хоча напівафективне дійсно потрібно розблокувати, щоб цей користувач знову працював, відкриваючи резервну копію облікового запису користувача для іншого блокування.

@Henry: Подивіться на serverfault.com/a/335976/7200
Еван Андерсон

Цей сценарій висмоктує понад 10 відсотків мого процесора, навіть якщо не проводяться напади грубої сили ...
jjxtra

@PsychoDad: Якщо вам цікаво, зв’яжіться зі мною безпосередньо, і ми вирішимо проблеми. Я не бачив поведінки, яку ти бачиш.
Еван Андерсон

1
Я також хотів би бачити це для з'єднань RDP. Дякую
бумгауер


2

Це дуже цікаво, ми зараз оцінюємо це рішення:

Syspeace тісно співпрацює з Windows, щоб виявити можливі загрози при оптимальній продуктивності. Події в журналі подій постійно контролюються за будь-якою підозрілою поведінкою. Якщо подія вважається загрозою для системи, Syspeace переходить на наступний рівень, перевіряючи внутрішню базу правил, яка просто блокує IP-адресу та додає це правило в брандмауер Windows.

Місцевий білий список

Користувач завжди може додавати IP-адреси до локального білого списку, щоб, наприклад, запобігти блокуванню будь-яких внутрішніх мереж або тимчасово додати окремі ПК. Це слід використовувати обережно, оскільки Syspeace вважає, що будь-які IP-адреси в цьому списку заслуговують на довіру і завжди будуть ігноруватися.

Місцевий чорний список

Будь-які загрози будуть додані до локального чорного списку автоматично Syspeace. Ви завжди можете переглянути чорний список і додати або видалити їх, як вважаєте за потрібне. Однак ми рекомендуємо не вносити жодних змін у цей список, оскільки ви могли випадково прокласти шлях для невідомого хакера.

Глобальний чорний список

Ключовою особливістю Syspeace є можливість попереднього блокування відомих глобальних IP-адрес у чорному списку. Вибравши цю опцію, Syspeace імпортує на ваш клієнт Глобальний чорний список і діятиме відповідно, додаючи всі IP-адреси в чорний список до набору правил брандмауера одним натисканням кнопки.

Повідомлення

Щоразу, коли відбувається важлива подія, служба запускається або зупиняється, правила розміщуються в брандмауері або видаляються з нього або змінюється стан зв’язку з центральним сервером ліцензії та глобального чорного списку, Syspeace має можливість надсилати пошту відповідним людям у вашої організації.

Звіти

Отримання електронних листів, коли трапляються важливі події, може бути хорошим, але іноді ви також хочете отримати короткий підсумок. Syspeace складає щоденний звіт про всі спроби нападу на вашу систему та надсилає вам повідомлення з інформацією. Компанія Syspeace аналогічно складає і щотижневий звіт.

www.syspeace.com


2

Буквально всі спроби входу з Китаю / США / Індії на мій сервер спробуйте увійти в систему Адміністратор, який я відключив.

Чи не було б простіше відключити вхід адміністратора, а потім написати сценарій, який блокує всі IP-адреси, які намагаються ввійти, використовуючи "Адміністратор" як ім'я користувача?


1

Можливо, вам доведеться возитися з брандмауером Windows; У Cygwin не було б такого типу функціональності.


1

Ви можете розглянути можливість використання SSHBlock - сценарію Perl для контролю спроб грубої сили.

SSHBlock - це демон для моніторингу журналу syslog для спроб вторгнення за допомогою SSH та автоматичного блокування поганих хостів шляхом додавання рядків до /etc/hosts.allow (TCP Wrappers). Кілька порогових значень попередньо визначені, щоб мати можливість блокувати тих, хто намагається здійснити багато спроб протягом більш тривалого або коротшого періоду. Використовуйте -h, щоб переглянути параметри командного рядка.

Я ніколи ще не використовував його на Cygwin.
Однак ось посилання на іншу статтю, що описує sshblock іншими способами:
Захист від грубої сили ssh-атак

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.