Глава 10. СЕТЕВЫЕ УСТРОЙСТВА
|
Сетевые устройства Компьютерная сеть — это кровеносная система любой компании. Сотни тысяч километров медных и оптоволоконных кабелей опоясывают стены корпоративной Америки, действуя подобно сосудам, доставляющим обогащенную кислородом кровь к мозгу. Однако во всем есть и другая сторона: типичную корпоративную локальную или глобальную сеть (LAN или WAN соответственно) трудно назвать безопасной. С учетом постоянно растущего значения компьютерных сетей сегодня нельзя пренебрежительно относится к этой проблеме, так как удачное проникновение злоумышленника в вашу сеть подчас может оказаться губительным для самого существования компании. В большинстве случаев овладение сетью означает то же самое, что и возможность перехвата почтовых сообщений, финансовых данных, перенаправление потока информации на неавторизованные системы. И все это возможно даже несмотря на применение частных виртуальных сетей (VPN — Virtual Private Network). |
Исследование Процесс обнаружения сетевого устройства не имеет принципиальных различий с описанными в данной книге методами обнаружения любых других компьютерных систем. Скорее всего взломщик начнет со сканирования портов, пытаясь найти какие-то "зацепки". Обнаружив открытые порты, он выполнит сбор маркеров и инвентаризацию сетевых ресурсов с помощью утилиты netcat. Если открыт порт UDP 161, скорее всего тут же последует попытка использования протокола SNMP (Simple Network Management Protocol), поскольку неправильно настроенные SNМР-устройства очень часто "выбалтывают" самую сокровенную информацию о своей конфигурации любому, кто ею заинтересуется. |
Обнаружение На этом этапе применяется сканирование портов с использованием разнообразных инструментов, о которых мы уже довольно подробно говорили в предыдущих главах. В большинстве случаев для выполнения всех работ будет вполне достаточно таких утилит, как traceroute, netcat и nmap. Прослеживание маршрута с помощью traceroute С помощью утилит traceroute или tracert, входящих в комплект поставки UNIX и NT, соответственно, можно определить основные маршруты, по которым проходят пакеты от вашего узла к другому узлу Internet или внутренней сети TCP/IP. Обладая этой информацией, можно обнаружить очень важный элемент сетевой инфраструктуры — маршрутизатор. Именно маршрутизатор чаше всего становится "мишенью № 1" в попытках злоумышленника обследовать структуру сети. Ниже приведен пример работы утилиты traceroute, из которого видно, как пакеты проходят от одного маршрутизатора (или брандмауэра) к другому. [sm@tsunami sm]$ traceroute www.destination.com Зная, что перед представляющим интерес узлом находится узел 192.168.0.1, можно предположить, что он представляет собой не что иное, как маршрутизатор, управляющий распределением пакетов по узлам сети. Именно поэтому на это устройство (равно как и на другие, попавшие в выявленный маршрут прохождения пакетов), злоумышленник обратит внимание в первую очередь. (Строго говоря, скорее всего, что объектом его внимания станет вся подсеть, в которую входит данное устройство.) Однако знание IP-адреса маршрутизатора не влечет за собой автоматического получения сведений об изъянах в его архитектуре и настройке. Для того чтобы получить такие сведения, необходимо прибегнуть к сканированию портов, определению операционной системы, а также сбору любой дополнительной информации, которая может дать ключ к взлому системы зашиты устройства. Контрмеры: защита от прослеживания маршрута Для того чтобы запретить маршрутизатору Cisco отвечать на запросы со значением TTL больше допустимого, воспользуйтесь следующей командой. access-list 101 permit icmp any 172.29.20.0 0.255.255.255 11 0
Сканирование портов С помощью утилиты nmар, к которой мы очень часто прибегаем в подобных ситуациях, из операционной системы Linux можно выяснить, какие порты маршрутизатора (192.168.0.1) находятся в состоянии ожидания запросов. По комбинации обнаруженных портов часто можно судить о типе маршрутизатора. В табл. 10.1 перечислены стандартные порты TCP и UDP, используемые на самых популярных сетевых устройствах. Для того чтобы идентифицировать тип устройств, можно прибегнуть к сканированию портов, а затем проанализировать полученные результаты. Не забывайте о том, что в различных реализациях комбинации портов могут отличаться от приведенных. Таблица 10.1. Стандартные TCP- и UDP-порты некоторых сетевых устройств
Так, если вас интересуют маршрутизаторы Cisco, выполните сканирование портов 1-25, 80, 512-515, 2001, 4001, 6001 и 9001. Полученные при этом результаты помогут определить изготовителя устройства и его тип. [/tmp]# nmap -pl-25,80,512-515,2001,4001,6001,9001 192.168.0.1 С помощью еще одного из наших любимых средств, утилиты SuperScan Робина Кейра (Robin Keir), сканирование можно выполнить из системы NT и найти все открытые порты маршрутизатора. Эта программа позволяет задать список портов, который впоследствии можно применять при каждой операции сканирования (рис. 10.1).
После выбора требуемого перечня портов можно приступать к сканированию сети (172 .16. 255. 0) на предмет поиска устройств Cisco. Полученная картина использования портов подталкивает к мысли о том. что в данном случае мы имеем дело с маршрутизатором Cisco. Конечно, пока этого нельзя сказать со всей определенностью, поскольку мы еще не установили тип используемой операционной системы. Для того чтобы подтвердить или опровергнуть наши предположения, необходимо провести предварительный сбор информации TCP, которую мы подробно рассматривали в главе 2. User Access Verification Идентификация операционной системы [root@source /tmp]# nmap -О -р!3 -n 192.168.0.1 Всегда, когда это возможно, для идентификации типа операционной системы сканируйте только один порт. Многие операционные системы, в том числе IOS компании Cisco и Solaris компании Sun, известны тем, что в качестве ответа возвращают отправителю пакеты, не соответствующие стандартам RFC, что может привести к зависанию отдельных систем. Для получения более подробной информации об исследовании стека читайте главу 2, "Сканирование".
Контрмеры: защита от идентификации типа ОС Методы обнаружения и предупреждения попыток сканирования с целью идентификации типа операционной системы подробно описаны в главе 2. Утечка информации в пакетах Cisco
Информация об этом изъяне системы зашиты Cisco впервые была опубликована в бюллетене Bugtraq Джоелом (JoeJ) из группы Rhino9. Он заключается в том, каким образом устройства Cisco отвечают на TCP-запросы SYN, передаваемые через порт 1999 (порт, используемый службой ident Cisco). Неофициальный ответ компании Cisco на эту проблему был опубликован в бюллетене Bugtraq Джоном Башински (John Bashinski) <jbash@cc.COM>. Контрмеры: защита маршрутизаторов Cisco от утечки информации Самый простой способ защиты от утечки информации заключается в том, чтобы использовать команду, запрещающую поступление пакетов TCP через порт 1999. Она может иметь следующую форму. access-list 101 deny tcp any any eq 1999 log!
Инвентаризация и сбор маркеров Cisco Если по всем признакам устройство ведет себя как устройство Cisco, то, скорее всего, так оно и есть. Однако в некоторых случаях данное утверждение все же оказывается ложным — лишь обнаружения ожидаемых открытых портов недостаточно, чтобы быть уверенным в том, что вы имеете дело именно с Cisco. Однако можно воспользоваться некоторыми дополнительными проверками, характерными именно для этой платформы. Служба finger и порты виртуальных терминалов 2001, 4001, 6001 На некоторые запросы служба finger компании Cisco может выдавать совершенно бесполезную (для пользователя или администратора, но не для злоумышленника) информацию. Виртуальные терминалы vty Cisco (обычно с номером 5) отвечают на простой запрос finger -1 @<узел>, но в выдаваемых результатах нет ничего информативного, за исключением лишь того, что по самому факту получения ответа можно судить о том, что мы имеем дело с маршрутизатором Cisco. User Access Verification Password: Password: Password: % Bad passwords Такое сообщение поможет злоумышленнику удостовериться в том, что он имеет дело с устройством Cisco. Служба XRemote Cisco (9001) Еще одним часто используемым портом Cisco является TCP-порт службы XRemote с номером 9001. Эта служба позволяет узлам вашей сети подключаться с помощью клиента XSession к маршрутизатору (обычно через модем). Когда злоумышленник подключается к этому порту с помощью утилиты netcat, то устройство, как правило, передает обратно идентификационный маркер, как показано в следующем примере. C:\>nc-nvv 172.29.11.254 9001
Контрмеры: защита от сбора информации об устройствах Cisco Единственный метод, позволяющий предотвратить инвентаризацию устройств Cisco. заключается в ограничении доступа с помощью списка ACL. Можно либо использовать установленное по умолчанию правило "очистки", либо в явной форме запретить подключение к соответствующим портам, чтобы все подобные попытки регистрировались в контрольном журнале. Для этого можно воспользоваться командами следующего вида. |
SNMP Протокол SNMP (Simple Network Management Protocol) предназначен для облегчения работы администратора по управлению устройствами сети. Однако огромной проблемой протокола SNMP версии 1 (SNMPvl) всегда была абсолютная незащищенность узла, на котором работали средства поддержки этого протокола. В исходной версии использовался только один механизм обеспечения безопасности, основанный на использовании специачьных паролей, называемых строками доступа (community string). В ответ на жалобы о наличии слабых мест в системе обеспечения безопасности была быстро разработана значительно улучшенная версия SNMP (SNMFV2). В этой версии для аутентификации сообщений, передаваемых между серверами и клиентами SNMP, используется алгоритм хэширования MD5. Это позволяет обеспечить как целостность пересылаемых данных, так и возможность проверки их подлинности. Кроме того, SNMPv2 допускает шифрование передаваемых данных. Это ограничивает возможности злоумышленников по прослушиванию трафика сети и получению строк доступа. Однако в то же время ничто не мешает администраторам использовать на маршрутизаторах простейшие пароли. Маршрутизаторы Ascend По умолчанию маршрутизаторы Ascend обеспечивают доступ по протоколу SNMP с помощью строк доступа public (для чтения — read) и writ: спя чтения и записи — read/write). Изъян в системе защиты, связанный с SNMP-доступом для чтения и записи, впервые был обнаружен специалистами из Network Associates. Inc. Контрмеры: защита маршрутизаторов Ascend Для того чтобы изменить установленные по умолчанию строки доступа на маршрутизаторе Ascend, просто воспользуйтесь командой меню Ethernet>ModConflg>SNMP Options. Маршрутизаторы Bay Маршрутизаторы компании Bay NT по умолчанию предоставляют доступ по протоколу SNMP, контролируемый на уровне пользователей как для чтения, так и для записи. Для того чтобы воспользоваться этой возможностью, достаточно попытаться использовать установленное по умолчанию пользовательское имя User без пароля. В командной строке маршрутизатора введите команду show snmp comm types Контрмеры: защита маршрутизаторов Bay В диспетчере Site Manager, который входит в состав программного обеспечения маршрутизаторов компании Bay Networks, выберите команду меню Protocols>IlP1* SNMPoCommunities. После этого выберите команду Community>Edit Community и измените строки доступа. Контрмеры: защита SNMP Если вы разрешаете осуществлять SNMP-доступ через пограничный брандмауэр к какому-либо одному устройству, а в использовании протокола SNMP для доступа к остальным узлам сети нет острой необходимости, то можно просто внести соответствующие ограничения в список ACL маршрутизатора. Если в строке доступа вы хотите использовать символ ?, то перед ним необходимо нажать комбинацию клавиш <Ctrl-V>. Например, для того чтобы установить строку доступа, равную secret? 2me, введите secret<Ctrl-V>?2me. В табл. 10.2 перечислены все основные разработчики сетевых устройств и строки доступа, используемые ими по умолчанию для чтения и для чтения/записи. Таблица 10.2. Используемые по умолчанию пароли сетевых устройств
Помимо перечисленных строк доступа, используемых по умолчанию, многие компании в качестве таковых используют собственное название. Например, руководствуясь этим принципом, издательство Osborne может использовать в качестве строки доступа слово osborne (но это только по секрету). |
"Потайные" ходы "Тайная" учетная запись (backdoor account) — это одна из наиболее сложных проблем. Такие учетные записи создаются разработчиками для того, чтобы при отладке обходить случайно заблокированные учетные записи администраторов, однако гораздо чаще они предоставляют злоумышленникам возможность проникновения в вашу систему. В последние годы было выявлено немало таких встроенных пользовательских имен и паролей, позволяющих получить доступ ко многим популярным сетевым устройствам, включая 3Com, Bay, Cisco и Shiva. Суть проблемы заключается в том, чтобы найти все подобные устройства и запретить или ограничить к ним доступ. |
Установленные по умолчанию учетные записи Одним из чаще всего обнаруживаемых изъянов является установленные по умолчанию имя пользователя и пароль. Практически все разработчики поставляют на рынок сетевые устройства, позволяющие получить с помощью подобной учетной записи доступ на уровне пользователя, а иногда — и администратора (подробнее см. табл. 10.3). Поэтому вашим первым шагом при настройке таких устройств должно быть немедленное удаление таких учетных записей. Таблица 10.3. Стандартные пользовательские имена и пароли, которые необходимо изменить
Коммутаторы 3Com Коммутаторы 3Com очень часто имеют несколько встроенных по умолчанию учетных записей с разным уровнем привилегий — admin, read, write, debug, test и monitor. Если эти встроенные учетные записи окажутся незащищенными, то с их помощью злоумышленник сможет получить пользовательские или даже административные привилегии. Контрмеры: защита встроенных учетных записей коммутаторов 3Com Для того чтобы изменить пароль, введите с консоли устройства команду system password. Маршрутизаторы Bay Маршрутизаторы Bay имеют пару установленных по умолчанию учетных записей, некоторые из которых к тому же по умолчанию не защищены паролем. Поскольку при настройке операционной системы удобно пользоваться учетными записями User и Manager, в которых пароль отсутствует, то довольно часто администраторы оставляют эти учетные записи незащищенными. Это позволяет злоумышленнику с помощью утилиты telnet получить прямой доступ к устройству и через FTP переписать на свой компьютер конфигурационные файлы. Например, на многих коммутаторах Bay 350T имеется учетная запись NetiCs без пароля, которая представляет собой прекрасный "потайной ход" в систему. Контрмеры: защита встроенных учетных записей маршрутизаторов Bay
Пароли маршрутизаторов Cisco На разных моделях Cisco неоднократно обнаруживали различные пароли, используемые по умолчанию для доступа с виртуального терминала vty, включая такие легко угадываемые, как cisco и cisco routers. Кроме того, на некоторых моделях были обнаружены установленные по умолчанию пароли cisco, позволяющие получить удаленный доступ к устройству. Как вы понимаете, такие пароли нужно как можно быстрее заменить на более сложные. Наконец, на некоторых моделях Cisco 2600, произведенных до 24 апреля 1998 года, по умолчанию использовался пароль, состоящий из одной-единственной буквы с. Контрмеры: защита маршрутизаторов Cisco Даже если вы измените все обнаруженные легко угадываемые пароли, установленные производителем по умолчанию, это вовсе не означает, что ваше устройство Cisco надежно защищено. Поскольку компания Cisco не применяет мощных алгоритмов шифрования паролей, используемых для доступа с терминалов vty, то, обнаружив их тем или иным способом, злоумышленник сможет без труда взломать эти пароли. Несмотря на это, каждый владелец маршрутизатора Cisco должен как можно скорее выполнить следующие операции.
Устройства Webramp Джеймс Игелхоф (James Egelhof) и Джон Стенли (John Stanley) установили, что устройства Webramp Entre (в версии ISDN) имеют установленные по умолчанию пользовательское имя wradmin и пароль trancell. Эта учетная запись предоставляет злоумышленнику доступ к устройству на уровне администратора, позволяя вносить изменения в конфигурацию, изменять пароль и т.д. Вполне вероятно, что подобные недостатки имеются и в других продуктах Webramp. Контрмеры: защита устройств Webramp В данном случае самый простой метод защиты заключается в изменении административного пароля. Более сложное решение, предложенное Игелхофом и Стенли, заключается в ограничении доступа с использованием службы telnet через порт WAN. Это можно осуществить несколькими способами, однако мы можем порекомендовать следующий. Находясь в среде программного обеспечения устройства Webramp включите режим Visible Computer для каждого активного модемного порта и направьте его на ложный IP-адрес, например, на немаршрутизируемый адрес, такой как 192.168.100.100. После этого отключите оба режима Divert Incoming. Подключение к кабельному модему Motorola через порт 1024 с помощью telnet Как сообщалось в майском выпуске (1998 г.) бюллетеня Bugtraq, программное обеспечение Cable Router компании Motorola позволяет кому угодно подключиться к скрытому порту telnet. Как выяснилось, с портом TCP 1024 связан ожидающий поступления запросов демон telnet, и, используя установленные по умолчанию пользовательское имя cablecom и пароль router, через эту службу можно получить административный доступ к этому устройству. Хотя на практике кабельные модемы от компании Motorola встречаются нечасто, авторы оставили описание этого изъяна, поскольку он наглядно демонстрирует возможность проникновения в систему через такие "неожиданные" порты, как TCP 1024. Не допускает ли ваш модем скрытый доступ через службу telnet к какому-либо другому порту? |
Устранение изъянов Возможность хакинга сетевых устройств в значительной степени зависит от объема и качества проведенных в сети защитных мероприятий. Если вы выбрали пароли для подключений telnet и строки доступа SNMP, которые трудно подобрать, ограничили использование служб FTP и TFTP, а также активизировали режим регистрации всех событий, имеющих отношение к безопасности (при условии, конечно, что кто-то регулярно просматривает эти журналы), то описанные ниже изъяны вряд ли окажутся опасными для вашей сети. С другой стороны, если ваша сеть достаточно обширна и имеет сложную для управления структуру, в ней могут оказаться узлы, безопасность которых, мягко говоря, далека от идеальной. В связи с этим нелишним будет выполнить дополнительную проверку и лишний раз застраховаться от неожиданностей. Устаревшая база данных MIB Cisco и Ascend Устройства компаний Cisco и Ascend поддерживают базу данных MIB устаревшего формата, которая через открытые строки доступа, обеспечивающие чтение и запись, позволяет любому пользователю получить конфигурационный файл с использованием TFTP. Если речь идет об устройствах Cisco, то эта база данных называется OLD-CISCO-SYS-MIB. Ввиду того что в этом файле содержится пароль для доступа к устройству Cisco (он зашифрован весьма примитивным способом — с помощью операции XOR), взломщик может легко расшифровать его и использовать для реконфигурации вашего маршрутизатора или коммутатора.
Получив конфигурационный файл, остается лишь расшифровать пароль. Для этого достаточно щелкнуть на кнопке Decrypt Password панели инструментов, как показано на рис. 10.5.
Если же вы хотите проверить, является ли ваше устройство уязвимым, не прибегая к "хакерским методам", то можно воспользоваться базой данных Cisco, находящейся по адресу ftp://ftp.cisco.com/pub/mibs/supportlists/. Найдите свое устройство и перепишите на свой компьютер файл supportlist.txt. Затем вам остается проверить, поддерживается ли этим устройством база данных MIB старого формата, т.е. OLD-CISCO-SYS-MIB. Если это так, то вам придется принимать дополнительные меры по защите маршрутизатора. line vty 0 4 Для того чтобы загрузить конфигурационный файл устройств Ascend, также можно воспользоваться командой snmpset следующего вида. snmpset 10.11.12.13 private
Контрмеры: защита базы данных MIB Обнаружение Самый простой способ обнаружения SNMP-запросов на запись в базу данных MIB заключается в использовании утилиты syslog, настроенной на регистрацию каждого запроса. Для этого сначала на компьютере с системой UNIX или NT нужно запустить демон syslog, а затем настроить его таким образом, чтобы он регистрировал соответствующие события. На устройстве Cisco это можно сделать с помощью следующей команды. logging 196.254.92.83 Защита Для того чтобы воспрепятствовать злоумышленнику получить старую базу MIB, можно предпринять следующие меры.
Слабость алгоритмов шифрования паролей Cisco Устройства Cisco, по крайней мере на момент написания данной книги, имели слабый алгоритм шифрования, используемый как при хранении пароля vty, так и пароля доступа. Оба пароля хранятся в конфигурационном файле устройств, а их взлом не представляет особого труда. Для того чтобы узнать, является ли ваш маршрутизатор уязвимым, просмотрите конфигурационный файл с помощью следующей команды. line vty 0 4 Слабость встроенного алгоритма шифрования Cisco объясняется тем, что он основан на использовании операции XOR и постоянного инициализирующего значения (seed value). Шифруемые пароли Cisco могут иметь до 11 алфавитно-цифровых символов разного регистра. Первые два байта пароля выбираются случайным образом из диапазона от 0x0 до 0xF, а оставшиеся представляют собой строку, полученную путем объединения с помощью операции XOR пароля и заданного блока символов dsfd;kfoA,.iyewrkldJKDHSUB. Модуль расшифровки паролей Cisco компании SolarWinds Для тех, кто лучше знаком с системой Windows, существует соответствующая версия модуля расшифровки паролей Cisco, подготовленная компанией SolarWinds из города Тулса штата Оклахома (Tulsa, Oklahoma). Компания SolarWinds разрабатывает сетевое программное обеспечение для больших телекоммуникационных компаний и включает модуль расшифровки в состав приложения просмотра параметров настройки устройств Cisco (Cisco Config Viewer). Кроме того, этот модуль распространяется и как самостоятельное приложение (рис. 10.6).
Контрмеры: защита паролей Cisco Единственным решением проблемы защиты пароля доступа (enable password) является использование для изменения пароля команды enable secret. Эта команда защищает пароль доступа с помощью алгоритма шифрования MD5, для которого пока что нет известных методов быстрого взлома. К сожалению, остальные пароли Cisco, такие как пароли доступа vty, защитить ни этим, ни каким-либо другим методом нельзя. Получение файлов с помощью TRP Практически все маршрутизаторы поддерживают использование протокола TFTP (Trivial File Transfer Protocol). Этот протокол представляет собой основанный на протоколе UDP механизм передачи файлов, применяемый для резервного копирования и восстановления конфигурационных файлов, который связан с портом UDP 69. Как вы понимаете, обнаружить эту службу, запущенную на вашем устройстве, достаточно просто с помощью утилиты nmap. [root@happy] tftp Если ваш маршрутизатор уязвим, то в текущем каталоге вашего компьютера вы наверняка найдете конфигурационный файл (lax-serial-rtr.cfg) маршрутизатора. В нем, скорее всего, будут содержаться все строки доступа SNMP, а также списки управления доступом. Более подробная информация о том, как использовать TFTP для получения информации об устройствах Cisco, находится в архиве группы Packet Storm. Контрмеры: защита от применения ТFTР Для того чтобы устранить угрозу, таящуюся в использовании протокола TFTP, можно предпринять следующие меры.
Конфигурационные файлы устройств компании Bay Программное обеспечение управления сетью компании Bay Networks, диспетчер Site Manager, позволяет администраторам выполнять тестирование состояния сети, включая проверку SNMP-статуса устройства и установление факта его работоспособности с помощью пакетов IСМР. К сожалению, конфигурационные файлы .cfg, предназначенные для хранения параметров Site Manager, хранятся в незашифрованном виде. Помимо прочего, в этом файле хранятся также строки доступа SNMP. Если злоумышленнику удастся проникнуть на компьютер, работающий под управлением Site Manager, все, что ему нужно сделать, — это скопировать конфигурационные файлы в свою версию Site Manager и найти в них информацию о строках доступа SNMP. Контрмеры: защита конфигурационных файлов Вау Самая простая защитная мера заключается в ограничении списка пользователей. которым разрешено копировать конфигурационные файлы. Для этого достаточно разрешить чтение этих файлов только суперпользователю root (или только администратору, отвечающему за настройку маршрутизатора). |
Множественный доступ и коммутация пакетов Общая передающая среда (как Ethernet, так и Token Ring) применяется для обмена данными в сетях на протяжении более двух десятков лет. Этот подход был разработан Бобом Меткафом (Bob Metcalfe) для стандарта Ethernet в исследовательском центре компании Xerox, расположенном в г. Пало Альто (PARC — Palo Alto Research Center), и получил название CSMA/CD (выявление множественного доступа к линии/распознавание конфликтов — Carrier Sense Multiple Access/Collision Detection). При такой традиционной топологии сетевой адаптер Ethernet отправляет исходящий поток данных каждому узлу сегмента. С одной стороны, это гарантирует, что принимающий адаптер, где бы он ни находился, получит, как и все остальные адаптеры сети, предназначавшиеся ему данные (хотя остальным сетевым адаптерам они вовсе не нужны). С другой стороны, постоянно рассылаемые по всей сети пакеты мешают друг другу и при повышении интенсивности работы могут возникать ситуации, когда пропускная способность канала не соответствует интенсивности передаваемых по нему данных. Кроме того, с точки зрения безопасности, множественный доступ к передающей среде — это "бомба замедленного действия", которая рано или поздно может привести к нарушениям безопасности. Однако, к сожалению, сети Ethernet с множественным доступом весьма распространены в настоящее время и. похоже, вряд ли исчезнут в обозримом будущем. |
Определение типа сети Определить, к какому типу относится используемая вами сеть (т.е. к сетям с множественным доступом или же к сетям с коммутацией пакетов), очень просто. Используя простейшую программу перехвата пакетов, например tcpdump (для NT или UNIX), вы получите все данные, необходимые для того, чтобы сделать однозначное заключение. 20:20:22.530205 0:80:24:53:ae:bd > В то же время в сетях с множественным доступом к передающей среде вы увидите все типы данных, пересылаемых по сети разными узлами. Например, в показанном ниже фрагменте сеанса работы утилиты tcpdump, легко обнаружить потоки данных, предназначенные другим компьютерам (естественно, такого рода информация гораздо интереснее для злоумышленников, чем приведенная выше). 20:25:37.640205 192.168.40.66.23 > |
Пароли на блюдечке: dsniff Конечно, с помощью утилиты tcpdump можно без проблем определить тип используемой сети, однако что вы скажете о получении главных жемчужин компьютерного мира — паролей? Для этих целей можно приобрести чудовищный по предоставляемым возможностям программный пакет SnifferPro или воспользоваться более дешевыми средствами, например, CaptureNet, разработанным Лаврентием Никулой (Laurentiu Nicula). Однако лучше всего прибегнуть к программе Дага Сонга (Dug Song). Он разработал одно из наиболее сложных средств перехвата паролей — программу dsniff. [root@mybox dsniff-1.8] dsniff Кроме средства перехвата паролей dsnif f, в состав пакета входят разнообразные средства поиска других слабых мест, такие как mailsnarf и webspy. mailsnarf представляет собой небольшое приложение, позволяющее собирать все почтовые сообщения и отображать их содержимое на экране, как если они были написаны вами лично, webspy — это мощная утилита, которая окажется полезной, если требуется определить, какие страницы в Web посетили пользователи. При этом в Web-броузере автоматически будут отображаться Web-страницы, которые были просмотрены определенным пользователем. [root]# mailsnarf Чтение почтовых сообщений ваших соседей может показаться забавным занятием, однако не забывайте о том, что подобные действия вряд ли можно назвать законными.
Контрмеры: защита от dsniff Традиционным способом защиты от перехвата незашифрованных паролей является переход от сетевой топологии Ethernet с множественным доступом к сети с коммутацией пакетов. Однако как вы узнали из предыдущих разделов, такая мера практически не способна предотвратить атаки с применением программы dsniff. |
Анализ пакетов на коммутаторе сети На первый взгляд кажется, что для повышения скорости и уровня безопасности можно просто добавить в сеть новый коммутатор. Если вы считаете, что это позволит удержать любознательных пользователей от прослушивания интенсивного сетевого трафика, то такая позиция может вызвать лишь улыбку. Неужели вы думаете, что новый коммутатор способен разрешить все существующие проблемы? Подумайте хорошенько еще раз. Перенаправление ARP В рассматриваемом примере три компьютера соединены с сетевым коммутатором. Система crush является шлюзом, заданным по умолчанию, с IP-адресом 10.1.1.1. Компьютер shadow— это исходный узел с IP-адресом 10.1.1.18. Система twister представляет собой компьютер взломщика, который будет выполнять роль "третьего-среднего". Его IP-адрес 10.1.1.19. Для подготовки нападения на узле twister запустим утилиту arpredirect, входящую в состав пакета dsniff Дага Сонга. Эта утилита позволит нам перехватывать пакеты, передаваемые исходным узлом по сети другому узлу, который обычно представляет собой шлюз, используемый по умолчанию. Перед тем как приступить к изучению этого подхода в собственной сети, обсудите этот вопрос с сетевым администратором. Если на вашем коммутаторе включен режим защиты портов, то это может привести к блокированию всех пользователей, обратившихся к нему. Не забывайте о том, что все компьютеры соединены с коммутатором и у нас имеется возможность просматривать лишь широковещательный сетевой трафик. Однако как показано ниже, с помощью утилиты arpredirect мы сможем просмотреть весь поток сообщений, передаваемый между узлами shadow и crush. [twister] ping crush
[twister] arpredirect -t 10.1.1.18 10.1.1.1 После выполнения этой команды весь поток сообщений, передаваемый с узла shadow на используемый по умолчанию шлюз crush, будет перенаправляться на компьютер взломщика, twister. На этом узле необходимо также включить режим последующей передачи IP-пакетов (forwarding IP traffic), чтобы он функционировал в качестве маршрутизатора и после перехвата сообщений с узла shadow перенаправлял их на узел crush. На компьютере twister режим передачи пакетов можно активизировать на уровне ядра, однако делать этого не рекомендуется, поскольку в этом случае могут передаваться также пакеты ICMP, что может привести к нарушению всего процесса. Вместо этого воспользуемся утилитой fragrouter (http://www.anzen.com/ research/nidsbench/fragrouter.html) и активизируем обычный режим передачи IP-пакетов с помощью следующей команды. [twister] fragrouter -Bl И наконец, на узле twister нужно активизировать простую программу анализа пакетов, чтобы иметь возможность перехватывать все ценные данные. Для получения более подробной информации об анализаторах сетевых пакетов читайте главы 6 и 8. [twister] linsniff Теперь посмотрим, что же произойдет. После запуска утилиты arpredirect узел twister будет передавать фальшивые ARP-ответы узлу shadow и выдавать себя за узел crush. Узел shadow успешно обновит свою таблицу ARP и поместит в нее "новый" физический адрес узла crush. После этого пользователь компьютера shadow начнет сеанс FTP и POP с узлом 192.168.20.20. Однако вместо передачи пакетов на компьютер crush, реальный используемый по умолчанию шлюз, узел shadow будет введен в заблуждение, поскольку в его таблицу ARP были внесены соответствующие изменения. Через узел twister весь трафик будет перенаправляться на узел 192.168.20. 20, поскольку с помощью утилиты fragrouter мы активизировали режим перенаправления IP-пакетов. Другими словами, узел twister будет играть роль маршрутизатора. [twister] arpredirect 10.1.1.1 Нетрудно догадаться, что в сети с интенсивным трафиком это приведет к настоящему хаосу. Контрмеры: предотвращение перенаправленияАВР Как вы увидели в предыдущем разделе, не составляет никаких проблем генерировать ложные ответы ARP и модифицировать таблицу ARP на большинстве узлов локальной сети. Где это только возможно, задавайте статические записи таблицы ARP, особенно на важных системах. Стандартный прием заключается в задании статических записей АКР, определяющих взаимодействие брандмауэра и пограничных маршрутизаторов. Это можно реализовать следующим образом. [shadow] arp -s crush 00:00:С5:74:ЕА:ВО Обратите внимание на флаг PERM, который является признаком статической записи ARP. May 21 12:28:49 crush: flip Поскольку подобную деятельность выявить не очень легко, то такой мониторинг будет полезен при ее идентификации. snmpsniff Если ваш компьютер находится в сегменте сети с множественным доступом, то совсем неплохо ее "прослушать" и узнать, что же в ней происходит. Воспользуйтесь мощным анализатором пакетов SnifferPro компании Network Associates или запустите утилиту snmpsnif f, разработанную Нуно Леитао (Nuno Leitao, nuno.leitao@convex.pt). а затем посмотрите, какую информацию вы получили. [root@kramer snmpsniff-0.9b]# ./snmpsniff.sh Как видно из приведенного выше фрагмента, злоумышленнику удалось узнать одну из строк доступа (secret), которая может оказаться строкой доступа, позволяющей не только получать, но и записывать данные на маршрутизатор 172.31.50.2 с помощью SNMP. Теперь злоумышленник сможет получить доступ не только к устройствам вашей сети, но и попробовать взломать еще одну "жертву" — компьютер с IP-адресом 172.31.50.100. Контрмеры: защита трафика ЗММР Одна из защитных мер, позволяющих предотвратить перехват трафика SNMP, заключается в его шифровании. В обоих версиях этого протокола, SNMP\2 и SNMPvS, имеется возможность применения алгоритмов шифрования и стандарта DES для шифрования конфиденциальной информации. Альтернативный подход заключается в реализации защищенного канала на базе частной виртуальной сети (VPN — Virtual Private Network). При использовании клиентского программного обеспечения VPN, разработанного компанией Entrust (http://www.entrust.com) или компанией NortelNetworks (http://www.nortelnetworks.com), гарантируется шифрование трафика между клиентским узлом и концом канала VPN. Ложные пакеты RIP После успешной идентификации маршрутизаторов вашей сети, опытный взломщик наверняка предпримет попытку найти те из них, которые поддерживают протокол маршрутизации RIP (Routing Information Protocol) версии 1 (RFC 1058) или 2 (RFC 1723). Почему? Дело в том, что с его помощью легко сгенерировать ложные пакеты. Объясняется это следующими причинами.
В результате взломщик может просто отправить маршрутизатору RIP ложные пакеты и указать, чтобы пакеты передавались в другую сеть или узел, а не на требуемый узел. Вот как можно осуществить атаку с помощью ложных пакетов RIP.
3. Определите наилучшее направление атаки. Тип атаки ограничивается лишь фантазией взломщика, однако в данном примере мы перенаправим весь трафик на определенный узел через наш собственный компьютер, чтобы можно было проанализировать все пакеты и, не исключено, извлечь из них информацию о паролях. Для этого на маршрутизатор RIP (192.168.51.102) необходимо добавить следующий маршрут. Утилита fragrouter 6. Установите свой любимый анализатор пакетов для системы Linux (например, программу dsnif f), а затем приступите к просмотру "на лету" имен пользователей и паролей. Контрмеры: защита от ложных пакетов RIP
|
Резюме В этой главе вы узнали, как много сетевых устройств можно выявить с помощью методов сканирования и прослеживания маршрутов. Идентифицировать эти устройства достаточно легко. Обычно этот процесс сопровождается сбором идентификационных маркеров, идентификацией операционной системы и идентификацией по характерным признакам, например по открытому порту 1999 устройств Cisco. |