Электронная библиотека » Коллектив Авторов » » онлайн чтение - страница 9


  • Текст добавлен: 9 ноября 2013, 23:45


Автор книги: Коллектив Авторов


Жанр: Зарубежная компьютерная литература, Зарубежная литература


сообщить о неприемлемом содержимом

Текущая страница: 9 (всего у книги 69 страниц) [доступный отрывок для чтения: 18 страниц]

Шрифт:
- 100% +

nslookup

nslookup (Name Service Lookup – служба поиска имен) – полезная утилита, которая свободно распространяется консорциумом программного обеспечения Интернет.

Принцип работы nslookup почти такой же, как и dig. Пользователю точно так же предоставляется как диалоговый интерфейс, так и интерфейс командной строки. После запуска утилита собирает информацию о хостах с помощью DNS. О доменах nslookup выдает хотя и общедоступную, но очень важную информацию.

Например, nslookup может использоваться для поиска почтовых доменов или записей типа MX (Mail Exchanger). В результате станут возможными различные атаки на почтовый сервер: посылка спама для достижения отказа в обслуживании, атаки на программное обеспечение с целью получения доступа к серверу или использование почтового сервера для рассылки спама другим хостам, если это разрешено. Посмотрите на следующий пример:


elliptic@ellipse:~$ nslookup

Default Server: cobalt.speakeasy.org

Address: 216.231.41.22

> set type=MX

> cipherpunks.com.

Server: cobalt.speakeasy.org

Address: 216.231.41.22

cipherpunks.com preference = 10, mail exchanger = parabola.

cipherpunks.com

cipherpunks.com nameserver = DNS1.ENOM.COM

cipherpunks.com nameserver = DNS2.ENOM.COM

cipherpunks.com nameserver = DNS3.ENOM.COM

cipherpunks.com nameserver = DNS4.ENOM.COM

cipherpunks.com nameserver = DNS5.ENOM.COM

DNS1.ENOM.COM internet address = 66.150.5.62

DNS2.ENOM.COM internet address = 63.251.83.36

DNS3.ENOM.COM internet address = 66.150.5.63

DNS4.ENOM.COM internet address = 208.254.129.2

DNS5.ENOM.COM internet address = 210.146.53.77


Анализируя приведенный пример, можно найти обработчик почты для домена cipherpunks.com. Хост parabola.cipherpunks.com может быть использован для сбора информации. Например, если в системе используется версия программы sendmail, которая позволит злоумышленнику расширить учетные записи пользователя, то он сможет найти адреса электронной почты системного администратора. Из этого можно будет узнать тип транспортного агента, установленного в системе, как это показано в следующем примере:


elliptic@ellipse:~$ telnet modulus.cipherpunks.com 25

Trying 192.168.1.253...

Connected to 192.168.1.253.

Escape character is “^]”.

220 modulus.cipherpunks.com ESMTP Server (Microsoft Exchange

Internet

Mail Service 5.5.2448.0) ready


Из примера видно, как почтовый север с радостью выбалтывает сведения об установленных программах (Microsoft Exchange), а из этого можно сделать вывод о типе операционной системы хоста.


Nmap

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

Сбор сведений о доступных сервисах системы сильно упрощается при использовании такого инструментария, как Network Mapper или Nmap. Как ранее уже упоминалось, Nmap в случае его применения для достижения злонамеренных целей использует многочисленные изощренные методы определения характеристик хоста. К этим возможностям относится переменный режим сканирования TCP-трафика и анализ IP-ответов для определения операционных систем и идентификации прослушиваемых сервисов на хосте.

Nmap может использоваться для определения общедоступных сервисов сети, а также прослушиваемых сервисов, подвергнувшихся фильтрации такими средствами, как оболочки TCP-трафика, или межсетевыми экранами. Посмотрите на следующий отчет:


elliptic@ellipse:~$ nmap -sS -O derivative.cipherpunks.com

Starting nmap V. 2.54BETA22 (www.insecure.org/nmap/)

Interesting ports on derivative.cipherpunks.com

(192.168.1.237):

(The 1533 ports scanned but not shown below are in state: closed)

Port State Service

21/tcp open ftp

22/tcp open ssh

23/tcp filtered telnet

25/tcp open smtp

37/tcp open time

53/tcp open domain

80/tcp open http

110/tcp open pop-3

143/tcp open imap2

Remote operating system guess: Solaris 2.6 – 2.7

Uptime 11.096 days (since Thu Nov 29 08:03:12 2001)

Nmap run completed – 1 IP address (1 host up) scanned in 60

seconds


Давайте одновременно проанализируем эту небольшую часть отчета о сканировании. Во-первых, Nmap был запущен с флагами sS и O. Эти флаги указывают Nmap на необходимость сканирования символов синхронизации SYN на хосте и идентификации операционной системы на основе полученных IP-ответов. Во-вторых, в отчете видны три колонки данных. В крайней слева колонке расположен номер порта и протокол, используемый прослушиваемым сервисом. В средней – состояние порта: подвергнулся ли порт фильтрации, как у порта службы telnet, являющейся оболочкой TCP-трафика, или открыт для общедоступного использования, как остальные.

Индексация Web

Индексация Web (или, как ее еще обычно называют, спайдеринг (spidering) – движение паука по паутине) – следующий тип сбора информации. С начала 90-х годов компании типа Yahoo! WebCrawler и другие начали использовать автоматизированные программы для посещения Web-сайтов и индексации размещенных на них данных, чтобы впоследствии проиндексированные данные можно было найти с помощью поискового запроса. Это было началом бизнеса Web-порталов.

Индексация сайтов обычно выполняется различными по форме и названию программами. Их называют роботами, пауками или червяками. Хотя все они выполняют одну и ту же функцию, их безо всякой видимой причины называют по-разному. Эти программы просматривают все связи анализируемого Web-сайта и индексируют находящиеся на них данные. Индексы просмотренных данных помещаются в реляционную базу данных и связываются с поисковой машиной (машина поиска – в сети Internet инструментальные средства, предназначенные для отсеивания информации, не относящейся к теме запроса). Если пользователь во время посещения портала сформулирует поисковый запрос по ключевым словам, то ему будут предъявлены ссылки на проиндексированные Web-страницы, соответствующие его запросу.

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

Эта проблема не ограничена порталами. Инструментарий типа wget может быть использован для рекурсивного извлечения всех страниц сайта. Для этого достаточно запустить программу с нужными параметрами. Посмотрите на следующий пример:


elliptic@ellipse:~$ wget -m -x http://www.mrhal.com

–11:27:35– http://www.mrhal.com:80/

=> “www.mrhal.com/index.html”

Connecting to www.mrhal.com:80... connected!

HTTP request sent, awaiting response... 200 OK

Length: 1,246 [text/html]

0K -> . [100%]

11:27:35 (243.36 KB/s) – “www.mrhal.com/index.html” saved

[1246/1246]

Loading robots.txt; please ignore errors.

–11:27:35– http://www.mrhal.com:80/robots.txt

=> “www.mrhal.com/robots.txt”

Connecting to www.mrhal.com:80... connected!

HTTP request sent, awaiting response... 404 Not Found

11:27:35 ERROR 404: Not Found.

–11:27:35– http://www.mrhal.com:80/pics/hal.jpg

=> “www.mrhal.com/pics/hal.jpg”

Connecting to www.mrhal.com:80... connected!

HTTP request sent, awaiting response... 200 OK

Length: 16,014 [image/jpeg]

0K -> .......... ..... [100%]

11:27:35 (1.91 MB/s) – “www.mrhal.com/pics/hal.jpg” saved

[16014/16014]

[…]

FINISHED –11:27:42–

Downloaded: 1,025,502 bytes in 44 files


В примере вывод команды wget завершен символами […] из-за большого количества файлов (44 файла), загружаемых с Web-сайта www.mrhal.com, которые были бы напечатаны в конце отчета. Команда wget была запущена с переключателями m и x. Переключатель m (переключатель зеркального сохранения информации) включает режим загрузки копии всех файлов сайта www.mrhal.com в соответствии с их ссылками. Переключатель x используется для сохранения структуры директорий сайта при его загрузке на компьютер пользователя.

Подобный инструментарий позволяет злоумышленнику проиндексировать сайт и создать его зеркальную копию. Впоследствии злоумышленник может воспользоваться стандартными системными утилитами для быстрого анализа скопированных данных. Например, программа grep позволяет быстро найти представляющие для него интерес строки. В первую очередь это относится к строкам «password», «root» и «passwd».

Резюме

В главе рассмотрено семь классов атак, приводящих к отказу в обслуживании, утечке информации, нарушению прав доступа к файлу, дезинформации, доступу к специальным файлам или базам данных, удаленному вызову программ и расширению прав.

Об атаках, приводящих к отказу в обслуживании (DOS-атаках), говорят в том случае, когда в результате действий злоумышленника ресурс преднамеренно заблокирован или деградирован. Локальные DOS-атаки нацелены на достижение локального отказа в обслуживании и приводят к деградации процесса, исчерпанию дисковой памяти или истощению индексных узлов. DOS-атаки из сети могут начинаться как с сервера, так и с клиентской части (как в одном из вариантов DOS-атаки из сети на Web-браузеры – бомбы JavaScript). DOS-атаки из сети на сервисы используют многочисленные подключения для предотвращения использования сервисов. DOS-атаки на систему похожи на локальные DOS-атаки и основаны на создании потока символов синхронизации SYN для переполнения очереди или использовании атак типа smurf для достижения отказа в обслуживании в результате перенасыщения сетевого трафика. Распределенные DOS-атаки (DDoS-атаки) относятся к классу сетевых атак, нацеленных на систему в целом. Распределенные программы перенасыщения трафика, как, например, tfn и shaft, могут быть использованы для достижения отказа в обслуживании.

Утечка информации – результат злоупотребления ресурсами. Обычно нападению на систему предшествует утечка информации. В главе рассмотрены пути утечки информации через баннеры оболочки безопасности SSH. Была показана принципиальная возможность «снятия отпечатков пальцев» у ряда служб, например у служб, обеспечивающих работу по протоколам HTTP или FTP. Протокол SNMP – пример протокола, в котором недопустимо мало внимания уделено вопросам безопасности, и поэтому сравнительно легко получить доступ к важной информации в системах, построенных на его основе. Web-сервер легко предоставляет сведения, интересующие злоумышленников, если на него совершено нападение атакой типа точка-точка – слэш (../). Уже упоминалось об инциденте, когда один Интернет-провайдер воспользовался файлами паролей другого провайдера, для того чтобы переманить к себе его клиентов. Тем самым были рассеяны любые мифы о допустимости утечки информации в хорошо сделанной системе, даже если она может маскировать или скрывать свои «отпечатки пальцев».

При помощи изменения прав доступа к файлу злоумышленник может получить доступ к важной информации, например к именам пользователей и их паролям. Поэтому непонятно, почему зачастую специалисты в области безопасности пренебрегают такой мерой предосторожности, как изменение разрешений доступа к файлу или владельцев файлов, в которых записаны эти разрешения. При рассмотрении подобных вопросов важно различать однопользовательские системы, в которых не предусмотрено управление доступом к файлу, и многопользовательские системы с одним или несколькими уровнями доступа, примерами которых служат списки контроля ACL системы Solaris и ролевой механизм управления доступом (Role-Based Access Control-RBAC). В главе также обсуждались атаки символических связей для перезаписи файлов других пользователей.

Дезинформация определяется как предоставление противоположной стороне фальшивых данных, провоцирующих противоположную сторону на неадекватное поведение. Стандартные методы дезинформации предусматривают редактирование журналов, использование программных инструментальных средств с правами привилегированного пользователя (rootkits) и модулей ядра. Редактирование журналов – элементарное средство скрытия вторжения. Инструментальные средства типа rootkits позволяют подменять системные программы. Наиболее изощренные методы дезинформации заключаются в подмене модулей ядра, осуществляющих компрометацию системы на нижнем уровне операционной системы: на уровне ее ядра.

Доступ к специальным файлам / базам данных – еще одно средство получения доступа к системным ресурсам. Ранее обсуждалась возможность использования специальных файлов для получения важной информации, например паролей. База данных – хранилище важной информации о ресурсах системы. Доступ к базе данных может быть получен в результате использования ошибок в обслуживающем их программном обеспечении, например ошибок в Web-интерфейсе или программных ошибок типа переполнения буфера. Ну и конечно, от злоумышленника потребуются определенные усилия, чтобы разобраться с разграничением доступа в базах данных.

Удаленное выполнение программ – серьезная проблема, позволяющая злоумышленнику взять под свой контроль атакованную систему. Эта угроза легко реализуется в тех случаях, когда в системе не предусмотрена аутентификация. Удаленное выполнение программ осуществляется при помощи автоматизированного инструментария, накладывающего те или иные ограничения на используемые программы.

О расширении прав говорят в случае, когда неавторизованный пользователь получил доступ к ресурсу, хотя ранее он им не обладал. Были рассмотрены варианты удаленного получения доступа на правах как привилегированного, так и непривилегированного пользователя. В первом случае при помощи демонов HTTP на UNIX-системах, во втором – при помощи таких служб, как демоны SSH. В главе также обсуждались вопросы применения Троянских коней и методов социотехники для получения привилегированного пользовательского доступа к хосту. Отмечалось сходство методов удаленного и локального расширения прав.

Тестирование уязвимостей – необходимая и обязательная обязанность всякого, кто занимается администрированием систем или обеспечением их безопасности. Доказательство возможности нападения (proof of concept) – один из методов тестирования, который используется для доказательства существования уязвимостей. Другие методы заключаются в применении демонстрирующих проблему программ, автоматизированного инструментария безопасности и контроля версий (versioning) для обнаружения уязвимых версий программного обеспечения.

Опытный злоумышленник применяет различные методы подготовки атак. Базы данных Whois могут использоваться для сбора разносторонней информации о системе, доменах и сетях. Такие средства DNS, как утилита dig, могут использоваться для сбора информации о хостах и используемом ими программном обеспечении, а nslookup – для идентификации почтовых серверов доменов. В главе кратко освещены вопросы сканирования сети при помощи Nmap. Сканирование сети позволяет выудить сведения о сервисах операционных систем хостов. Наконец, обсуждался спайдеринг для сбора сведений о сайте: его расположении и наличии на нем потенциально важной информации.

Конспект
Обзор классов атак

· По своему результату атаки разбиты на семь классов: отказ в обслуживании, утечка информации, нарушение прав доступа к файлу, дезинформация, получение доступа к специальным файлам / базам данных, удаленное выполнение программ и расширение прав.

· Отказ в обслуживании хоста может быть достигнут в результате локальной или DOS-атаки из сети.

· Атаке почти всегда предшествует анализ сведений, полученных в результате утечки информации.

· Незащищенная директория и неверные права доступа к файлу могут позволить локальному злоумышленнику получить доступ к информации, важной для других пользователей.

· Скомпрометированной системе нельзя доверять ни при каких обстоятельствах до тех пор, пока она не будет восстановлена с безопасного носителя (например, дистрибутива производителя).

· Атаки на базы данных могут использовать либо бреши программного интерфейса, например Web-интерфейса, либо ошибки программного обеспечения баз данных, например переполнение буфера.

· Большинство уязвимостей, используемых для удаленного выполнения программ, могут быть в значительной мере обезврежены при помощи ограничения прав доступа, замены корневой директории (change rooting) и недопущения помещения в стек программ (non-executable stack protection).

· При расширении прав доступа злоумышленник может получить удаленный непривилегированный и привилегированный доступы или локальный привилегированный доступ.

Методы тестирования уязвимостей

· Тестирование уязвимостей – необходимая часть обеспечения безопасности систем.

· Доказательство возможности нападения (proof of concept) – лучший метод определения любой уязвимости, поскольку он помогает определить суть уязвимости, место ее нахождения и способ защиты.

· Применение программ, демонстрирующих уязвимости, – наиболее часто используемый метод доказательства возможности нападения. Подобные программы можно найти в Интернете.

· Широко используется автоматизированный инструментарий обеспечения безопасности, с помощью которого в большинстве случаев корпоративные группы персонала по безопасности проводят плановый аудит безопасности.

· Контроль версий позволяет перегруженному работой отделу безопасности оценить опасность со стороны известных уязвимостей и их влияние на работоспособность развернутых систем.

· Для подготовки атак могут быть использованы сведения из баз данных Whois. А в случае атаки из базы данных Whois можно получить контактную информацию владельца сайта.

· Информация DNS раскрывает структуру сети.

· Индексация Web (спайдеринг – spidering) позволяет получать сведения о структуре директорий и важных файлах.

Часто задаваемые вопросы

Вопрос: Может ли атака относиться к нескольким классам атак?

Ответ: Да. Некоторые атаки могут быть отнесены к нескольким классам. Например, отказ в обслуживании, вызванный аварийным завершением сервиса в результате неверного ввода информации пользователем.


Вопрос: Где можно дополнительно прочитать о предупреждении DDoS-атак?

Ответ: Дейв Диттрич (Dave Dittrich) – автор ряда статей на эту тему. Статьи можно найти по адресу www.washington.edu/People/dad.


Вопрос: Как можно предотвратить утечку информации?

Ответ: Этой теме посвящено много работ. Некоторые варианты утечки информации могут быть предупреждены, например такие как чрезмерно словоохотливые баннеры или диагностические сообщения, выдаваемые по умолчанию. Другой вариант утечки информации может быть остановлен только в результате переписывания программ и изменения их настроек.


Вопрос: Можно ли предотвратить утечку информации посредством «занавеса секретности»?

Ответ: Ни в коем случае. Нельзя привести в пользу этого утверждения ни одного логически обоснованного довода, поскольку программное обеспечение обменивается сертификатами (мандатами) практически независимо от пользователя. Хотя если остановить данный поток информации, то это осложнит жизнь злоумышленников и повысит шансы обнаружения их атак.


Вопрос: Где можно достать программы, демонстрирующие уязвимости?

Ответ: Их можно найти при помощи подробных адресных списков типа Bugtraq (www.securityfocus.com) или в архивах подобных программ PacketStorm (www.packetstormsecurity.org) либо Church of the Swimming Elephant (www.cotse.com).


Вопрос: Как можно защитить собственную информацию в базе данных Whois?

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


Вопрос: Может ли быть получена дополнительная информация при помощи утилиты DNS dig?

Ответ: Да. Ошибочно сконфигурированные сервера доменных имен могут разрешать передачу зоны в адрес произвольного хоста, создавая предпосылки раскрытия информации о структуре сети.

Глава 4
Методология

В этой главе обсуждаются следующие темы:

Суть методологии исследования уязвимости

Значение экспертизы исходного текста программы

Технологии реинжиниринга

Тестирование методом «черного ящика»

· Резюме

· Конспект

· Часто задаваемые вопросы


Страницы книги >> Предыдущая | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | Следующая
  • 4.6 Оценок: 5

Правообладателям!

Данное произведение размещено по согласованию с ООО "ЛитРес" (20% исходного текста). Если размещение книги нарушает чьи-либо права, то сообщите об этом.

Читателям!

Оплатили, но не знаете что делать дальше?


Популярные книги за неделю


Рекомендации