Защита от хакеров корпоративных сетей
Шрифт:
· Контроль версий позволяет перегруженному работой отделу безопасности оценить опасность со стороны известных уязвимостей и их влияние на работоспособность развернутых систем.
· Для подготовки атак могут быть использованы сведения из баз данных 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 Методология
В этой главе обсуждаются следующие темы:
• Суть методологии исследования уязвимости
• Значение экспертизы исходного текста программы
• Технологии реинжиниринга
• Тестирование методом «черного ящика»
· Резюме
· Конспект
· Часто задаваемые вопросы
Введение
Как правило, одну и ту же задачу можно решать несколькими способами. Выбранный способ зависит от ресурсов, имеющихся в распоряжении исполнителя, и методов решений, которыми он лучше всего владеет. В случае исследования
В некоторых случаях исследователь может легко получить исходный текст анализируемой программы. Для большинства людей экспертиза исходного текста программ – наиболее легкий способ определения наличия или отсутствия в программе уязвимостей. Причина многих уязвимостей состоит в использовании в программе специфических функций языка программирования и способов вызова внешних функций. Анализ исходного текста программы часто позволяет выявить уязвимости и понять их причины.
Другим способом определения возможных ошибок программы служит реинжиниринг, который позволяет восстановить структурную схему программы и алгоритм ее работы. Для реинжиниринга требуется специальный программмный инструментарий: дизассемблеры и отладчики. Любая трансляция программы сопровождается потерей части исходного текста программы или его неочевидными преобразованиями. Другими словами, при трансляции программы исходный текст заменяется объектным кодом таким образом, что точное обратное восстановление исходного текста в большинстве случаев невозможно. Поэтому, основываясь только на результатах реинжиниринга, понять логику работы программы очень сложно.
И наконец, последний рассматриваемый способ – тестирование методом «черного ящика». Тестирование методом «черного ящика» позволяет определить зависимость между входными и выходными данными программы без выяснения ее внутреннего устройства. В некоторых случаях тестирование методом «черногоящика» – единственно возможный метод анализа программы на начальном этапе, в других – позволяет определить пути анализа программы, на которых следует сконцентрироваться.
В этой главе будут рассмотрены различные методы изучения уязвимости и показаны примеры их использования.
Суть методологии исследования уязвимости
Поясним простым языком, что понимается под методологией исследования уязвимости. Уязвимость – это нечто, что независимо от того, воспользовался ли ею кто-нибудь или нет, присутствует всюду, будь то микроконтроллер или суперкомпьютер. Исследование – процесс сбора информации, который может как привести, так и не привести к нахождению уязвимости. Методология — это обычно используемые на практике, рекомендуемые или признанные большинством профессионалов приемы и методы исследования уязвимостей.
Методы исследования уязвимостей по своей сути универсальны. Как домашний энтузиаст безопасности, так и корпоративные аудиторы безопасности в повседневной деятельности применяют одни и те же методы, один и тот же набор инструментальных средств. Диапазон применяемых средств широк: от шестнадцатеричных редакторов до дизассемблеров кода. Методы могут быть как эмпирическими, основанными на счастливой догадке, так и научно обоснованными на основе фундаментальных знаний. Некоторые из этих методов могут показаться хаотичными, в то время как другие – детализированными, строго регламентирующими последовательность выполняемых при исследовании действий. Новичок может предпочесть последние методы, в то время как закаленные исследователи с большим опытом программирования в большей степени полагаются на свою интуицию. Причина выбора тех или иных методов кроется в личном предпочтении исследователя.