Чтение онлайн

на главную - закладки

Жанры

Защита от хакеров корпоративных сетей

авторов Коллектив

Шрифт:

Инструментарий обработки непредвиденных данных

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

Программа Web Sleuth

Web Sleuth (сыщик сети) – разработанная Дэйвом Циммером (Dave Zimmer) программа для Windows, позволяющая пользователю модифицировать HTTP-запросы и HTML-формы. Программа Web Sleuth

широко использует возможности ядра Internet Explorer, добавляя свои собственные. Последняя версия программы Web Sleuth стала расширяемой благодаря применению подключаемых программ (plug-ins). В настоящий момент в число доступных подключаемых программ входят программы вскрытия HTTP-сессий методом «грубой силы», исследования Web-сайтов и тестирования SQL-запросов с помощью внесения в них изменений. Программа свободно доступна по адресу http://geocities.com/dizzie/sleuth.

Программа CGIAudit

CGIAudit – автоматизированная программа тестирования интерфейса CGI методом «черного ящика», которая получает от пользователя HTML-форму и методично тестирует каждый ее элемент на известные уязвимости: переполнение буфера, выполнение метасимволов и внесение изменений в запросы SQL. В программе реализованы возможности Web-паука и поддерживается модуль доступа к сети Интернет (прокси-поддержка). CGIAudit написан на языке С и доступен по адресу www.innu.org/~super.

Инструментарий RATS

RATS (Rough Auditing Tool for Security – инструментарий первичного аудита безопасности) – средство анализа исходных текстов программ на языках C, C++, Python, Perl и PHP. RATS просматривает исходный текст программ и сообщает о любых потенциально опасных ситуациях, включая статически размещаемые буфера и небезопасные функции. Инструментарий первичного аудита безопасности RATS не решает всех проблем, но помогает снизить потенциальные угрозы безопасности. RATS доступен по адресу www.securesw.com/rats.

Сценарий Flawfinder

Flawfinder (определитель уязвимостей) – сценарий на языке Python, по своим функциональным возможностям схожий с RATS, но анализирует только программы на языке С. Создатель сценария Дэвид Уэллер (David Wheeler) отмечает, что Flawfinder распознает уязвимости там, где RATS бессилен. Его конечная цель – объединиться с RATS, но пока этого не случилось. Сценарий Flawfinder можно найти по адресу www.dhwheeler.com/flawfinder.

Сканер Retina

Retina – разработанный eEye коммерческий сканер уязвимостей позволяет исследователю сканировать приложения для выявления уязвимостей. В основе продукта лежат основные методы атак хакеров CHAM (Common Hacking Attack Methods), основанные на идеях «искусственного интеллекта», в основном автоматизирующие рутинный процесс поиска уязвимостей, например поиск переполнения буфера и схожих проблем в общедоступных сетевых сервисах. Сканер Retina можно приобрести по адресу www.eeye.com.

Программа Hailstorm

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

по адресу www.clicktosecure.com.

Программа Pudding

Программа-посредник протокола HTTP (прокси-HTTP) Pudding написана Рольфом Теммингом (Roelef Temmingh) на языке Perl. Программа Pudding позволяет внести закодированные хитроумные вставки в проходящие через нее унифицированные указатели информационных ресурсов URL в запросах по протоколу HTTP вне зависимости от источника запросов: Web-браузера пользователя или инструментария оценки работы сети. Наиболее широко в программе используются кодировки UTF-8/Unicode. Программа Pudding может быть использована для уклонения от систем обнаружения вторжений IDS. Она доступна по адресу www.securityfocus.com/tools/1960.

Резюме

Проблемы безопасности возникают преимущественно из-за непредвиденных действий злоумышленника по отношению к приложению c целью обмана системы безопасности, логики работы приложения и т. д. Переполнение буфера происходит при пересылке в него большего количества данных, чем предусматривалось разработчиком программы. В результате изменения запроса SQL в запрос добавляются дополнительные команды SQL. К сожалению, во многих приложениях не предусмотрена даже простейшая фильтрация неверных данных. Похвалы достойны те, которые выполняет ее. Фильтрация данных позволит выиграть отдельные сражения, но не всю войну в целом. Для разработки действительно надежного и безопасного приложения следует сместить центр усилий от «удаления плохого» к «сохранению хорошего». Только тогда приложение сможет противостоять различным неправильным, поврежденным или непредсказуемым либо непредвиденным данным.

Непредсказуемые данные могут поразить любое приложение, начиная от программ c интерфейсом командной строки и заканчивая Web-приложениями интерфейса CGI, работающими в оперативном режиме. Процедуры аутентификации, сравнения данных и формирования SQL-запросов уязвимы по своей сути. Для определения уязвимости приложения широко используется метод «черного ящика», который позволяет найти, или, как некоторые говорят, разгадать, хитроумные уловки в конструкции приложения, изучая реакцию приложения на входные данные. Просмотр исходного текста программ приложения (подход, при котором программный код приложения внимательно анализируется c целью выявления уязвимостей) сулит исследователю больше выгоды.

К счастью, противостояние непредвиденным данным – не та область, где каждый сам за себя. В большинстве из общедоступных языков программирования (Perl, CFML и PHP) предусмотрены средства противодействия непредвиденным и поврежденным данным пользователя. Вдобавок ко всему есть еще дополнительные инструментальные средства, которые оказывают широкий спектр услуг исследователю от анализа исходного текста программ и выявления в нем уязвимостей до оказания помощи по правильному применению метода «черного ящика».

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

Конспект

Опасность непредвиденных входных данных

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

· В приложении должен быть предусмотрен контроль действий пользователя.

Поделиться:
Популярные книги

Камень. Книга пятая

Минин Станислав
5. Камень
Фантастика:
боевая фантастика
6.43
рейтинг книги
Камень. Книга пятая

На границе империй. Том 7. Часть 2

INDIGO
8. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
6.13
рейтинг книги
На границе империй. Том 7. Часть 2

Личник

Валериев Игорь
3. Ермак
Фантастика:
альтернативная история
6.33
рейтинг книги
Личник

На границе империй. Том 10. Часть 5

INDIGO
23. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 5

Кодекс Крови. Книга VIII

Борзых М.
8. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга VIII

Секретарша генерального

Зайцева Мария
Любовные романы:
современные любовные романы
эро литература
короткие любовные романы
8.46
рейтинг книги
Секретарша генерального

Бестужев. Служба Государевой Безопасности

Измайлов Сергей
1. Граф Бестужев
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Бестужев. Служба Государевой Безопасности

Проданная невеста

Завгородняя Анна Александровна
1. Викторианский цикл
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Проданная невеста

Энфис 7

Кронос Александр
7. Эрра
Фантастика:
героическая фантастика
рпг
аниме
5.00
рейтинг книги
Энфис 7

На границе империй. Том 9. Часть 3

INDIGO
16. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 3

Отмороженный 7.0

Гарцевич Евгений Александрович
7. Отмороженный
Фантастика:
рпг
аниме
5.00
рейтинг книги
Отмороженный 7.0

Сборник коротких эротических рассказов

Коллектив авторов
Любовные романы:
эро литература
love action
7.25
рейтинг книги
Сборник коротких эротических рассказов

Черный Маг Императора 4

Герда Александр
4. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Черный Маг Императора 4

Ваше Сиятельство 9

Моури Эрли
9. Ваше Сиятельство
Фантастика:
боевая фантастика
попаданцы
стимпанк
аниме
фэнтези
5.00
рейтинг книги
Ваше Сиятельство 9