Программа ходит по сайтам как человек

На каждом веб-сайте есть два вида посетителей: люди, которые медленно бродят по ссылкам, и пауки - программы, быстро прочесывающие сайт. Теперь же появилась новая разновидность. Паук, который ведет себя как человек.

Среди заинтересованных специалистов довольно давно являются объектом исследования техники для хакерских атак и контр-техники для их обнаружения. В течение последних лет активно обсуждается и совершенствуется инструментарий в этой области. Чаще всего используются программы на основе библиотеки LibWhisker, а для "защиты" - аналитические системы вроде Snort. Однако специалисты редко обсуждают один важный аспект, который предшествует любой атаке - это скрытое "прощупывание" сайта, разведка. Обычно это делают или вручную, что очень утомительно, или с помощью обычного краулера вроде wget, который легко выдает себя. Он порождает ненормальный всплеск "посещаемости" на счетчиках и возросший поток трафика.

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

Программа была представлена на недавней хакерской конференции Shmoo Con. Ее разработал известный хакер Билли Хоффман, прочитавший на конференции доклад на тему "Скрытый краулинг: волк среди овечек" (www.shmoocon.org/speakers.html#acidus).

В новой системе для скрытого изучения сайтов используются следующие техники:

 
  • Распределенный краулинг с нескольких IP и в течение нескольких сессий, отделенных друг от друга по времени. Это делается для того, чтобы с одного IP или в течение одной сессии не выкачивать весь сайт целиком, потому что такое поведение выглядит ненормально.
  • Краулинг сайта не по набору ссылок, а по определенным маршрутам, как это делают люди.
  • Использование доступной статистики по сайту.
  • Динамическая генерация фальшивых заходов с Google на страницы в глубине сайта. Генерация фальшивых заходов осуществляется на основе контента целевых страниц.
  • Интеллектуальный выбор прокси-серверов с учетом страны и типа веб-сайта.
  • Случайный выбор ссылок и перекрывание маршрутов краулинга для большей реалистичности.
  • Фильтрация ссылок по популярности.
  • Эскалация международного трафика.

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

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

Для такой программы можно найти много разнообразных применений, кроме разведки перед хакингом. Первое, что приходит на ум - например, скачивание книг, которые демонстрируются постранично в сервисе Amazon Search Inside The Book.

Анатолий АЛИЗАР

Версия для печатиВерсия для печати

Номер: 

05 за 2006 год

Рубрика: 

Internet
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!