книга для лек 7 8 9 vpn мэ1. Безопасность корпоративных сетей
Скачать 2.21 Mb.
|
MAC-duplicating заключается в установке на хосте злоумышленника «С» MAC-адреса, совпадающего с MAC-адресом другого хоста в сети, например «В». Теперь все пакеты, направляемые хосту «В» будут также посланы и хосту «С». Задача злоумышленника не отвечать на эти пакеты, а только принимать их. Атака MAC-flooding основана на особенности работы коммутаторов. Посылка на коммутатор огромного числа ARP-запросов на несуществующие IP-адреса, вызовет переполнение памяти коммутатора и его переход в режим функционирования концентратора. Для обратного перехода в нормальный режим функционирования необходимо перегрузить питание коммутатора. Таким образом, реализуя атаки ARP-Spoofing и MAC-duplicating, можно прослушивать трафик между любыми хостами в локальной сети корпорации, построенной на концентраторах и коммутаторах без использования шифрования. Перехват сетевого трафика осуществляется с использованием специального ПО – сетевых мониторов. Надо отметить, что не все сетевые мониторы могут перехватывать весь проходящий через них сетевой трафик. Например, Microsoft Network Monitor в стандартной комплектации Windows NT/2000/XP/2003, отображает пакеты, адресованные только данному компьютеру. В то же время, существует множество альтернативных сетевых мониторов, из которых самыми богатыми по набору функций являются Sniffer Pro от компании NAI, IRIS Network Traffic Analyzer от компании eEYE и TCP Dump. Интересной программой также является утилита Cain & Abel 2.5 итальянского специалиста по сетевой безопасности Massimiliano Montoro, включающая в себя много полезных для администраторов функций. Отметим, что подавляющему большинству снифферов для перехвата всего сетевого трафика требуется установить специальные драйвера, для чего требуются администраторские права в ОС. Однако существуют снифферы, не требующих никаких специализированных 106 драйверов, например, NGSSniff от компании NGSS Inc., который может осуществлять захват, используя Windows Sockets. Исследуем, к каким последствиям может привести прослушивание сетевого трафика. Современные сетевые протоколы локальных и глобальных сетей разрабатывались, когда проблемы информационной безопасности не являлись первоочередными. Соответственно, в данных протоколах практически отсутствую механизмы защиты. Это справедливо для многих широко-используемых протоколов – TCP/IP, ARP, HTTP, FTP, SMTP, POP3 и т.д. Поэтому в последние 5-10 лет были разработаны усовершенствованные версии протоколов передачи данных, способных противостоять угрозам безопасности. Однако по ряду причин переход на более защищенные протоколы затянулся. Так уже несколько лет ведутся дискуссии о переходе от использования в Интернет протокола IPv4 к IPv6, включающего спецификацию IPSec для защиты передаваемых данных. А в корпоративных сетях по- прежнему используются незащищенные протоколы. Рассмотрим уязвимости этих протоколов важные применительно к корпоративным сетям. Основными слабостями сетевых протоколов является отсутствие средств обеспечения конфиденциальности передаваемых данных. Так, при наличии в корпоративной сети почтового сервера с доступом по протоколам POP3, SMTP и IMAP, злоумышленник, перехватывающий трафик между почтовым сервером и любым узлом сети (например, компьютером директора), может завладеть аутентификационными данными пользователя. Это возможно, так как согласно спецификации протокола POP3 [18] аутентификационные данные передаются в открытом виде. Использование данной уязвимости иллюстрирует следующий рисунок (рис 29). 107 Рисунок 29. Экранный снимок программы Cain & Abel, перехватившей почтовые пароли. Таким образом, внутренний нарушитель, используя специальное ПО, может получить пароли всех пользователей к корпоративному почтовому серверу. В результате злоумышленник сможет читать любую корпоративную переписку, а также писать письма от имени других пользователей. Так же можно использовать скомпрометированную почтовую учетную запись для выноса из корпоративной сети конфиденциальной информации. Например, используя учетную запись какого-либо служащего переслать внутренние конфиденциальные материалы на временный бесплатный электронный ящик в Интернете. Однако существуют более серьезные последствия перехвата почтовых учетных записей. При использовании почтовых серверов на базе Microsoft Exchange в сетях построенных на базе домена Windows NT/2000, при создании пользователя, сразу же создается почтовый ящик с теми же именем пользователя и паролем, что и для доступа к домену Windows NT. В результате, перехват аутентификационных данных почтового сервера позволяет злоумышленнику получить доступ к домену от имени другого лица, например, своего непосредственного начальника. А, скомпрометировав компьютер администратора сети, можно получить практически неограниченный доступ к ее информационным ресурсам. Зная доменные аутентификационные данные пользователя или администратора домена, злоумышленник может получить практически полный доступ к данным, хранящимся на локальных машинах. В ОС Windows 2000/XP/Server при запущенной службе доступа к файлам и принтерам (file and printer sharing), функционирующей по протоколу NetBIOS, в настройках по умолчанию для доступа из сети открыты все диски компьютера (под администраторским паролем). Данная функция реализована для административных нужд, однако она предоставляет значительную опасность. Зная аутентификационные данные пользователя компьютера, если компьютер не входит в домен, или администратора домена, если компьютер включен в домен, можно получить неограниченный доступ к файловым ресурсам компьютера. Так же скомпрометированным окажется и файловый сервер – основное хранилище конфиденциальной информации компании. Поскольку доступ к файловому серверу Windows, функционирующему чаще всего по протоколу NetBIOS, также осуществляется по аутентификационным данным домена. В случае использования в корпоративной сети файлового FTP- сервера, возможен перехват аутентификационных данных и в этом 108 случае. В спецификации протокола FTP также не предусмотрено скрытие параметров аутентификации [19]. Использование внутреннего Web-сервера в корпорации с разграничением доступа пока не распространено. Однако и в этом случае без принятия специальных мер (например, поддержки SSL), в режиме «базовой аутентификации» по протоколу HTTP имя пользователя и его пароль передаются в открытом виде. Также не шифруют передаваемые данные протоколы Telnet и SNMPv1. Многие пользователи имеют бесплатные почтовые ящики в Интернете, такие как mail.ru, hotbox.com и т.д. Доступ к этим ящикам осуществляется с использованием web-интерфейса или с помощью почтовых программ, таких как Microsoft Outlook или The Bat. В большинстве случаев пользователи, не желая запоминать множество паролей, выбирают один и тот же пароль для множества служб – бесплатного почтового сервера, сервера приложений, компьютера на работе или домена. Таким образом, перехваченный злоумышленником пароль к почтовому серверу в Интернет, может предоставить ему доступ к ресурсам корпоративной сети. В подтверждение актуальности данной угрозы, приведем результаты исследования InfoSecurity 2003. Среди 152 участников исследования слово «password» в виде пароля используют 12%. Популярней только собственное имя пользователя — 16%. Дальше идут названия футбольной команды (11%) и дата рождения (8%). Устроители InfoSecurity 2003 также установили, что две трети граждане используют везде один тот же пароль: и на работе, и для банковского счета, и для электронной почты. Следует отметить, что в настоящее время получили широкое распространение службы мгновенного обмена сообщениями (IM- службы) – ICQ, Windows Messenger, AOL и другие. Мгновенные сообщения (IM, instant messaging) - удобное дополнение, а в ряде случаев, и неплохая замена переписке по электронной почте. В отличие от электронной почты, мгновенная передача сообщений позволяет пользователю видеть - доступен ли выбранный друг или сотрудник в сети. Как правило, IM-служба дает пользователю информацию, если доступен кто-то из корреспондентов личного списка пользователя. Служба мгновенного обмена сообщениями также выгодно отличает от электронной почты возможность двустороннего обмена сообщениями практически в реальном масштабе времени. Существует огромное число пользователей такой связи, у нее масса сторонников и даже своих идеологов, доказывающих, что использование мгновенной передачи сообщений на рабочем месте вместо традиционной электронной почты ведет к более эффективной и надежной связи рабочего места и, поэтому, 109 к более высокой производительности труда сотрудников. В результате, IM быстро развивается и в профессиональных и в личных приложениях. По информации Ferris Research, до 70% офисных работников пользуются «ICQ» или другими IM-инструментами в деловых целях, целиком полагаясь на их надежность. Однако использование такой службы в компании приводит к появлению серьезных угроз. В частности, данные, передаваемые по сети службы мгновенной передачи сообщений, не шифруются. Так что в большинстве IM-сетей перехвата сообщений можно опять таки использовать обычный сниффер. Это особенно опасно в крупных корпорациях, так как часто личная, секретная и другая конфиденциальная информация передается по ICQ или другой IM-сети (так как существует распространенное ошибочное мнение о большей надежности именно такого способа передачи самой секретной информации). Рисунок 30. Перехват IM-сообщений с помощью программы- сниффера ICQ-сообщений ICQ Sniff (www.ufasoft.com/icqsnif) . Мы рассмотрели уязвимости протоколов передачи данных без механизмов аутентификации и со встроенными механизмами аутентификации, а теперь исследуем защищенность протоколов сетевой аутентификации. 110 Аутентификация есть процесс проверки подлинности пользователя, т. е. подтверждение того, что пользователь действительно имеет учетную запись и может ее использовать при обращении к службам и ресурсам как локальным, так и сетевым. В настоящее время в сетях, построенных на базе MS Windows, применяются следующие протоколы аутентификации: LAN Manager, NTLM v.1, NTLM v.2, Kerberos. С развитием Windows компания Microsoft стремилась усилить безопасность применяемых протоколов аутентификации. Так протокол LAN Manager, обладающей очень низкой криптостойкостью был заменен протоколом NTLM v.1, который после найденных в нем уязвимостей был модифицирован до версии NTLM v.2. Однако в последствии были найдены уязвимости метода аутентификации и для этого протокола [20]. Поэтому в Windows 2000 Microsoft перешла на новый протокол проверки подлинности в сетях – Kerberos v.5, являющийся открытым промышленным стандартом. Тем не менее, были найдены уязвимости и у этого механизма аутентификации в Windows [21],[22]. Отметим, что для совместимости с предыдущими версиями Windows, в старших версиях осуществляется поддержка всех менее надежных протоколов аутентификации. В результате, прослушивая трафик можно получить аутентификационные данные, представляющие собой права доступа к сетевым ресурсам, например, доменные учетные записи пользователей. Пароли посылаются по сети не в открытом виде, а в виде хэшей (рис 31). Таким образом, перехватив аутентификационные данные, можно попытаться восстановить по ним исходные пароли. Рисунок 31. Захват данных аутентификации. 111 Исследуем, насколько опасна возможность перехвата паролей с точки зрения их последующего взлома. Рассмотрим два основных подхода к криптоанализу: перебор (прямой и ли по словарю) и с использованием таблиц предварительных вычислений (table precomputation). При методе прямого перебора атакующий пробует все возможные ключи для дешифрования текста. Перебор по словарю предполагает, что пароль вероятнее всего является осмысленным словом или простой комбинацией слов, букв, цифр. Существуют специализированные словари, содержащие комбинации, наиболее часто применяемые в качестве паролей. Применение атаки по словарю позволяет значительно сократить время, требуемое для подбора паролей (рис. 32). Рисунок 32. Подбор пароля пользователя User0 методом прямого перебора. Идея таблиц предварительных вычислений состоит в том, чтобы предварительно вычислить и сохранить в таблице выборочный исходный текст и соответствующие ключи для всех возможных ключей. Впервые подобный метод предложил в 1980 году Matrin Hellman. Модифицированный швейцарским ученым-исследователем Philippe Oechslin метод получил название «Time-Memory Trade-Off» (компромисс между временем и памятью) [23]. Для проверки теоретических положений была разработана программа RainbowCrack [24]. 112 Программа позволяет построить предварительные хэш-таблицы для заданного набора символов и далее по готовым таблицам подбирать пароли. Например, для подбора паролей состоящих только из символов латинского алфавита и длиной не более 7 символов, зашифрованных с помощью алгоритма, применяемого в LAN Manager, потребуется не более 3-х суток вычислений на компьютере Celeron 666 MHz. Объем таблиц составит порядка 610 Мбайт. Далее, с имеющейся таблицей подбор любого пароля, удовлетворяющего заданным условиям, составит не более 10 секунд. Существуют и онлайновые подборщики паролей, однако они ограничены по длине подбираемых паролей. Автор приводит и другие расчеты. Например, создание таблицы для подбора паролей, состоящих из всех символов латинского алфавита, цифр и специальных символов и длиной не более 7 символов, потребует около 7, 5 лет вычислений на Celeron 666 MHz при общем объеме базы 119 Gb. Конечно, использование параллельных вычислений и более мощных вычислительных станций может значительно сократить время создания подобных таблиц. Рисунок 33. Окно программы Winrtgen 1.1 для генерирования хэш- таблиц. Активные методы воздействия 113 Сканеры уязвимостей Сканирование уязвимостей – это автоматизированный процесс, направленный на обнаружение известных уязвимостей в сетевых и программных платформах. Администраторы используют сканеры уязвимостей для оценки эффективности защиты компонентов их корпоративной сети. В результате анализа определяются уязвимые места системы, которые могут быть использованы злоумышленниками для осуществления несанкционированного доступа, и администратор принимает меры по их устранению. Таким образом, результатом работы сканера является достаточно подробная информация о корпоративной сети, включающая список сетевого оборудования, компьютеров, с запущенными на них службами, версиями сетевого программного обеспечения, уязвимостей присущих данному ПО, учетные записи пользователей системы. Таким образом, сканирование злоумышленником уязвимостей является этапом, предваряющим атаку. На практике, внутренний нарушитель может собрать очень важную информацию, которая является недоступной для него в рамках служебных полномочий. Например, определить роли компьютеров в корпоративной сети, выделить файловые сервера и сервера баз данных, маршрутизаторы и интеллектуальные коммутаторы. И что особенно важно, именно результаты сканирования позволяют точно подобрать эксплойты для осуществления непосредственно несанкционированного доступа к узлам корпоративной сети. Рассмотрим результаты использование сканера уязвимостей Internet Security Scanner (ISS) в моделируемой корпоративной сети (рис 34.). Следует отметить, что злоумышленник для этих целей, вероятнее всего, воспользуется одним из бесплатных сканеров. Однако применение в данном примере коммерческого сканера ISS обусловлено тем, что это один из лучших инструментов для анализа защищенности сетей. 114 Рисунок 34. Результаты сканирования типовой сети Злоумышленник, проанализировав службы, запущенные на хостах, может разделить их по функциональному признаку – доменные контроллеры, файловые, терминальные, принт-сервера, рабочие станции. По результатам сканирования можно выяснить, каким известным уязвимостям подвержены исследуемые хосты, и подобрать для последующей атаки соответствующие эксплойты. Сетевые атаки Все сетевые атаки по способу манипуляции с данными можно разделить на три группы: • атаки, основанные на переполнении буфера (overflow based attacks) • атаки, направленные на отказ-в-обслуживании (Denial-Of-Service attacks) • другие атаки Атаки, основанные на переполнении буфера, используют уязвимость системы, заключающуюся в некорректной программной обработке данных. При этом появляется возможность выполнения вредоносного кода с повышенными привилегиями. 115 Рассмотрим реализацию атаки подобного типа на примере уязвимости, найденной в Microsoft Internet Information Services (IIS) 4.0 и 5.0. Уязвимость позволяет злоумышленнику выполнить удаленное переполнение буфера. Некорректную проверку границ переменных производит ISAPI фильтр при обработке параметров .IDA файлов. Сетевой червь Code Red использует данную уязвимость для проникновения на веб-сервер, используя следующий запрос: http://www.example.com/default.ida?NNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNNNNNNNNNNNNNNN%u9090%u6858%ucbd3%u7801%u90 90%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u9090 %u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a В данном примере, 224 символа N в качестве аргумента передаются файлу default.ida и используются для переполнения буфера. Следующий далее машинный код внедряется (inject) в стек и исполняется на атакуемом сервере. Атаки типа отказ-в-обслуживании не обязательно используют уязвимости в программном обеспечении атакуемой системы. Нарушение работоспособности системы происходит из-за того, что посылаемые ей данные приводят к значительному расходу ресурсов системы. Самым простым примером атаки этого типа является атака «Ping Of Death». Сущность его в следующем: на машину жертвы посылается сильно фрагментированный ICMP пакет большого размера (64KB). Реакцией систем Windows 95/98 на получение такого пакета является полное зависание. Другие виды атак используют ошибки в конфигурации сетевых сервисов, позволяющие злоумышленникам выполнять системные команды и получать несанкционированный доступ к данным. Примером здесь могут быть атаки, использующие размещенные на веб- сервере уязвимые CGI-скрипты. Задавая специальные параметры этим скриптам, злоумышленник может получить, например, доступ к файловой системе веб-сервера. Рассмотрим более подробно сетевые атаки, основанные на использовании уязвимостей в программном обеспечении сетевых приложений. Перевода термина "exploit" в отечественных публикациях не встречается, и эквивалента этого слова в русском языке также нет. 116 Поэтому в дальнейшем будет использоваться транслитерация с английского – "эксплойт". Данный класс атак основан на эксплуатации различных дефектов в программном обеспечении (потому и получил такое название – от англ. эксплуатировать, использовать). Следует отметить, что в последнее время наряду с термином «exploit», стал применяться термин «PoC» (от англ. Proof of Concept – дословно доказательство идеи, решения или демонстрационный пример). Данный термин более точно отражает исследовательский смысл эксплойта – демонстрация, подтверждающая возможность реализации найденной уязвимости. Потому на сайтах, посвященных информационной безопасности, чаще используется именно термин PoC. Эксплойты представляют собой вредоносные программы, реализующие известную уязвимость в ОС или прикладном ПО, для получения несанкционированного доступа к уязвимому хосту или нарушение его работоспособности. Современные программные продукты из-за конкуренции попадают в продажу с ошибками и недоработками. Разработчики, включая в свои изделия всевозможные функции, не успевают выполнить качественную отладку создаваемых программных систем. Ошибки и недоработки, оставшиеся в этих системах, приводят к случайным и преднамеренным нарушениям информационной безопасности. Например, причинами большинства случайных потерь информации являются отказы в работе программно- аппаратных средств, а большинство атак на компьютерные системы основаны на найденных ошибках и недоработках в программном обеспечении. Так, например, за первые полгода после выпуска серверной операционной системы компании Microsoft Windows Server 2003 было обнаружено 14 уязвимостей, 6 из которых являются критически важными [25]. Несмотря на то, что со временем Microsoft разрабатывает пакеты обновления, устраняющие обнаруженные недоработки, пользователи уже успевают пострадать от нарушений информационной безопасности, случившихся по причине оставшихся ошибок. Такая же ситуация имеет место и с программными продуктами других фирм. Таким образом, перед администраторами стоит проблема слежения за периодическим установлением обновлений и заплаток ПО, устраняющих известные уязвимости. Однако, как показывает практика, обновления устанавливаются крайне нерегулярно. Более того, после установки некоторых заплаток, вносящих изменения в ОС, некоторое прикладное ПО перестает нормально функционировать. Администраторы бывают вынуждены отказаться от установки обновлений, чтобы сохранить работоспособность корпоративного ПО. Такая ситуация создает дополнительные угрозы. 117 Рассмотрим действие эксплойтов на примере эксплойта KaHt2, реализующего одну из самых серьезных уязвимостей, найденную в MS Windows. Данный эксплойт организовывает атаку типа «отказ-в- обслуживании» (Denial-Of-Service, DoS) на службу «Удаленного вызова процедур» (Remote Procedure Call, RPC). Атаке уязвимы системы MS Windows NT/2000/XP/2003 [18]. Эксплойт KaHt2, реализует атаку на службу RPC, в результате которой осуществляется ошибка переполнения буфера, позволяющая злоумышленнику выполнить любой код на удаленной системе (рис. 35). Рисунок 35. Атака на службу RPC (135-й порт) с хоста BLACK на хост HOST1 В процессе атаки в течение короткого промежутка времени (порядка 0,1 сек.) на 135-й порт, отвечающий за службу RPC, с хоста злоумышленника BLACK посылается шторм TCP-пакетов на хост HOST1. В силу уязвимости службы RPC на узле HOST1 возникает ошибка переполнения буфера и выполняется код эксплойта, открывающий командную оболочку на порте 33815. Действие всех эксплойтов сводится либо к получению удаленного доступа к атакуемой системе в виде командной оболочки, т.н. шелла (shell или rootshell), либо в удаленном выполнении какой-либо 118 системной команды (например, добавление нового пользователя командой net user add), либо к вынужденной перезагрузке удаленной системы (рис. 36). Рисунок 36. В результате реализации уязвимости Windows XP SP1 эксплойтом kaHt2 получена командная оболочка удаленной системы. Для данного и многих других эксплойтов характерно наличие функций подавления антивирусных программ и межсетевых экранов. Последствия применения эксплойтов могут быть самыми критическими. В случае получения злоумышленником удаленного доступа к системе, он имеет практически полный (системный) доступ к компьютеру. Последующие действия злоумышленника и ущерб от них могут быть следующими: • внедрение троянской программы. Блокируя работу антивируса, можно установить на скомпрометированной системе программу удаленного администрирования – так называемого троянского коня. Последствия использования данных программ будет рассмотрено в следующем параграфе; • внедрение набора утилит для сокрытия факта компрометации системы, так называемых Rootkits; • несанкционированное копирование злоумышленником данных с жестким и съемных носителей информации скомпрометированной системы; 119 • заведение на удаленном компьютере новых учетных записей с любыми правами в системе для последующего доступа как удаленно, так и локально; • кража файла с хэшами паролей пользователей компьютера для их последующего подбора. В случае если скомпрометированной системой является доменный контроллер, то под угрозой оказываются все пользователи данного домена. • уничтожение или модификация информации на удаленном хосте. Может привести к значительным финансовым или материальным потерям. • осуществление действий от имени пользователя скомпрометированной системы. |