Лекция 7 Обнаружение телекоммуникационных атак. ....

Презентация:



Advertisements
Похожие презентации
Хакерские утилиты и защита от них. СЕТЕВЫЕ АТАКИ Сетевые атаки - направленные действия на удаленные сервера для создания затруднений в работе или утери.
Advertisements

ОСНОВНЫЕ ВИДЫ И ПРИЕМЫ ХАКЕРСКИХ АТАК Свидетель 3.
Эвристический анализ. Слово "эвристика" происходит от греческого глагола "находить". Суть эвристических методов состоит в том, что решение проблемы основывается.
DoS-атаки и методы защиты от них Выполнила студентка группы И411 Сурков В. М.
Сетевые службы Для конечного пользователя сеть это не компьютеры, кабели и концентраторы и даже не информационные потоки, для него сеть это, прежде всего,
Хакерские утилиты и защита от них Работа выполнена Миненко Еленой ученицей 10 Б класса.
Виды угроз Виды угроз в информационной системе Лекция 3.
СЕТЕВЫЕ ЧЕРВИ Свидетель 1. СЕТЕВЫЕ ЧЕРВИ Сетевые черви - это вредоносные программы, которые проникают на компьютер, используя сервисы компьютерных сетей:
БЕЗОПАСНОСТЬ РАБОТЫ В ЛОКАЛЬНОЙ СЕТИ Учитель информатики и математики МОУ «Ушаковская СОШ» Шимановского района Амурской области Гатилова Татьяна Геннадьевна.
Лекция 5 - Стандарты информационной безопасности распределенных систем 1. Введение 2. Сервисы безопасности в вычислительных сетях 3. Механизмы безопасности.
Информационные технологии в профессиональной деятельности.
Сетевые черви и защита от них. СЕТЕВЫЕ ЧЕРВИ Сетевые черви - это вредоносные программы, которые проникают на компьютер, используя сервисы компьютерных.
Лекция 12 - Классификация удаленных угроз в вычислительных сетях. Типовые удаленные атаки и их характеристика.
Хакерские утилиты и защита от них. СЕТЕВЫЕ АТАКИ Сетевые атаки - направленные действия на удаленные сервера для создания затруднений в работе или утери.
Распределенная обработка информации Разработано: Е.Г. Лаврушиной.
Организация корпоративной защиты от вредоносных программ Алексей Неверов Пермский государственный университет, кафедра Процессов управления и информационной.
Прочие вредоносные программы. DoS, DDoS сетевые атаки Программы данного типа реализуют атаки на удаленные сервера, посылая на них многочисленные запросы,
Брандмауэр Информационные Технологии. Введение В повседневной жизни информация имеет стоимость, как материальную, так и моральную, поэтому её защита имеет.
Интенсивное развитие компьютерных сетей делает особенно актуальной проблему анализа работы сетей. Трафик сети является одним из важнейших фактических.
Транксрипт:

Лекция 7 Обнаружение телекоммуникационных атак

....

Способы классификации атак с позиции построения систем их обнаружения 1. Удалённое проникновение (remote penetration). Атаки, которые позволяют реализовать удалённое управление компьютером через сеть. Примерами программ, реализующих такое управление, являются, NetBus или Back Orifice, реверсивный сеанс telnet 2. Локальное проникновение (local penetration). Атака, приводящая к получению несанкционированного доступа к узлу, на котором она запущена, либо повышению прав пользователя. Примером такой программы является GetAdmin или реализация эксплоита для уязвимости в ядрах Linux через ptrace. 3. Удалённый отказ в обслуживании (remote DoS (denial of service)). Атаки, которые позволяют нарушить функционирование системы или перезагрузить компьютер удалённо. Примерами такой атаки являются teardrop, trinoo, fapi. 4. Локальный отказ в обслуживании (local DoS). Атаки, позволяющие нарушить функционирование системы или перезагрузить компьютер, на котором они реализуются. В качестве примера такой атаки можно привести враждебный апплет, который загружает центральный процессор бесконечным циклом, что приводит к невозможности обработки запросов других приложений. Также, в случае неправильной настройки, это может быть ветвящееся приложение с кучей потомков, занимающих все свободные идентификаторы PID. 5. Сетевые сканеры (network scanners). Программы, которые анализируют топологию сети и обнаруживают сервисы, доступные для атаки. Примером такой программы может служить nmap. 6. Сканеры уязвимостей (vulnerability scanners). Программы, осуществляющие поиск уязвимостей наузлахсети и которые могут быть использованы для реализации атак. Примеры: система SATAN или Shadow Security Scanner, XSpider, LanGuard, XFocus-X- Scan и др.

Продолжение 7. Взломщики паролей (password crackers). Программы, которые подбирают пароли пользователей. Примером взломщика паролей может служить L0pht Crack для Windows или Crack для *nix. 8. Анализаторы протоколов и снифферы (sniffers). Программы, которые «прослушивают» сетевой трафик. При помощи этих программ можно автоматически искать такую информацию, как идентификаторы и пароли пользователей, информацию о кредитных картах и так далее. Фактически анализатор протокола - это сниффер плюс некоторая часть, осуществляющая фильтрацию и разбор перехваченных пакетов по некоторым правилам. Часто обе задачи выполняет один и тот же продукт. Примерами таких программ могут служить tcpdump, ethereal, Microsoft Network Monitor, NetXRay компании Network Associates, Lan Explorer. Принадлежность реальных атак к тому или иному классу не всегда однозначна, так как не всегда можно чётко определить конечную цель атаки, которой можно добиться разными путями. Например, в случае невозможности осуществления напрямую DoS-атаки может быть выполнена атака на удалённое проникновение, после чего могут быть остановлены те или иные службы. С точки зрения СОА не имеет смысла классифицировать атаки по основным видам угроз : нарушение конфиденциальности, целостности, доступности, так как эти угрозы достаточно общие и реализуются по- разному, соответственно их обнаружение может быть осуществлено не единственным способом.

Классификация Каждая фирма предпочитает классифицировать атаки по- своему, например, компания Internet Security Systems, Inc. [19] ещё больше сократила число возможных категорий, доведя их до пяти: сбор информации (Information gathering); попытки несанкционированного доступа (Unauthorized access attempts); отказ в обслуживании (Denial of service); подозрительная активность (Suspicious activity); системные атаки (System attack). Первые четыре категории относятся к удалённым атакам, а последняя - скорее к локальным, так как удалённое совершение системных атак затруднительно. Также в эту классификацию не попали некоторые атаки, например, «ложный DNS-сервер»,«подмена ARP-сервера» и др.

Классификация Наиболее правильным подходом является классификация с точки зрения СОА, так как в этом случае более чётко можно отнести те или иные действия к тому или иному классу атак, указав реальные, а не гипотетические атаки, и определить способы противодействия и обнаружения.

Классификация Пассивные атаки - это различный сбор информации о какой-либо службе, узле или сети узлов без какого-либо воздействия на их работу. Например, прослушивание и перехват трафика. Также пассивной атакой считается анализ открытых источников, однако данный подкласс мы рассматривать не будем, так как это не прямая, а косвенная атака. Более правильным было бы введение модели нарушителя, из которой сразу стало бы ясно, что в нашем случае считать атакой, а что нет, но чтобы не перегружать статью, опустим этот формальный момент. Пассивные атаки являются наиболее сложными с точки зрения их обнаружения, так как грамотно организованная атака никак себя не обнаруживает. Данным классом не стоит пренебрегать, так как основная часть трафика в сети передаётся в открытом виде и эта атака может служить составной частью более крупномасштабной атаки. Для её реализации чаще всего сетевой адаптер Устройство ethernet переводится в режим promiscuous mode. Так как среда ethernet общая для всех, кроме случая точка-точка, сетевой адаптер начинает принимать (прослушивать) весь проходящий трафик. Поступающие так средства называются снифферами. Обычно снифферы запускаются на машинах, реально работающих в сети, то есть имеющих легитимные сетевые адреса.

Далее Если сниффер используется нарушителем, то это считается атакой. Если сниффер санкционированно используется администратором сети, то это мощное средство анализа работы сети. Также сниффер является составной частью любой сеть- ориентированной СОА Обнаружение снифферов чаще всего основывается на ошибках их работы либо косвенными методами. При неправильной настройке хосты со снифферами могут выдавать ответы на пакеты, адресованные им, обнаруживая себя, в то время как при обычном режиме работы они на эти пакеты отвечать не стали бы. (Например, обнаружение большинства Linux-машин со снифферами несколько проще: в режиме прослушивания они отвечают на все пакеты, адресованные их IP-адресу, вне зависимости, их ли MAC-адрес в пакете или нет, из-за особенностей реализации и используемых настроек по умолчанию. В обычном же режиме работы все пакеты с чужими MAC-адресами отбрасываются не будучи обработанными.) Другой трудноскрываемой чертой снифферов, а следовательно, выдающей их, является статистическая зависимость. Любому снифферу необходимо обрабатывать трафик либо сохранять его куда-то на диск. В случае недостаточной производительности неизбежны задержки. При этом замедление реакции на обычные пакеты может коррелировать с повышением трафика в сети у узлов, находящихся в режиме прослушивания. Так как снифферы постоянно совершенствуются, то на подобных ошибках можно отловить только уязвимые снифферы или устанавливаемые удалённо (в процессе атак, когда многие мелочи невозможно не только предусмотреть, но и реализовать). Существует несколько способов борьбы со снифферами.

Далее Первым, не самым эффективным способом борьбы является их обнаружение с помощью антиснифферов. Среди таких программных средств, ловящих снифферы в сети, можно назвать следующие: AntiSniff, CPM (Check Promiscuous Mode), neped, sentinel. Со своей задачей данные программные продукты справляются очень неплохо. Однако хорошо настроенный сниффер обнаружить ими невозможно. Поиск необнаруживаемых средств возможен только косвенными способами, например, путём создания ловушек [6,20] и генерации ложного трафика к ним, содержащего ценную информацию, скажем, пароли в открытом виде при обращении к ложному почтовому POP3-серверу. Хост, воспользовавшийся ложной информацией, будет значительным источником информации для успешного поиска сниффера. Однако и в этом случае атакующего могут и не поймать, если никто не воспользуется ловушкой. Ярким примером из жизни может служить история с городом Ковентри во время Второй мировой войны, когда был разбомблён целый город с людьми в цену сокрытия факта получения информации. Несомненно, что бороться со снифферами лучше предупреждающими способами, сводя эффективность их использования до нуля. Например, с помощью сильных средств аутентификации. Под «сильными» мы понимаем такие методы аутентификации, которые трудно обойти. Например, использование одноразовых паролей (OTP - One-Time Passwords). Существует несколько способов реализации одноразовых паролей, в том числе и с использованием односторонних функций. Если нарушитель узнаёт одноразовый пароль с помощью сниффера, то эта информация будет бесполезной, потому что в этот момент пароль уже будет использован и выведен из употребления. Заметим, что этот способ борьбы со сниффингом эффективен только для борьбы с перехватом паролей. Снифферы, перехватывающие другую информацию (например, сообщения электронной почты), не теряют своей эффективности. Ещё одним способом борьбы со сниффингом пакетов в вашей сетевой среде является локализация трафика путём использования коммутирующей инфраструктуры. Если, к примеру, во всей организации используется коммутируемый ethernet, хакеры могут получить доступ только к трафику, поступающему на тот порт, к которому они подключены. Коммутируемая инфраструктура не ликвидирует угрозу сниффинга, но заметно снижает её остроту. На практике данный класс атак имеет очень узкое применение, ограничивающееся в случае локализации трафика одним сегментом. Сегодняшнее значительное падение цен на коммутаторы (switch-и,$25-55 за 5-16-портовые) позволяет полностью отказаться от концентраторов (hub), чем значительно снизить актуальность применения данной атаки на практике. В случае использования физической среды, отличной от ethernet, реализация программными средствами прослушивания сильно усложняется, вплоть до невозможности. Физическое снятие информации нами вообще не рассматривается.

Далее Активные атаки - это взаимодействие со службой, узлом или сетью узлов с целью нарушения их функционирования либо получения несанкционированным образом какой-либо информации. (На сегодняшний день нет точного определения термина «атака», как и точного определения «активная атака».) Исходя из этого определения можно заключить, что оно захватывает основные три типа угроз : нарушение конфиденциальности, целостности, доступности, но, как было замечено выше, реально эти три типа сводятся к двум: активному сбору информации и нарушению работы. Для обоих типов имеются средства противодействия. Результатом нарушения работы может быть утечка информации, например, правила функционирования могут быть таковы, что информация недоступна. Также может быть отказ в обслуживании, замена одних параметров или данных другими. Формально в это определение попадёт и класс атак «без последствий», когда что-то было изменено, но ничего от этого не нарушилось, но от этого атаки не перестали быть атаками, как если бы вы перешли дорогу в отсутствие машин и свидетелей на красный свет, поэтому такие атаки надо также рассматривать. Многие определения упускают этот на первый взгляд безобидный класс атак. С точки зрения СОА этот класс атак практически ничем не будет отличаться от других. Под активным сбором информации следует понимать все способы, с помощью которых можно получить информацию: сканирование, работу со службами, получение информации в результате нарушения работы. (Существуют способы получения информации не техническими средствами или способами, которым нельзя противопоставить СОА. Такие способы не рассматриваются, так как с технической точки зрения ни атаками, ни телекоммуникационными атаками они не являются. Например, обзор печатных источников открытой информации.) Термин «телекоммуникационная атака» более правильный, но в силу его «громоздкости и длинности» в письменной и устной речи он практически всегда заменяется просто «атакой», все понимают смысл из контекста, хотя формально, например, удар топором по работающему серверу с последующим его выходом из строя будет являться атакой на отказ в обслуживании. Везде и ниже мы будем подразумевать телекоммуникационные атаки, если это не оговорено особо.

Сканирование Сканирование бывает двух видов: обычное (или открытое) и полуоткрытое (закрытое). Открытое сканирование - это когда производится попытка соединиться обычным образом с одной или несколькими службами. Так как службы привязаны к портам, то попытка соединения называется «опробованием порта» или просто опробованием. Чаще всего это делается с целью получения информации прямым или косвенным образом. При этом работа узлов, связанных каким-то образом с работой данной службы, не нарушается. Обычно сканирование/опробование идёт сериями, как вариант, растянутое по времени и случайным образом. После соединения со службой и получения от неё приветственных заголовков соединение закрывается. Сканирование осуществляется программами, называемыми «сканерами». Обычно под сканером понимают средство защиты, выявляющее уязвимые места в системе, которое помимо различных сканирований может работать со службами. Если сканирование не санкционировано, то оно считается атакой. Сканеры могут запускаться как локально, так и удалённо на других узлах. Различные сканеры ищут разные слабые места, но все они могут быть разделены на две категории: сканеры системы и сканеры сети. Сканеры сети подобны человеку, проверяющему, закрыл он дверь или нет, дёргая при этом за ручку. Подёргивание ручки не у своей двери аналогично несанкционированному сканированию. С целью сбора информации открытому сканированию могут подвергаться не только отдельные службы и узлы, но и целые сети. Сканирование может проводиться как вручную, так и автоматическими средствами. С целью затруднения обнаружения в лог-файлах факта сканирования, оно может проводиться со случайным порядком сканирования портов и продолжительное время. Для борьбы со сканированием рекомендуется использовать программы, отслеживающие обращения с одного IP-адреса в короткое время к различным портам и блокирующие весь трафик для данного адреса. Также рекомендуется вместо сообщения об ошибке, в случае отсутствия сервиса/узла/ сети, во внешнюю сеть вообще не высылать никакой информации [21]. Среди программ-сканеров можно перечислить следующие программные продукты, имеющие те или иные дополнительные возможности: nmap, ISS, SATAN, Connect, exsscan, getethers, IdentTCPscan, jakal, portscan, QueSo, sl0scan, spoofscan, strobe, xscan и др. Для защиты от атак, выполняемых сканерами, существуют различные программы, например: courtney, IcmpInfo, scan-detector, klaxon, PortSentry и многие другие, включая большинство СОА. У обычного открытого сканирования есть один минус, а именно, оно может быть легко обнаружено без использования СОА путём ручного просмотра лог-файлов. На первых порах сканирования так и обнаруживали. В ответ на это был придуман способ закрытого или полуоткрытого сканирования, когда простым способом без использования дополнительных программ обнаружить факт сканирования невозможно.

Сканирование Полуоткрытое сканирование - это формально незавершённое обычное открытое сканирование. Если рассмотреть обычную процедуру трёхстороннего «рукопожатия» при установке TCP-соединения, то отличие от обычного сканирования будет заключаться в отсутствии третьей - завершающей стадии. Если коротко, при установке соединения с узла, осуществляющего сканирование, посылается пакет с установленным флагом SYN (первая стадия), в ответ высылается подтверждение установления соединения пакетом с установленными флагами SYN и ACK со сканируемого узла (вторая стадия). Далее требуется подтверждение установления соединения со сканирующего узла пакетом с установленным флагом SYN (третья стадия). При отсутствии последней стадии происходит разрыв формально не установившегося до конца соединения по тайм-ауту, как следствие, запись в лог-файлах об успешном соединении не делается. Отсутствие записи о попытке установления соединения свидетельствуют об отсутствии сканирования. Также в этот класс следует отнести сканирования пакетами без флагов, пакетами со всеми установленными флагами и различными их неправильными комбинациями, в литературе подобные сканирования носят свои названия, как NULL scan, FIN scan, X-MAS scan, «oddball packet» и др. Так как в RFC чётко не определено, как следует реагировать на неправильные пакеты, то различные операционные системы делают это по-разному, таким образом имеется возможность определить используемую операционную систему на хосте косвенным образом. Ситуация сравнима со следующей: вы подходите или подъезжаете к светофору, а там одновременно горят и красный и зелёный сигналы. Кто-то подождёт, кто-то пойдёт или поедет напролом, также по-разному реагируют и операционные системы на неправильные пакеты. Для борьбы с утечкой информации рекомендуется выбрасывать все неправильные пакеты, не отвечая на них сообщениями об ошибках. Так же можно использовать системы обнаружения сканирований или вторжений. С целью затруднения работы сканирующей стороне возможно использование липучих ловушек. Большинство сканирующих и обнаруживающих программных средств, перечисленных параграфом выше в разделе открытого сканирования, способны работать и с закрытыми сканированиями. Отделять эти программные средства в отдельную группу бессмысленно.

Результаты сканирования Само по себе сканирование без последующего продолжения атак не несёт никакой угрозы, однако возникшая и существующая по сей день практика безнаказанности заставляет обратить на данный вид атак больше внимания. Безнаказанность приводит к регулярному, практически непрерывному и случайному сканированию всего блока IP-адресов. Это отмечается и в различных последних отчётах по сетевой безопасности. Факт сканирования уже не может, как ранее, использоваться в качестве высокодостоверного сигнала о начале какой-либо атаки. Случайные сканирования не столько представляют опасность для сканируемого узла, сколько «замусоривают» лог-файлы и затрудняют обнаружение атак, непосредственно направленных на данный узел. Для повышения значимости сканирования в качестве сигнального фактора обнаружения первой стадии атаки следует использовать обработку информации с нескольких распределённых узлов. Более подробно об этом будет рассказано в последующих разделах. Сейчас перейдём к следующей, логически вытекающей стадии перерастания сканирования в работу со службами.

Работа со службами Работа со службами - это взаимодействие с одной или несколькими службами, когда целью ставится получение информации, не нарушая работы. Обычно в случае использования автоматических средств нападения и сканирования данный класс атак следует сразу же после сканирования. Нередко разделить стадию сканирования от стадии работы со службами бывает невозможно. Однако у этих двух классов атак есть различие - разная достоверность получаемых результатов. Работа со службами может более точно определять тип и диапазон версий операционной системы и запущенных сервисов, тем самым подавать более достоверную информацию, что повышает вероятность осуществления успешной атаки на последующих стадиях. Классическим примером борьбы на первой стадии с данным и предыдущим классом атак является замена заголовков, выдаваемых теми или иными сервисами после установления соединения. Целью любой работы со службой обычно является получение информации для последующего нарушения работы служб. Нарушение работы может быть направлено на отдельные службы, группы служб, узлы и сети узлов с целью получения информации, изменения алгоритма функционирования атакуемого объекта, отказа в обслуживании.

Атака для получения информации Данный класс является логическим продолжением предыдущих. После работы со службой следуют действия, вызывающие разовое изменение нормального алгоритма работы, в результате чего может произойти утечка информации. Цель атаки - только получение информации, при этом атакующий может восстановить работу узла и попытаться скрыть следы своего присутствия. Защита от данного класса атак ничем не отличается от мер, противодействующих сканированию и другим атакам. Дополнительно принятыми мерами может быть шифрование важной информации, начиная от swap- раздела и заканчивая шифрованием всего трафика. Не имеет смысла пытаться выделить средства, противодействующие только данному классу атак.

Далее Атака с целью изменения алгоритма функционирования является либо продолжением предыдущего класса, либо отдельным классом. Целью атак данного класса, как видно из названия, является явное изменение алгоритма функционирования. Часто атаки попадают сразу под несколько классов, так как имеют несколько целей. Два вышеописанных класса атак являются классическими, и чаще всего, когда употребляют слово «атака» без уточнений, то имеются в виду именно эти два класса. Системы обнаружения атак и/или вторжений изначально делают больший акцент на эти классы, так как ущерб от них, особенно от второй, сразу становится явным. Формально изменение алгоритма функционирования может быть произведено таким образом, что узел или служба «зависнет» либо просто не будет никак реагировать на обращения к нему. Однако данный вид атак обычно выделяют отдельным классом, так как привести систему к состоянию отказа в обслуживании бывает гораздо более простой задачей, чем что-то изменить в алгоритмах функционирования, не нарушив работоспособности.

DoS Отказ в обслуживании. (DoS, Denial of Service). Отдельный вид атак, когда целью ставится перевести узел, сеть или службу в такое состояние, когда она не могла бы обслуживать легальных пользователей, выдавая им сообщение о недоступности или вообще не отвечая. Добиться данного можно двумя путями. Первый - с помощью уязвимостей в атакуемом объекте. Несмотря на то, что цель атак подходит под определение данного класса, их принято классифицировать как «изменение алгоритма функционирования», см. выше. Второй - с помощью большого числа запросов. Любой узел, даже без уязвимостей, с верифицированным алгоритмом работы, можно перевести в состояние отказа в обслуживании. Исторически изначально была попытка борьбы с данным классом атак путём увеличения производительности узлов и скорости пропускных каналов к ним, но тут же последовал ответ в виде распределённых атак на отказ в обслуживании (DDoS, Distributed Denial of Service). Распределённая атака на отказ в обслуживании -это когда атака ведётся не с одного узла в сети, а с нескольких. Логично заметить, что путём увеличения числа атакующих узлов, даже при маленькой пропускной способности и производительности, на них можно «забить» любой высокоскоростной узел/канал. Набор узлов для проведения подобных атак обычно является следствием других атак. В результате уязвимостей на узлах они атакуются и на них размещается некоторый код, который работает по продуманному алгоритму.

DoS С точки зрения выбираемой цели совершения той или иной атаки в данный класс возможно включение и некоторых видов вирусов-червей. Размещённый код может выжидать команды, а может и атаковать и «завербовывать» себе другие узлы, создавая распределённую сеть из заражённых узлов. Когда распределённая сеть из заражённых узлов начнёт атаку на отказ в обслуживании, то защищаться от данной атаки отдельно невозможно. Последствия можно как-то уменьшить, если у вышестоящего провайдера во время атаки ставить up-stream-фильтры. Борьба в данном случае ведётся уже вручную, а не автоматическими средствами, постепенным отключением каждого замусоривающего сеть узла через его провайдера. Наиболее эффективно данный класс атак предупреждать, так как заблокировать данные атаки за короткое время на сегодняшний день затруднительно. Если бы в узлах не существовали уязвимости, то данный класс атак было бы очень сложно реализовать по причине трудности создания объединённой атакующей сети. С нескомпрометированных узлов атаковать можно, но велик риск быть пойманным и наказанным. Атакующие предпочитают не рисковать таким образом. Сейчас этот класс в большинстве составляют именно распределённые атаки на отказ в обслуживании, так что слово «распределённые» часто опускается.