Системы обнаружения атак на сетевом уровне
Что я должен делать, если меня атаковали?
Читайте публикацию CERT: .
Главным образом, вы должны реализовать эффективные защитные меры, которые включают:
Так как сети постоянно изменяются настолько быстро, в организациях не хватает обученных людей, которые могут своевременно обрабатывать возникающие инциденты. Аналогично, сети растут таким образом, что регистрация и аудит не всегда адекватны текущему состоянию сети. Это приводит к тому, что люди не знают что делать, когда они атакованы и их сети недостаточно крепки для эффективного противостояния атакам.
Что представляют собой наиболее распространенные DoS (отказ в обслуживании) атаки?
1.10.1 Ping-of-Death
Посылает ICMP-пакета, размером более 64 Кбайт, что может привести к переполнению буфера ОС и выведению атакуемой системы из строя.
1.10.2 SYN Flood
Очень быстро посылает большое число TCP SYN-пакетов (который инициализируют соединение), оставляя жертву в ожидании громадного количества соединений, вызывая тем самым усиленную загрузку ресурсов и отказ от санкционированных соединений.
1.10.3 Land/Latierra
Посылает поддельный SYN-пакет с идентичными исходным/конечным адресом/портом, так что система движется по бесконечной петле, пытаясь выполнить TCP-соединение.
1.10.4 WinNuke
Посылает OOB/URG-данные для TCP-соединения с портом 139 (NetBIOS Session/SMB), который приводит к зависанию Windows-системы.
Что представляют собой некоторые широко распространенные "сигнатуры атак"?
Существует три типа атак:
Разведка. Эти атаки включают ping sweeps, передачу DNS-зоны, разведку с помощью e-mail, сканирование TCP или UDP-портов и, возможно, анализ общественно доступных серверов с целью нахождения cgi-дыр.
Exploit. Нарушители будут использовать преимущества скрытых возможностей или ошибок для получения несанкционированного доступа к системе.
Атаки типа "отказ в обслуживании" (Denial of Service, DoS) Когда нарушитель пытается разрушить сервис (или компьютер), перегрузить сеть, перегрузить центральный процессор или переполнить диск. Нарушитель не пытается получить информации, а просто действует как вандал, стараясь вывести вашу машину и строя.
Что происходит после того, как NIDS обнаруживает атаку?
Реконфигурация МСЭ
Сконфигурируйте МСЭ так, чтобы отфильтровать IP-адрес хакера. Однако, это по-прежнему позволяет хакеру осуществлять атаки с других адресов. Компания Checkpoint имеет стандарт OPSEC для реконфигурации МСЭ путем блокирования атакующего IP-адреса. МСЭ компании Checkpoint поддерживает "Протокол мониторинга подозрительной деятельности" (Suspicious Activity Monitoring Protocol, SAMP) для конфигурирования своего межсетевого экрана.
Звуковой сигнал
Звуковой сигал или воспроизведение .WAV файла. Например, вы можете услышать запись "Вы атакованы".
SNMP Trap
Посылка управляющей SNMP-последовательности на консоль управления типа HP OpenView, Tivoli TNE, Cabletron Spectrum и т.д.
NT Event
Сохранение информации о событии в журнале регистрации Windows NT Event Log.
syslog
Сохранение информации о событии в журнале регистрации syslog UNIX.
Посылка e-mail
Посылка администратору уведомления об атаке по e-mail.
Сообщений на пейджер
Посылка администратору уведомления об атаке на пейджер.
Регистрация атаки
Сохранение информации об атаке (время, IP-адрес хакера, IP-адрес атакованной машины/порта, информация о протоколе).
Сохранение свидетельств
Сохранение tracefile-файла необработанных (raw) пакетов для последующего анализа.
Запуск программы
Запуск заданной программы для обработки события
Отключение TCP-сессии
Создание TCP FIN-пакета (или RST) для того, чтобы автоматически завершить соединение.
Что такое "система обнаружения атак на сетевом уровне (NIDS)"?
Атака - это событие, при котором кто-то (либо "хакер", либо "взломщик") пытается проникнуть внутрь вашей системы или совершить по отношению к ней какие-либо злоупотребления. (Термин атака может толковаться и как "любое действие нарушителя, приводящее к реализации угрозы, путем использования уязвимостей" - примечание переводчика). Слово "злоупотребления" имеет широкое толкование, и может отражать различные события, начиная от кражи конфиденциальных данных, и заканчивая засорением спамом вашей системы (хотя, для многих из нас это является более приоритетной проблемой!).
"Система обнаружения атак (Intrusion Detection System, IDS)" - это система, предназначенная для обнаружения таких атак. В контексте настоящего FAQ IDS можно разбить на следующие категории:
Системы обнаружения атак на сетевом уровне (Network IDS, NIDS) контролирует пакеты в сетевом окружении и обнаружить попытки злоумышленника проникнуть внутрь защищаемой системы (или реализовать атаку типа "отказ в обслуживании"). Типичный пример - система, которая контролирует большое число TCP-запросов на соединение (SYN) со многими портам на выбранном компьютере, обнаруживая, таким образом, что кто-то пытается осуществить сканирование TCP-портов. Система обнаружения атак на сетевом уровне (NIDS) может запускаться либо на отдельном компьютере, который контролирует свой собственный трафик, или на выделенном компьютере, прозрачно просматривающем весь трафик во сети (концентратор, маршрутизатор, зонд). Отметим, что "сетевые" IDS контролируют много компьютеров, тогда как другие системы обнаружения атак контролируют только один (тот, на котором они установлены).
Системы контроля целостности (System integrity verifiers, SIV) проверяют системные файлы для того, чтобы определить, когда злоумышленник внес в них изменения. Наиболее известной из таких систем является "Tripwire".
Мониторы регистрационных файлов (Log-file monitors, LFM) контролируют регистрационные файлы, создаваемые сетевыми сервисами и службами. Аналогично NIDS, эти системы ищут известные сигнатуры, только в файлах регистрации, а не в сетевом трафике, которые указывают на то, что злоумышленник осуществил атаку. Типичным примером является синтаксический анализатор для log-файлов HTTP-сервера, который ищет хакеров, пытающихся использовать хорошо известные уязвимости, например, используя атаку типа "phf".
Обманные системы (deception systems), которые работают с псевдо-сервисами, цель которых заключается в воспроизведении хорошо известных уязвимостей для того, чтобы обмануть злоумышленников. В качестве примера можно назвать систему The Deception Tool Kit ().
Другие источники
Страница Michael Sobirey's Intrusion Detection Systems ()
Страница Purdue COAST IDS ()
Если у меня есть МСЭ, нужно ли мне обнаружение атак?
Да, по многим причинам. Некоторые из причин:
Вы никогда не узнаете, когда ваш МСЭ неправильно сконфигурирован, и что хакеры проникли в вашу сеть, если у вас нет системы обнаружения атак.
Вы никогда не узнаете, когда хакеры пытаются атаковать вашу сеть (за исключением редких случае - примечание переводчика).
Большинство корпоративных атак идут с внутренней стороны сети
Если у меня есть система обнаружения атак, нужен ли мне МСЭ?
Несомненно. Каждой корпорации требуется хорошее управление, одна точка входа в сеть. Хакеры всегда запускают автоматические программы (типа SATAN) на сеть Internet в поисках уязвимостей. Без МСЭ эти автоматические программы могут обнаруживать и незаметно использовать дыры.
Где я могу найти самую последнюю информацию о новых дырах защиты?
5.1.1 CERT (Computer Emergency Response Team)
Если есть какая-нибудь проблема с защитой, вы обязательно, в конце концов, узнаете о ней, когда она появится в CERT advisory. Координационный центр CERT (Computer Emergency Response Team) был организован большим количеством университетов и DARPA в ответ на червь Морриса в 1988. Для большей информации смотрите: .
5.1.2 AUSCERT (AUStralian Computer Emergency Response Team)
AUSCERT - это австралийская команда реагирования на компьютерную опасность AUStralian Computer Emergency Response Team. Для информации о регистрации обратитесь на их сервер:
Для получения более детальной информации свяжитесь непосредственно с AUSCERT по адресу: .
5.1.3 CIAC (Computer Incident Advisory Capability) Департамента Энергетики США
Имеет большое количество полезных консультантов. Для большей информации смотрите: .
Где мне разместить NIDS в своей сети?
Сетевой периметр
IDS наиболее эффективна на сетевом периметре с обоих сторон межсетевого экрана, близко к dial-up серверу и на соединении с сетью партнеров. Эти соединения, как правило, низкоскоростные, так что IDS не снижает их пропускной способности.
Магистраль WAN
Другой важной точкой расположения NIDS является глобальная магистраль. Частая проблема - атака на сеть из удаленной точки. Так как эти соединения также низкоскоростные, то IDS не снижает их пропускной способности.
У важного узла
Иногда NIDS устанавливают перед критичными серверами (например, сервер баз данных - примечание переводчика) для контроля трафика с этим сервером. (К такому варианту размещения можно отнести и использование IDS в демилитаризованной зоне (DMZ) или у модемного пула - примечание переводчика). Однако в данном случае проблема состоит в том, что трафик во внутренней сети передается с большей скоростью, чем в сети внешней, что приводит к неспособности IDS справляться со всем трафиком и, как следствие, снижению пропускной способности локальной сети. Именно поэтому NIDS ставят перед конкретным сервером, контролируя только определенные соединения. (В таких случаях иногда предпочтительнее установить систему обнаружения атак на уровне хоста, которая устанавливается на каждый защищаемый сервер и обнаруживает атаки именно на него - примечание переводчика).
Магистраль локальной сети
IDS непрактичны во внутренней сети из-за неспособности контролировать высокоскоростной трафик. Некоторые производители интегрируют IDS с коммутаторами и маршрутизаторами (например, ODS Network и CISCO - примечание переводчика). Система обнаружения атак, выполняющая полный разбор пакетов, вряд ли сможет быть применена в высокоскоростных сегментах LAN. Упрощенный вариант NIDS, который позволяет обнаруживать только простейшие атаки, возможно, будет более эффективным выбором.
История версий
Версия 0.3, 1 января 1999 года
Небольшие изменения
Версия 0.2, 1 ноября 1998 года
Небольшие изменения
Версия 0.1, 1 августа 1998 года
Первая версия
Как я должен ответить, когда мне
В списке рассылки по системам обнаружения атак как-то спросили, как они должны ответить на следующий e-mail:
Ниже показана запись журнала регистрации, говорящая о соединение по протоколу Telnet с компьютера из Вашего домена. Компьютер, с которым осуществлялось соединение, не предоставляет этот сервис для общего пользования, так что эта попытка может говорить об осуществлении поиска уязвимых узлов. Мы относимся к этой проблеме очень серьезно и надеемся на аналогичную реакцию с Вашей стороны.
Nov 6 07:13:13 pbreton in.telnetd[31565]: refused connect from xx.xx.xx.xx
Эта запись была сгенерирована TCP Wrappers. Она показывает попытку несанкционированного доступа с вашего компьютера на указанный узел.
В любом случае - это доказательство зондирования, но не атаки. Кроме того, никаких других доказательств нет. Как подчеркнуто Грэгом Дрю существует ряд благоприятных причин:
Имеются и другие менее вероятные возможности:
Существует и другая возможность: эта была попытка атаки типа "социальный инжиниринг". При помощи данного сообщения кто-то пытается войти с Вами в контакт, чтобы узнать, какие действия Вы предпринимаете по этому поводу. Если Вы сделаете так, то поможете злоумышленнику много нового узнать о Вашей сети:
Есть и положительные стороны от такого письма (особенно если вы не нашли ему подтверждения). Вы сможете проверить насколько эффективно работает ваша система регистрации и аудита. Если она отключена, то настало время включить ее.
Как я могу улучшить обнаружение атак/защиту под ОС Windows 95/Windows 98?
В этой части предполагается, что вы являетесь домашним пользователем, использующим Win95/Win98 для доступа к сети Интернет. Win95/Win98 не имеет возможностей аудита или создания регистрационных записей, вам действительно потребуется обновить ее до WinNT, если вы используете систему для каких-либо серьезных целей.
Установите самые последние патчи (несомненно).
Отключите совместное использование принтера. Когда совместное использование принтера включено, система создает разделяемый ресурс PRINTER$, который позволяет удаленным системам получать доступ к драйверам принтера из локальной директории system32. К сожалению, это позволяет удаленным системам получать доступ и к другим файлам, не имеющим никакого отношения к драйверам, таким как файл паролей Windows 95 (комбинированный с другими ошибками Win95).
Отключите совместное использование ресурсами. Как домашнему пользователю, вам, вероятно, не следует этого делать. Если вы должны сделать файлы доступными для совместного использования, убедитесь, что вы выбрали надежный пароль, и включайте его только на короткие моменты, когда вам необходимо делать файлы открытыми для совместного использования, затем отключайте его снова.
(еще больше информации будет потом)
Джон Козубик предлагает следующие меры по защите корпоративных пользователей. Т.к. ОС Windows 95/98 очень уязвимы, то они обеспечивают базовую площадку для проникновения на другие компьютеры сети. Windows 95 кэширует пароли в легко читаемом формате, поэтому файлы, содержащие эти пароли должны быть удалены.
del c:\windows\*.pwl
Файл кэшированных паролей будет первым, что ищут злоумышленники. Он имеет то же самое имя, что и пользователь, и кроме того плохо защищает хранимые пароли. Для запрета кэширования запустите:
REGEDIT /s \\MY_PDC\netlogon\nocache.reg
где, "nocache.reg" содержит:
REGEDIT4 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Network] "DisablePwdCaching"=dword:00000001
Как я могу усилить обнаружение атак/защиту под ОС UNIX?
Не инсталлируйте больше сервисов, чем надо. Я установил все из моего RedHat Linux дистрибутива и теперь машина светится, как новогодняя елочка, когда я осуществляю сканирование портов. Я уже нашел несколько дыр на этой (тестовой) машине, которые я могу использовать для проникновения внутрь нее.
Используйте 'netstat' или TCP/UDP сканер и 'rpcinfo' для получения перечня всех сервисов на вашей машине. Опять же, убедитесь, что все, что вы не совсем точно понимаете, отключено.
(еще больше информации будет потом; откровенно, я давно занимаюсь администрированием Windows NT - поэтому мои профессиональные знания по Unix слабы).
Прочитайте ftp://ftp.auscert.org.au/pub/auscert/papers/unix_security_checklist.
ОС Macintosh является более защищенной, чем Windows 95, которая является более защищенной, чем UNIX. Причина заключается в том, что Macintosh представляет собой систему 'конечного пользователя', и поддерживают небольшое число сервисов, которые могут быть использованы хакерами. Наоборот, UNIX-машины повально используются в качестве серверов, с несколькими приложениями конечного пользователя. Windows NT живет одновременно в двух мирах. Как результат, Macintosh занимают последнее места в списке потенциально уязвимых ОС.
Как я могу усилить обнаружение атак/защиту предприятия?
Первое и самое главное, создайте политику безопасности. Предположим, что вы наблюдаете за сетью поздно вечером и вы видите, что развивается атака. Что вы делаете? Вы позволяете атаке развиться и собираете данные? Вы отсоединяете свою сеть от Internet? Если так, вы выдергиваете штекер на МСЭ между intra- и extra- сетью? Или вы полностью отключаете соединение с сетью Интернет (препятствуя доступу пользователей на ваш Web-сервер)? Кто имеет полномочия вытаскивать штепсель?
Вице-президентам корпорации необходимо четко расставить приоритеты. Давайте рассмотрим сценарий, когда вы думаете, что вас атакуют, поэтому вы вытаскиваете штепсель из розетки. Пользователи машут руками и выражают недовольство. И, оказывается, что вы ошиблись, поэтому вас собираются поджарить. Даже когда происходят явные атаки, некоторые люди вытаскивают штепсель, опасаясь таких последствий. Кража данных является понятием теоретическим, а недовольные пользователи являются очень реальными. Таким образом, вам необходима политика, которая определяет важность таких вещей и четко устанавливает процедуры, необходимые для выполнения, когда кажется, что имеет место атака.
Как только вы точно определили приоритеты, вам необходимо понять технологию. Это описывается в следующей секции.
Как мне собрать достаточно доказательств о деятельности хакера?
NIDS собирает немало информации для идентификации злоумышленника. Однако высококвалифицированные хакеры используют различные методы для скрытия своего реального местоположения. Например, использования уже скомпрометированной системы в качестве площадки для дальнейших атак. Или подмена IP-адреса, что приводит к тому, что атака как бы исходит от компьютера, который даже может быть не включен.
Лучше всего собирать настолько много информации, насколько это возможно. Я, например, использую программу-сниффер в своей T-1-сети и храню все журналы регистрации на диске объемом 16 Гбайт. Вы можете посчитать это забавным, но я часто просматриваю эти данные. Удивительно как много попыток TCP\UDP-сканирования я постоянно вижу.
Также вы должны быть уверены, что в ваших системах "смотрящих" в Internet включена подсистема аудита и регистрации. Она поможет Вам разобраться, если вас атакуют.
Как называют лиц, которые пытаются взломать или скомпрометировать систему?
Есть два слова для описания нарушителя: хакер (hacker) или взломщик (cracker). Хакер - это общее определение для человека, который хочет вмешаться в события. Добрый хакер - это человек, которому нравится проникать в собственный компьютер и который пытается понять, каким образом он работает. Злой хакер - это человек, которой нравится проникать в системы других людей. Добрые хакеры хотят, чтобы средства массовой информации прекратили обзывать всех "хакерами" и использовали вместо этого термин "взломщик". К сожалению, этого не происходит. В любом случае в этом FAQ используется термин "intruder" ("нарушитель") для обобщенного обозначения любого, кто пытается проникнуть в ваши системы.
Нарушители могут быть разбиты на две категории.
Outsiders - это нарушители из сети Internet, которые атакуют ваши внутренние ресурсы (удаление информации на корпоративном Web-сервере, пересылка спама через почтовый сервер и т.д.) и которые временами обходят ваш межсетевой экран (МСЭ) для того, чтобы проникнуть в вашу внутреннюю сеть. Злоумышленники могут атаковать из Internet, через модемные линии, через физическое подключение к каналам связи или из сети партнеров (поставщиков, заказчики, дилеры и т.д.).
Insiders - это те, кто находится внутри Вашей сети, и имеют полный доступ к вашим серверам. Они включают пользователей, неправильно использующих свои привилегии, или исполняющих роль привилегированного пользователя (например, с привилегированного терминала). Исследования показывают, что 80% дыр защиты создаются именно insiders. Заметим, что МСЭ не обеспечивают защиты против них.
Существует несколько типов нарушителей: Joy riders (Любители веселых прогулок в чужом автомобиле) из-за того, что они могут. Vandals (Вандалы) вызывают разрушения или оставляют свои следы на ваших Web-страницах. Profiteers (Спекулянты) намереваются получить прибыль от своих действий, таких как кража корпоративных данных и их продажа.
Какие бесплатные системы обнаружения атак доступны?
Наиболее полный список систем обнаружения атак можно получить по адресу: .
4.1.1 Network Flight Recorder (NFR)
Анализатор пакетов под UNIX, основанный на libcap/tcpdump. Насколько я знаю, NFR поставляется с небольшим число сигнатур атак, но так как исходный текст NFR доступен, то многие специалисты сами пишут фильтры для нее. (Однако не многие специалисты имеют необходимый опыт и время для такой работы - примечание переводчика). Общее описание можно найти по адресу .
4.1.2 Bro
Система обнаружения атак Vern Paxson's Bro. Также основана на libcap. Я не слышал о фактах применения этой системы. Более подробную информацию можно получить в: .
4.1.3. AAFID
Идея распределенного агента для обнаружения атак, предложенная COAST. Я не знаю, сколько в этой идее вымысла, а сколько реальности.
4.1.4. Shadow
Я думаю, что это проект используемый в Вооруженных силах США для обнаружения атак. Имеется интересный документ () в котором описаны случаи распределенных в пространстве атак, обнаруженных этой системой.
4.1.5. Argus
Это не система обнаружения атак. Однако, она контролирует сетевые пакеты и события в журналах регистрации. Вы можете затем обрабатывать эти данные для обнаружения атак.
См. для большей информации или
4.1.n Другие
Nnstat
Какие другие кроме NIDS существуют контрмеры?
Межсетевые экраны
Многие люди думают о межсетевых экранах, как о первой и единственной линии обороны. Это означает, что если злоумышленники смогут обойти ее (что просто реализуется , тем более что атак совершается сотрудниками компании), то они будут неконтролируемыми внутри корпоративной сети. Лучшим подходом было бы думать, что МСЭ - это последняя линия обороны. Вы в первую очередь должны правильно конфигурировать свои компьютеры и использовать обнаружение атак. И только потом устанавливать межсетевой экран. Помните, что практически любой современный маршрутизатор обладает функциями межсетевого экрана.
Аутентификация
Вы должны использовать системы анализа защищенности, которые автоматизируют поиск учетных записей без паролей. Вы должны использовать пароли не менее чем из 7 символов (включая цифры, пунктуацию и символы в верхнем и нижнем регистрах), используя для их проверки специальные программы встроенные в операционные системы или дополняющие их (PASSFILT.DLL для Windows NT и Crack для Unix - примечание переводчика). Вы также можете использовать системы Single-Sign On или интегрировать системы типа RADIUS/TACACS в Unix или Windows NT, а также использовать встроенные возможности (например, Kerberos в Windows 2000). Эти системы аутентификации помогут устранить опасность использования паролей, передаваемых "открытым текстом" по протоколам Telnet, FTP, IMAP, POP и т.д.
VPN (Virtual Private Networks)
VPN создает защищенное соединение через Internet. Сейчас это используют многие технологии. Например, протокол PPTP создает зашифрованное соединение по PPP над TCP (некорректный пример, особенно после нахождения "дыры" в реализации PPTP в Windows - примечание переводчика). Новая версия IPsec дополняет традиционный IP новыми механизмами защиты.
Шифрование
Шифрование становится все более популярным. Вы можете шифровать электронную почту, шифровать файлы или шифровать всю файловую систему (последний вариант является наилучшим).
(Другие методы
Существуют и другие методы, дополняющие применение систем обнаружения атак. Например, системы разграничения доступа к ресурсам компьютера, системы анализа защищенности - примечание переводчика).
Какие есть другие ресурсы по защите информации?
5.2.1 Purdue's COAST -архив
Если вы хотите найти сервер в Internet с самым большим количеством информации по защите, обратитесь по адресу:
5.2.2 SANS-Институт
Я думаю, что это самое лучшее место для обучения по вопросам защиты информации для людей, которые сами не являются хакерами. Их аудитория -профессионалы в области информационных технологий, которым необходимо защищать свои сети. Для большей информации смотрите:
5.2.3 L0pht Heavy Industries
Есть некоторые хакеры с достаточно хорошими инструментами и полезными системами уведомления (тревоги), нацеленными на Windows. Для большей информации смотрите:
5.2.4 Технические контрмеры против атак
Мне нравится этот сервер; он сдержит массу хорошо организованной информации по атакам. Для большей информации смотрите:
5.2.5 Список рассылки по системам обнаружения атак
Пошлите строку subscribe ids в теле сообщения электронной почты по адресу:
Какие есть ограничения у систем обнаружения атак?
Рассмотрим следующие ограничения:
Подмена адреса/посредничество: Одна из целей обнаружения атак заключается в том, чтобы указать пальцем на того, кто вас атакует. Это может оказаться трудным по целому ряду причин. В случае 'smurf'-атаки, например, вы получаете тысячи ответов на запрос, который вы никогда не посылали. NIDS как раз и обнаруживает эти ответы, но не может обнаружить того, кто послал поддельный пакет. При предсказании номера ТСР-последовательности (TCP Sequence Number Prediction) поддельные IP-адреса используются так, чтобы NIDS не могла точно определить откуда действует хакер. В конце концов, большинство хакеров будут 'хвастаться' своими атаками через FTP или Web- procy-сервера, или организовывать свои атаки с других серверов, которые они уже взломали. Таким образом, найти того, кто атакует ваш сервер будет очень трудно, не поможет и конфигурирование фильтров IP-адресов в вашем МСЭ.
Ограничения по ресурсам: NIDS страдает от того факта, что она требует немалые ресурсы для удержания хакеров. Большинство NIDS разбирает TCP-потоки, но немногие из них разбирают пакеты (из-за требуемых ресурсов центрального процессора и оперативной памяти). Нарушители, которые фрагментируют свои пакеты, часто могут остаться необнаруженными. Аналогично, хакеры могут потратить месяцы, медленно зондируя сеть. Опять же, NIDS не имеют достаточно ресурсов для того, хранить журналы регистрации очень долго для того, чтобы сравнивать прошедшие события с событиями, которые имеют место в настоящий момент во время атаки. В конце концов, несмотря на то, что устройства, работающие в режиме "прослушивания" (promiscuous) трафика могут поддерживать T-1-соединения с сетью Интернет, им требуется гораздо больше времени в случае 100 Мбит/сек или гигабитных скоростей на главной магистрали.
Какие инструменты используют хакеры для проникновения в мои системы?
4.3.1 UNIX-утилиты
Эти утилиты либо поставляются вместе со знаменитой UNIX-платформой, либо могут быть загружены бесплатно.
ping
чтобы определить "жив" ли атакуемый хост
traceroute
чтобы найти маршрут к атакуемому хосту
nslookup/dig
чтобы открыть всю вашу DNS информацию
whois
чтобы найти информацию о регистрации в Internic
finger
чтобы определить, кто входил в атакуемую систему, или найти информацию о пользователях
rpcinfo
чтобы определить, какие RPC-сервисы запущены
showmount
чтобы отобразить все разделяемые ресурсы машины
SAMBA
Отображает информацию о совместно используемых ресурсах Windows NT SMB
telnet
позволяет вам подключаться и "играть" с любым тексто-ориентированным протоколом (HTTP, FTP, SMTP и т.д.)
4.3.2 WinNT-утилиты
Все из UNIX-утилит, упоминавшихся выше, могут быть использованы вместе с Windows NT. Есть также некоторые утилиты, характерные только для Windows NT.
nbtstat
показывает NetBIOS информацию об удаленной машине
net view
это LANMAN-программа, которая позволяет вам дистанционно просматривать совместно используемые ресурсы сети Windows NT
4.3.3 Специальные утилиты для хакерской деятельности
Стандартный набор инструментов для хакера
netcat
характеризуется как швейцарский армейский нож для "TCP/IP", позволяющий хакерам создавать скрипты взаимодействия по различным протоколам, особенно по тексто-ориентированным протоколам.
crack / NTcrack / L0phtCrack / и т.д.
Позволяет взламывать сетевые пароли (атаки по словарю или подбор пароля). Эти пакеты также содержат утилиты для выгрузки паролей из баз данных и перехват их из сети.
Sniffing утилиты
Для просмотра необработанного трафика, такие как Gobbler, tcpdump или даже Sniffer© Network Analyzer такой честной перед богом компании, как Network Associates
TCP и UDP сканеры портов
Для сканирования/зондирования доступных портов. Сканеры портов могут также запускаться в большом количестве смешанных режимов для того, чтобы избежать регистрации.
Ping sweepers
Для обнаружения активности большого количества компьютеров.
Exploit packs
Которые представляют собой набор из одной или более программ, которые знают, каким образом использовать уязвимости в системах (обычно, как только пользователь входит в систему).
Средства дистанционного анализа защищенности
Такие как SATAN, которые ищут большое количество хорошо известных уязвимостях в компьютерах во всей сети.
War dialers
Которые осуществляют большое количество телефонных звонков в поисках модемных номеров.
NAT (NetBIOS Audit Tools)
Основан на исходном коде SAMBA и является полезным для получения информации NetBIOS/SMB с Windows и SAMBA-серверов.
Сканеры
Программы (типа SATAN, ISS, CyberCop Scanner) которые ищут уязвимости в системах. Они автоматизируют поиск большого числа уязвимостей, обеспечивая хакера большими результатами с минимальными затратами.
Какие коммерческие системы обнаружения атак являются доступными?
Имеется таблица, собранная из различных источников.
| RealSecure | Internet Security Systems, Inc. | TCP/IP | Ethernet, Fast Ethernet, FDDI, Token Ring | SMB, NFS, DNS, HTTP, FTP, Telnet, SNMP, SMTP, RPC | На уровне сети На уровне хоста | Windows NT, Unix | E-mail, консоль, пейджер, телефон, SNMP, реконфигурация МСЭ и маршрутизаторов, блокировка учетных записей, завершение соединения | Первая система, которая получила распространение в России | ||
| OmniGuard Intruder Alert | Axent Technologies | Не применимо | Не применимо | Журналы регистрации, события от маршрутизаторов Cisco, su, события от МСЭ | На уровне хоста | Windows NT, Unix, Netware | Пейджер, e-mail | |||
| NetRanger | Cisco Systems | TCP/IP | Ethernet, Fast Ethernet, FDDI, Token Ring | SMB, NFS, DNS, HTTP, FTP, Telnet, SNMP, SMTP, RPC | На уровне сети | Solaris | Пейджер, e-mail, консоль | Система была разработана компанией WheelGroup, которую приобрела корпорация Cisco. | ||
| Kane Security Monitor | Security Dynamics | Не применимо | Не применимо | Журналы регистрации, БД NT SAM, реестр NT | На уровне хоста | Windows NT, Netware | Пейджер, консоль, звуковой сигнал, e-mail | Система была разработана компанией Intrusion Detection, которую приобрела корпорация Security Dynamics | ||
| Network Flight Recorder | NFR | TCP/IP | Ethernet, Fast Ethernet, FDDI | DNS, HTTP, FTP, Telnet, SMTP, RSH | На уровне сети | Unix | Пейджер, факс, консоль, e-mail |
4.2.1 CyberCop компании Network Associates
Я вижу, что многие люди неправильно информированы относительно CyberCop. Первоначально CyberCop был создан в компании Network General (разработчиками программы Sniffer) на основе технологии обнаружения атак, лицензированной у компании WheelGroup. CyberCop использовал Web/Java интерфейс. Network Associates купила Network General (точнее McAfee Associates и Network General объединились - примечание переводчика), а Cisco купила компанию WheekGroup. По неизвестной причине Cisco отказалась возобновлять лицензионное соглашение (потому что компания Cisco выпускает конкурирующую систему обнаружения атак NetRanger - примечание переводчика) и насколько мне известно Network Associates больше не предлагает CyberCop.
Однако NAI любит название CyberCop и использует его для новых продуктов. У компании Secure Networks она приобрела систему анализа защищенности Ballista и назвала ее CyberCop Scanner.
Также NAI предлагает систему, называемую CyberCop Server, которая относится к классу систем обнаружения атак на уровне хоста и функционирует под управлением Sun и Windows NT. Я думаю, что этот продукт основан на системе Stalker, разработанной компанией Haystack и приобретенной компанией NAI.
Для большей информации смотрите: .
4.2.2 RealSecure компании Internet Security Systems, Inc. (ISS)
Это единственное ПО, работающее на большом количестве Windows и UNIX-платформ. Для большей информации смотрите: . Система создана в 1996 году. (Обнаруживает атаки, как на уровне сети, так и на уровне операционной системы - примечание переводчика).
4.2.3 NetRanger компании WheelGroup/Cisco
В отличие от Cybercop и RealSecure, которые контролируют трафик в режиме прослушивания трафика (promiscuous), NetRanger - это маршрутизатор, который просматривает трафик, проходящий через него. Компания WheelGroup в 1998 была куплена Cisco, поэтому можно предположить, что вы увидите это ПО, представленное во всех других маршрутизаторах последней (или в межсетевом экране Pix - примечание переводчика). Для большей информации смотрите: .
4.2.4 Netective компании Netect
Для большей информации смотрите: .
4.2.4 SessionWall-3 компании AbirNet/Memco
Для большей информации смотрите: .
4.2.5 ID-Trak компании Internet Tools
Для большей информации смотрите: .
4.2.6 SecureNet Pro компании MimeStart
Для большей информации смотрите: .
4.2.8 Kane Security Monitor (KSM) компании Security Dynamics
Система создана в 1996.
4.2.7 Network Flight Recorder
Более конфигурируемый набор инструментов, чем plug-and-play система обнаружения атак. Система создана в 1998 году.
Какие места являются интересными?
Вот несколько мест, которые собирают информацию с других серверов. Наверное стоит взглянуть.
5.3.1 NIH security site
Для большей информации смотрите:
5.3.2 NTSecurity.net
Для большей информации смотрите: .
Какие наиболее распространенные процессы сканирования с целью разведки?
1.9.1 Ping sweeps
В течение этого простого процесса сканирования диапазон IP-адресов анализируется утилитой ping с целью определения активных компьютеров. Заметим, что большинство более сложных сканеров будет использовать другие протоколы (такие как SNMP sweep), чтобы делать ту же самую вещь.
1.9.2 TCP-сканирование
Зондирования открытых TCP-портов в поисках сервисов, которые может использовать нарушитель. Сеансы сканирования могут использовать обычные TCP-соединения или скрытые (stealth) сеансы сканирования, которые используют наполовину открытые соединения (с тем, чтобы защитить их от регистрации в журналах) или FIN-сеансы сканирования (никогда не открывают порт, но тестируют, если что-то прослушивается). Сеансы сканирования могут быть либо последовательными, либо случайными, либо сконфигурированы по перечню портов.
1.9.3 UDP-сканирования
Эти сеансы сканирования являются несколько более трудными, потому что UDP - протокол без установления виртуального соединения. Метод заключается в том, чтобы послать "мусорный" UDP-пакет к намеченному порту. Большинство машин будут реагировать с помощью ICMP-сообщения "destination port unreachable", указывающего, что на данном порту нет прослушиваемого сервиса. Однако, многие компьютеры "душат" ICMP-сообщения, поэтому вы не сможете осуществлять очень быстрое UDP-сканирование.
1.9.4 Идентификация ОС
Путем посылки недопустимых (или странных) ICMP или TCP-пакетов нарушитель может идентифицировать ОС. Стандарты обычно устанавливают, каким образом компьютеры должны реагировать на легальные пакеты, поэтому машины имеют тенденцию быть единообразными в своей реакции на допустимые входные данные. Однако стандарты упускают (обычно намеренно) реакцию на недопустимые входные данные. Таким образом, уникальные реакции каждой ОС на недопустимые входные данные формируют сигнатуру, которую хакеры могут использовать для того, чтобы понять под чьим управлением функционирует выбранный компьютер. Этот тип деятельности имеет место на нижнем уровне (вроде скрытых сеансов TCP-сканирования), на котором анализируемые системы не регистрируют события.
Какие проблемы встречаются у IDS?
См. документ по адресу для знакомства с этими проблемами.
6.1.1 Распределенное по времени сканирование
Из-за большого объема сетевого трафика NIDS с трудом поддерживают регистрацию продолжительного трафика. Таким образом, трудно обнаруживать "распределенное по времени сканирование" (ping sweeps или port scans), при котором нарушители сканируют один порт/адрес каждый час.
6.1.2 Загруженные сегменты
В настоящее время NIDS не могут поддерживать сильно загруженные сегменты, например, 100-Мбит/сек. Таким образом, в то время как они являются подходящими для незначительно загруженных сетей или WAN-связей, они имеют проблемы с сильно загруженными сегментами.
6.1.3 Коммутируемые сети
Коммутируемые сети ставят множество проблем перед NIDS, а также перед сетевым анализом вообще. Есть много решений этой проблемы, но они не всегда являются удовлетворительными. Некоторые решения:
embed
Некоторые продукты внедрены непосредственно в сам коммутатор. Однако это просто усугубляет проблему, указанную выше, в случае сильно загруженных сегментов. Объединительные платы на задней панели коммутатора работают на скоростях несколько Гбит/сек.
monitor port
Многие коммутаторы имеют "monitor port" (span port, mirror port, managed port - примечание переводчика) для установки сетевых анализаторов. NIDS также может быть легко присоединена к этому порту. Очевидная проблема заключается в том, что порт запускается на гораздо более низкой скорости, чем объединительная плата на коммутаторе, поэтому NIDS не сможет увидеть весь трафик на сильно загруженном сегменте.
inter-switch соединение
Поскольку многие коммутаторы конфигурируются иерархическим образом, качественное обнаружение может быть обеспечения путем установки NIDS на соединения между коммутаторами. Однако большинство NIDS могут только обрабатывать ограниченный объем полосы пропускания, и вероятно насыщаются в таких случаях.
6.1.4 Скоординированные атаки с невысокой пропускной способностью
Иногда хакеры собираются вместе и запускают медленное сканирование с многочисленных IP-адресов. Это затрудняет диагностику атаки системой обнаружения атак.
Какие существуют свободно распространяемые системы обнаружения атак?
4.4.1. TCP Wrappers
TCP Wrappers - модуль для Unix, который функционирует между inetd и сетевыми сервисами (типа ftp, telnet и т.д.). Inetd передает информацию TCP Wrappers, который осуществляет аутентификацию по IP-адресу и регистрирует все соединения. Затем, если необходимо, TCP Wrappers вызывает соответствующий сервис.
Каким является типичный сценарий атаки?
Стадия 1: внешняя разведка. Нарушители собирают как можно больше информации об атакуемой системе, ничем себя не выдавая. Они могут делать это, собирая доступную информацию, или маскируясь под обычного пользователя. На этой стадии вы действительно не сможете обнаружить их. Нарушитель будет высматривать "кто есть кто", чтобы собрать как можно больше информации о вашей сети, которая зарегистрирована вместе с вашим доменным именем (таким как, например, microsoft.com). Нарушитель, возможно, пройдется по вашим DNS-таблицам (используя 'nslookup', 'dig' или другие утилиты, используемые для работы с DNS), чтобы найти имена ваших машин. Нарушитель будет разыскивать другую информацию для открытого использования, такую как ваши публичные Web- и FTP- сервера с анонимным входом. Нарушитель может просматривать новые статьи или пресс-релизы о вашей компании и т.д.
Стадия 2: внутренняя разведка. Нарушитель использует более сильные методы для получения информации, но по-прежнему не делает ничего вредного. Он может пройти через все ваши Web-страницы и посмотреть CGI-скрипты, которые очень часто подвергаются хакерским атакам. Он может запустить утилиту 'ping' для того, чтобы посмотреть какие компьютеры активны в сети. Он может провести сканирование UDP/TCP-портов на намеченных для атаки компьютерах для того, чтобы определить доступные сервисы. Он может запустить утилиты типа 'rpcinfo', 'showmount', 'snmpwalk' и т.д. для того, чтобы определить, какие службы являются доступным. В данный момент нарушитель ведет "нормальную" деятельность в сети и нет ничего, что могло быть классифицировано как нарушение. В этот момент NIDS могут сказать вам, что "кто-то дергает за ручки дверей", но пока еще никто не ломится в закрытую дверь.
Стадия 3: exploit. Нарушитель пересекает границу и начинает использовать возможные уязвимости на выделенных компьютерах. Нарушитель может попытаться скомпрометировать CGI скрипт, посылая команды shell в полях входных данных. Нарушитель может попытаться использовать хорошо известные уязвимости "переполнения буфера", посылая большое количество данных.
Нарушитель может начать проверку учетных записей с легко подбираемыми (или пустыми) паролями. Хакер может пройти через несколько стадий атаки. Например, если хакер смог получить доступ к учетной записи обычного пользователя, то затем он будет пытаться совершать дальнейшие подвиги для того, чтобы получить доступ к учетной записи супервизора root/admin.
Стадия 4: скрытие следов. На этой стадии хакер успешно проник в вашу сеть. Теперь цель хакера заключается в том, чтобы скрыть свидетельства атак путем исправления журналов регистрации. Они могут инсталлировать специальные утилиты, дающие им удаленный доступ, возможность замены существующих сервисов своими собственными "троянскими конями", или возможность создавать свои собственные учетные записи и т.д. Системы контроля целостности (SIV) могут часто обнаруживать нарушителя именно на этом этапе, отслеживая измененные системные файлы. Далее хакер будет использовать систему в качестве опорной площадки для проникновения в другие системы или компьютеры, поскольку большинство сетей имеет незначительное число средств для защиты от внутренних атак.
Стадия 5: прибыль. Нарушитель использует преимущества своего статуса для кражи конфиденциальных данных, злоупотребления с системными ресурсами (т.е. организует атаки в другие сайты с вашего сервера) или стирает Web-страницы.
Другой сценарий начинается по-другому. Скорее это атака на конкретный сервер, и нарушитель может просто просканировать случайный адрес в сети Internet, пытаясь найти конкретную дыру. Например, нарушитель может попытаться просканировать всю сеть Интернет в поисках машин, которые имеют дыру SendMail DEBUG. Они просто атакуют те компьютеры, которые находят. Они не нацеливаются непосредственно на Вас, и они в действительности просто даже не хотят знать, кем вы являетесь. (При заданном перечне хорошо известных уязвимостей и перечне IP-адресов, есть хороший шанс, что есть несколько машин, которые имеют хотя бы одну из этих уязвимостей).
Каким образом я могу реализовать систему обнаружения атак на своем предприятии?
Подумайте о том, каким образом вы можете сконфигурировать следующие системы для того, чтобы обнаруживать нарушителей:
Операционные системы, такие как Windows NT и UNIX, поступают с встроенными функциями аудита/создания регистрационных записей, которые могут быть использованы для мониторинга наиболее важных ресурсов с точки зрения защиты. В разделе ниже обсуждается вопрос, каким образом сконфигурировать Windows и UNIX для того, чтобы сделать возможным обнаружение атак.
Сервисы, такие как Web-сервера, SMTP-сервера и базы данных, также включают функции регистрации и аудита. Более того, есть много инструментов, которые могут быть использованы для анализа этих файлов с целью обнаружения сигнатур атак.
Системы обнаружения атак на уровне сети, которые просматривают сетевой трафик, пытаясь обнаружить атаки. В следующем разделе перечисляется большое количество таких продуктов.
Системы обнаружения атак на уровне ОС и приложений, которые анализируют действия пользователей системы, пытаясь обнаружить атаки.
Межсетевые экраны обычно имеют некоторые возможности по обнаружению сетевых атак. Кроме того, блокирование атак - это их главная цель, которую было бы глупо не использовать.
Платформы управления сетью (такие как, например, OpenView) имеют механизмы для того, чтобы помочь сетевым менеджерам установить варианты реагирования о подозрительной деятельности. Как минимум, все SNMP-устройства должны посылать "Authentication Failure" traps на консоль управления и должны извещать администраторов, когда это происходит.
Каким образом я могу улучшить обнаружение атак/защиту под ОС Windows NT?
Выполнение пунктов следующего перечня сделает вашу ОС WinNT более защищенной, включая как улучшение функций обнаружения, так и функции защиты. Они перечисляются в порядке своей важности.
Иногда нарушители могут получить доступ к файлам, если они знают название файла. Еще лучше, инсталлируйте все в C:\WINNT, затем переинсталлируйте всю в какую-нибудь другую директорию, затем запустите аудит внутри директории C:\WINNT, чтобы он предупредил вас, когда люди будут получать доступ к инсталлированным файлам.
Это сделает невозможным удаленный доступ через локальные учетные записи на вашем компьютере, и позволит осуществлять доступ только через учетные записи домена.
Также можно рассмотреть такой вариант предотвращения несанкционированного использования компьютера. Джон Козубик предлагает использовать такой сценарий входа в систему, чтобы осуществить принудительную загрузку хранителя экрана, защищенный паролем. В сценарий входа в систему включите строку подобную этой:
regedit /s \\MY_PDC\netlogon\scrn.reg
В файл "scrn.reg" поместите текст:
REGEDIT4 [HKEY_CURRENT_USER\Control Panel\Desktop] "ScreenSaveTimeOut"="1800" "ScreenSaveActive"="1" "SCRNSAVE.EXE"="c:\winnt\system32\logon.scr" "ScreenSaverIsSecure"="1"
Это приводит к приглашению ввести пароль после 30 минут неактивности рабочей станции (эта возможность не заставляет пользователя перерегистрироваться на компьютере; только вынуждает их повторно ввести пароль, прежде чем они снова получат доступ к компьютеру).
Каким образом нарушители получают пароли?
Нарушители получают пароли следующими путями:
Перехват открытого текста: Большое количество протоколов (Telnet, FTP, HTTP) используют передачу незашифрованные паролей при передаче по сети между клиентом и сервером. Нарушитель с помощью анализатора протоколов может "слушать" сеть в поисках таких паролей. Никаких дальнейших усилий не требуется; нарушитель может начать немедленно использовать эти пароли для регистрации в систему (сеть).
Перехват зашифрованного текста: Большинство протоколов, однако, использует некоторое шифрование паролей. В этих случаях нарушителю потребуется провести атаку по словарю или "подбор пароля" для того, чтобы попытаться провести дешифрование. Заметим, что вы по-прежнему не знаете о присутствии нарушителя, поскольку он/она является полностью пассивным и ничего не передает по сети. Взлом пароля не требует того, чтобы передавать что-нибудь в сеть, тогда как собственный компьютер нарушителя используется для аутентификации вашего пароля.
Повторное использование: В некоторых случаях нарушителям нет необходимости расшифровывать пароль. Они могут повторно передать зашифрованный пароль в процессе аутентификации.
Кража файла с паролями: Вся база данных пользователя обычно хранится в одном файле на диске. В ОС UNIX этим файлом является /etc/passwd (или некоторое зеркало этого файла) и в ОС Windows NT это SAM-файл. В любом случае, как только нарушитель получает этот файл, он/она может запускать программы взлома (описанные выше) для того, чтобы найти слабые пароли внутри данного файла.
Наблюдение: Одна из традиционных проблем при защите паролей заключается в том, что пароли должны быть длинными и трудными для расшифровки (для того, чтобы сделать Dictionary и Brute Force взломы неприемлемыми). Однако часто такие пароли очень трудно запомнить, поэтому пользователи записывают их где-нибудь. Нарушители могут часто обыскивать рабочие места пользователей для того, чтобы найти пароли, записанные на небольших клочках бумаги (обычно под клавиатурой). Нарушители могут также подглядывать пароли, стоя за спиной пользователя.
Социальный инжиниринг: Наиболее распространенный (удивительно успешный) метод - просто позвонить пользователю и сказать: "Привет, это Леха из отдела автоматизации. Мы пытаемся решить некоторые проблемы в сети, кажется, что они исходят от твоего компьютера. Какой пароль ты используешь?". Многие пользователи в такой ситуации называют свой пароль. (Во многих корпорациях существует политика, которая предписывает пользователям никогда не выдавать свой пароль, даже своим собственным подразделениям автоматизации, но этот метод по-прежнему является успешным. Одним из легких способов выполнить его заключает в звонке новичку, который работает менее месяца, и спросить у него пароль, затем взломать их, сделав это таким образом, что они долго будут помнить :-)
Каким образом нарушители проникают в системы?
Основные пути, по которым нарушители проникают в систему:
Физическое вторжение. Если нарушитель имеет физический доступ к компьютеру (т.е. они могут использовать клавиатуру или часть системы), они смогут проникнуть в нее. Методы могут быть различными - от специальных привилегий, которые имеет консоль, до возможности использования части системы и снятия винчестера (и чтения/записи его на другой машине).
Системное вторжение. Этот тип хакерской деятельности предполагает, что нарушитель уже имеет учетную запись в системе как пользователь с невысокими привилегиями. Если в системе не установлены самые последние патчи защиты, у нарушителя есть хороший шанс попытаться совершить известную атаку для получения дополнительных административных привилегий.
Удаленное вторжение. Этот тип хакерской деятельности подразумевает, что нарушитель пытается проникнуть в систему через сеть с удаленной машины. Этот нарушитель действует без каких-либо специальных привилегий. Существует несколько типов такой хакерской деятельности. Например, нарушитель тратит гораздо больше времени и усилий, если между ним или ей и выбранной машиной установлен МСЭ.
Заметим, что системы обнажения атак на уровне сети прежде всего имеют отношение к удаленному (дистанционному) вторжению.
Каким образом NIDS сравнивает сигнатуры с входящим трафиком?
Трафик состоит из IP-пакетов, проходящих через сеть. NIDS способна захватывать эти пакеты по мере их прохождения через сеть. NIDS состоит из специального TCP/IP-стека, который разбирает IP-пакеты и TCP-потоки. Затем они применяет некоторые из следующих методов:
Проверка стека протокола. Большое количество атак, таких как "Ping-Of-Death" или "TCP Stealth Scanning" используют, лежащие в основе всего стека протоколов TCP/IP, нарушения в IP, TCP, UDP и ICMP-протоколов для того, чтобы атаковать компьютеры. Простая проверка системы может показать недопустимые пакеты. Эта проверка может включать контроль допустимых, но подозрительных пакетов, таких как, например, несколько фрагментированных пакетов.
Проверка прикладных протоколов. Большое количество атак используют недопустимые режимы протоколов, например, "WinNuke", который использует недопустимые параметры NetBIOS-протокола. Для того чтобы эффективно обнаруживать эти атаки NIDS должна заново реализовать широкий ряд прикладных протоколов для того, чтобы обнаруживать подозрительные или недопустимые действия.
Создание новых регистрируемых событий NIDS может быть использована для расширения возможностей подсистемы аудита вашего ПО управлению сетью. Например, NIDS может просто регистрировать все протоколы на уровне приложения, используемые на компьютере. Системы регистрации событий в поступающем потоке данных (Windows NT Event Log, UNIX syslog, SNMP TRAPS и т.д.) могут затем сравнивать эти события с другими событиями в сети.
Каким образом обнаруживаются атаки?
Есть два основных способа обнаружения атак.
Распознавание сигнатуры является наиболее распространенным методом, при котором входящий/исходящий трафик сравнивается с известными "сигнатурами". Например, большое число TCP-соединений с различными портами указывает на то, что кто-то занимается сканированием TCP-портов.
Обнаружение аномалий является другим методом, когда отклонения от основного режима функционирования описываются такими параметрами как внезапное увеличение трафика, использование CPU, обращения к файлом и т.д.). Этот метод менее эффективный, чем распознавание сигнатуры, но имеет преимущество, которое заключается в том, что он может улавливать атаки, для которых нет сигнатур. Обнаружение аномалий с этой точки зрения является более теоретическим и представляет собой тему для интенсивных исследований (некоторые исследователи получают степень Ph.D. просто классифицируя сигнатуры), особенно в области нейронных сети, нечеткой логики или других методов искусственного интеллекта.
Обратите внимание, что обнаружение может осуществляться как в реальном масштабе времени, так и путем чтения журналов регистрации уже прошедших событий.
Какими являются некоторые наиболее распространенные варианты использования?
1.8.1 CGI-скрипты
CGI-программы являются незащищенными "по умолчанию". Типичные уязвимости включают прохождение зараженных данных непосредственно к командной оболочке, использование скрытых уязвимостей, конкретизирующих любое имя файла в системе, или, иначе, открывающих гораздо больше информации о системе, чем надо. Наиболее хорошо известная ошибка CGI - это 'phf'-библиотека, поставляемая вместе с NCSA httpd. 'Рhf'-библиотека может быть использована для получения любого файла с Web-сервера. Другие хорошо-известные CGI-скрипты, которые нарушитель возможно попытается использовать: TextCounter, GuestBook, EWS, info2www, Count.cgi, webdist,cgi, php.cgi, files.pl, nph-test-cgi, nph-publish, AnyForm, FormMail. Если вы видите, что кто-то пытается получить доступ к одному или всем из этих CGI-скриптов (и вы не используете их), то это ясно указывает на попытку вторжения.
1.8.2 Атаки на Web-сервер
Помимо выполнения CGI-программ, Web-сервера имеют другие возможные дыры. Большое количество Web-серверов (включая IIS 1.0 и NetWare 2.x) имеют "дыру", из-за которой название файла может включать ряд последовательностей "../" в названии пути для перемещения еще куда-либо в файловой системе и получения любого файла. Другая широко распространенная ошибка - это переполнение буфера в поле запроса или в одном из остальных HTTP-полей.
1.8.3 Атаки на Web-броузер
По-видимому, Web-броузеры компаний Microsoft и Netscape имеют уязвимости (хотя, конечно, в самых свежих версиях, насколько нам известно в данный момент, пока еще они не найдены. Что не отрицает их наличия - примечание переводчика). К таким атакам можно отнести URL-, HTTP-, HTML-, фрейм-, JavaScript-, Java- и ActiveX-атаки.
URL-поля могут стать причиной переполнения буфера, в процессе обработки в заголовке HTTP или выполнении в некоторой форме. Также старые версии Internet Explorer содержали ошибку, позволяющую выполнять файлы с расширением .LNK или .URL.
HTTP-заголовки могут использоваться для реализации атак путем передачи информации полям, которые не предназначены для приема этой информации.
HTML- теги часто могут быть использованы для атаки (например, MIME-переполнение в теге