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

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

Жанры

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

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

Шрифт:

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

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

Программа 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) предусмотрены средства противодействия непредвиденным и поврежденным данным пользователя. Вдобавок ко всему есть еще дополнительные инструментальные средства, которые оказывают широкий спектр услуг исследователю от анализа исходного текста программ и выявления в нем уязвимостей до оказания помощи по правильному применению метода «черного ящика».

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

Конспект

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

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

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

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

Вамп

Парсиев Дмитрий
3. История одного эволюционера
Фантастика:
рпг
городское фэнтези
постапокалипсис
5.00
рейтинг книги
Вамп

Не грози Дубровскому! Том II

Панарин Антон
2. РОС: Не грози Дубровскому!
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Не грози Дубровскому! Том II

Купец III ранга

Вяч Павел
3. Купец
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Купец III ранга

Газлайтер. Том 1

Володин Григорий
1. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 1

Хозяйка старой усадьбы

Скор Элен
Любовные романы:
любовно-фантастические романы
8.07
рейтинг книги
Хозяйка старой усадьбы

Сумеречный Стрелок 10

Карелин Сергей Витальевич
10. Сумеречный стрелок
Фантастика:
рпг
аниме
фэнтези
5.00
рейтинг книги
Сумеречный Стрелок 10

Законы Рода. Том 7

Flow Ascold
7. Граф Берестьев
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Законы Рода. Том 7

Боярышня Дуняша 2

Меллер Юлия Викторовна
2. Боярышня
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Боярышня Дуняша 2

Пятнадцать ножевых 3

Вязовский Алексей
3. 15 ножевых
Фантастика:
попаданцы
альтернативная история
7.71
рейтинг книги
Пятнадцать ножевых 3

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

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

Вперед в прошлое 2

Ратманов Денис
2. Вперед в прошлое
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Вперед в прошлое 2

Облачный полк

Эдуард Веркин
Старинная литература:
прочая старинная литература
5.00
рейтинг книги
Облачный полк

Бастард Императора. Том 6

Орлов Андрей Юрьевич
6. Бастард Императора
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Бастард Императора. Том 6

Ученичество. Книга 2

Понарошку Евгений
2. Государственный маг
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Ученичество. Книга 2