Более подробную информацию об Уильяме Чесвике вы можете узнать по ссылкам:
• веб-сайт Уильяма Чесвика: http://www.cheswick.com/ches/index.html;
• Firewalls and Internet Security: Repelling the Wily Hacker (в соавторстве со Стивеном Белловином): https://www.amazon.com/Firewalls-Internet-Security-Repelling-Hacker/dp/020163466X;
• доклад An Evening with Berferd in which a Cracker Is Lured, Endured, and Studied: http://www.cheswick.com/ches/papers/berferd.pdf.
Я был заинтригован ханипотами с тех пор, как прочитал книгу Клиффорда Столла The Cuckoo’S Egg (https://www.amazon.com/Cuckoos-Egg-Tracking-Computer-Espionage/dp/1416507787/), изданную в 1989 году, в которой рассказывалось о том, как он поймал иностранного шпиона. С тех пор я запускал до восьми различных ханипотов за раз, отслеживая вредоносные программы и поведение хакеров. Я часто участвую в профессиональных проектах ханипотов и даже написал книгу о них под названием Honeypots for Windows (https://www.amazon.com/Honeypots-WindowsBooks-Professionals/dp/1590593359/). Мне кажется, что все компании должны включать один или несколько ханипотов в свою защиту.
Ханипот (ловушка) – это поддельная система, созданная с целью обнаружения несанкционированной деятельности. В качестве ханипота может выступать компьютерная система, устройство, сетевой маршрутизатор, беспроводная точка доступа, принтер – все, что угодно. А ханинет – это набор ханипотов, их сеть. Ханипот может быть создан путем развертывания реальной, но неиспользуемой системы или специализированного программного обеспечения ханипотов.
Эмуляция может быть в любом месте на уровнях модели Open Systems Interconnection (OSI): физическом, канальном, сетевом, транспортном, сеансовом, презентационном или прикладном, – или в любой комбинации этих уровней. Есть много вариантов ханипотов с открытым исходным кодом или коммерческих, каждая из которых предлагает различные функции. Покупатель должен остерегаться. Есть лишь некоторые ханипоты, которые смогут работать десятилетиями, но подавляющее большинство предложений рассчитано на краткосрочный период.
Насколько хорошо система ханипотов эмулирует или работает на определенном уровне, определяет ее взаимодействие. Ханипот с низким уровнем взаимодействия только имитирует очень упрощенные соединения портов и регистрирует их. Подключающемуся пользователю может быть предложен или не предложен вход в систему, но обычно успешный вход запрещен. Ханипоты среднего взаимодействия позволяют потребителю войти и предлагают дополнительные, но вместе с тем реалистичные действия. Если они эмулируют веб-сайт, то часто это приличный, но довольно статический веб-сайт. Если они делают эмуляцию FTP, узел позволяет вход в систему, где есть файлы, которые могут быть загружены, и позволяет многократное использование команд FTP. Ханипоты высокого взаимодействия имитируют реальную производственную систему до такой степени, что хакер, взаимодействующий с ней, будет не в состоянии отличить ее от реального производственного актива. Если она эмулирует веб-сайт, то он широкий и реалистичный, с часто обновляемым контентом. Ханипоты низкого взаимодействия намного легче поддерживать, но иногда их цель требует более высокого взаимодействия. Конечно, реальная система предлагает лучшую эмуляцию, но может быть более сложной в настройке и управлении в долгосрочной перспективе.
Есть много причин, по которым следует использовать ханипоты, в том числе:
• в качестве системы раннего предупреждения для обнаружения вредоносных программ и хакеров;
• для определения намерения хакера;
• для исследования хакеров и вредоносных программ;
• для анализа вредоносного ПО.
При соответствующей настройке ханипот невероятно малошумный (в плане логов) и ценный элемент, особенно для анализа журналов или генерации предупреждений. Например, журналы брандмауэра всегда полны десятков тысяч отброшенных пакетных событий каждый день, большинство из которых не имеют ничего общего со злонамеренностью. И даже если есть злонамеренный элемент, потребуется много труда, чтобы определить, что именно представляет угрозу.
Ханипот – это поддельная система, и по идее никто (или ничто) не сможет подключиться к ней. Вы должны потратить немного времени на фильтрацию обычного широкого трафика и законных попыток подключения (например, из ваших антивирусных программ обновления, управления патчами и других инструментов управления системой и т. д.). Но как только это будет сделано (что обычно занимает от двух часов до двух дней), любая другая попытка подключения по определению вредоносна.
Ханипот – это, несомненно, лучший способ поймать злоумышленника, который обошел другие защитные механизмы. Он тихонечко ждет любой внезапной попытки подключения. Я отслеживал многих хакеров и тестировщиков за десятилетия своей работы, и один правдивый факт заключается в том, что они ищут и перемещаются по сети, как только получили первоначальный доступ. Не многие хакеры знают, какие системы являются ханипотами, а какие нет, и когда они перемещаются и просто «касаются» их, считайте, вы их поймали.
Пример: одна из наиболее распространенных проблем, связанных с атаками, – это расширенные постоянные угрозы (APT), описанные в главе 14. Они легко и обычно без обнаружения двигаются в стороны и по горизонтали. Но разместите парочку ханипотов в качестве поддельных веб-серверов, серверов баз данных и серверов приложений, и вы обнаружите APT без труда.
Конечно, есть хакеры, которые просто перейдут от своего первого внутреннего вторжения к конкретному активу или набору активов, но это случается редко. Обычно даже после компрометации предполагаемой основной цели они будут оглядываться. И когда они осматриваются и «дотрагиваются» до ханипотов… вы их ловите! Или, по крайней мере, узнаете о них. Я большой поклонник размещения ханипотов низкого или среднего взаимодействия, чтобы получить раннее предупреждение о вторжении.