70+ бесплатных приманок для ловли хакеров
Сегодня поделюсь подборкой open source ханипотов, которые можно использовать для защиты своих серверов и локальных сетей от кибератак, но для начала давайте разберемся, что такое ханипот и зачем он нужен.
Honeypot — это приманка для хакеров, которая имитирует реальную цель атаки. Он может имитировать любой цифровой актив, например, сервер, приложение, устройство или даже отдельный документ. Такие приманки создаются специально, чтобы привлечь внимание злоумышленников и отвлечь их от настоящих целей. Самые простые приманки (с низким уровнем взаимодействия) выглядят правдоподобно лишь на первый взгляд, пока с ними не начинаешь взаимодействовать. Ханипоты с высоким уровнем взаимодействия копируют реальную систему вплоть до мелочей и ведут себя так же.
Ханипоты не только замедляют атаку и дезориентируют злоумышленников. Они также посылают сигналы тревоги и собирают информацию об атакующем. В некоторых случаях этих данных хватает, чтобы понять его методы и мотивы. С помощью ханипотов можно получать ранние предупреждения о начавшейся атаке, выявлять «слепые пятна» в существующей архитектуре безопасности и совершенствовать стратегию защиты в целом.
Теперь давайте посмотрим на подборку из более чем 70 open source ханипотов, которые можно поставить и попробовать прямо сейчас.
Как обычно, напоминаю, что этот список не претендует на 100% полноту и объективность. Здесь представлены те проекты, которые показались мне полезными и актуальными. Я не включал в список ханипоты, которые давно не обновлялись или не получали реквестов на github. Но если вы знаете еще какие-то классные ханипоты, которые я пропустил, то пишите в комментариях.
Одного-двух ханипотов может быть недостаточно, особенно если речь идет о защите больших корпоративных сетей. Приманки становятся действительно эффективными, когда их много, ведь тогда хакер быстрее найдет одну из них. В идеале информацию с приманок нужно собирать и анализировать в режиме реального времени. В ответ на этот запрос появились deception-системы — программы для массового развертывания и управления приманками. Мы подробно рассказывали об этом в одной из наших статей. В основном это готовые коммерческие решения, но это не значит, что не существует рабочих open source альтернатив. Возможно, они не такие функциональные и удобные, но свою функцию выполняют.
T-Pot — платформа для развертывания и контроля за ханипотами на базе Debian 11 и Docker. Поддерживает многие из перечисленных ниже приманок: dionaea, Conpot, DDoSPot, Dicompot, HellPot, Log4Pot — больше 20 разных видов ханипотов. Кроме того, T-Pot работает с рядом вспомогательных утилит для визуализации и картирования атак. В паре с GreedyBear она позволяет легко анализировать зафиксированные киберугрозы.
DejaVU — deception-платформа для развертывания приманок в облаках AWS и внутренних сетях. Предлагает 14 серверных приманок, от MySQL и TELNET до HONEYCOMB, различные приманки-клиенты, например, SSDP, позволяет разбрасывать хлебные крошки в виде файлов, HoneyHash и учетных записей Kerberoast.
Ehoney — система управления приманками с имитацией SSH, Http, Redis, Telnet, Mysql, RDP, RTSP, ModBus и заявкой на звание полноценной deception-системы. Утверждается, что Ehoney позволяет отслеживать действия злоумышленников в реальном времени, прогнозировать их и активно противодействовать, замедляя атаку при помощи распространения новых ложных целей.
OWASP Honeypot — еще одна комплексная система управления приманками на базе контейнеров Docker. Эта система предлагает автоматизированный процесс настройки, фиксирует веб и сетевые атаки. Она создана известным сообществом безопасников, однако с октября 2021 года не получала серьезных обновлений и все еще находится на ранней стадии разработки.
DecoyMini — система управления приманками, которая поддерживает быстрое развертывание групп приманок в один клик, использует виртуальные IP-адреса, поддерживает основные операционные системы (Windows, CentOS/Ubuntu/Debian/Kali, Raspberry Pi), поддерживает Docker.
HFish — кросс-платформенная система управления приманками с низким и средним уровнем взаимодействия. Предлагает более 40 видов ханипотов, имитирующих базовые сетевые службы, CRM, NAS, веб-серверы, точки доступа Wi-Fi, беспроводные точки доступа, коммутаторы и маршрутизаторы, почтовые сервера, IoT-устройства.
Honeytrap — агент-серверная система для запуска, мониторинга и управления приманками. Развертывает сети сенсоров из приманок с низким уровнем взаимодействия и при необходимости быстро обновляет их до ханипотов высокого уровня. Интегрируется с cowrie и glutton, взаимодействует с Elasticsearch, Splunk, Raven Server, Slack, Kafka.
Chameleon — 19 настраиваемых приманок для мониторинга сетевого трафика, действий ботов и учетных данных (DNS, HTTP Proxy, HTTP, HTTPS, SSH, POP3, IMAP, SMTP, RDP, VNC, SMB, SOCKS5, Redis, TELNET, Postgres, MySQL, MSSQL). Предлагает графический интерфейс на базе Grafana для мониторинга результатов их работы.
Community Honey Network — хорошо документированный управляющий сервер в комплекте с готовыми скриптами развертывания приманок на базе Docker и Docker Compose. Позволяет установить и отслеживать работу таких приманок, как Cowrie, Dionaea, ssh-auth-logger, Conpot, RDPhoney, UHP.
MHN — централизованный сервер для управления и сбора данных с приманок Snort, Cowrie, Dionaea и glastopf. Выводит данные с них в удобный веб-интерфейс. Предоставляет REST API. Существует и в версии для работы в Docker.
OpenCanary — это демон, который запускает несколько версий ханипотов. Может имитировать Linux Web Server, Windows Server, MySQL Server и MSSQL-сервера. Собирает оповещения в системном журнале и отправляет на электронную почту.
opencanary_web — еще одна платформа для управления ханипотами, собранная из Tornado, Vue, Mysql, APScheduler и Nginx.
prickly-pete — скрипт, который использует Docker для быстрого запуска приманок: contpot, cowrie, HoneyPress, gate, udpot. В совокупности они позволяют имитировать 16 разных веб-сервисов.
Honeypots — 30 приманок низко-высокого уровня для мониторинга сетевого трафика, активности ботов и учетных данных в одном пакете PyPI. Имитируют dhcp, dns, elastic, ftp, http proxy, https proxy, http, https, imap, ipp, irc, ldap, memcache, mssql, mysql, ntp, oracle, pjl, pop3, postgres, rdp, redis, sip, smb, smtp, snmp, socks5, ssh, telnet, vnc.
Здесь перечислены более простые, отдельные ханипоты, которые имитируют веб-сайты и сервисы. Они поддерживают разные протоколы, например, HTTP, HTTPS, FTP, SSH и т. д. У некоторых есть встроенная аналитика для отслеживания и анализа активности на приманке, но они не сравнятся по сложности с deception-системами.
Dionaea — многопротокольная приманка, которая охватывает все — от FTP до SIP (атаки на VoIP). Первоначально разработана для сбора образцов вредоносных программ. Dionaea имеет модульную архитектуру и использует Python в качестве языка сценариев для эмуляции протоколов. Она может имитировать выполнение полезной нагрузки вредоносного ПО с помощью LibEmu.
HoneyHTTPD — утилита для создания веб-приманок на основе Python. Она позволяет легко настраивать поддельные веб-серверы и веб-службы, отвечать на уровне протокола HTTP теми данными, которыми вы захотите, и записывать переданные серверу запросы.
medusa — быстрая и безопасная многопротокольная приманка, которая может имитировать ssh, telnet, http, https или любой другой tcp, а также udp-серверы.
Glastopf — первый из четырех проектов австрийского НКО MushMush Foundation — приманка на базе Python, имитирующая внедрение файлов при помощи песочницы PHP и HTML-инъекции через POST-запросы. В настоящее время не обновляется, однако ее разработчики предлагают альтернативы:
SNARE и TANNER — по первой ссылке расположен репозиторий датчика веб-приманки, аналогичной Glastopf и способной преобразовывать веб-страницы в поверхности для атак. TANNER — «мозг» этой ловушки. Каждое событие, отправленное из SNARE в TANNER, оценивается, и TANNER решает, как должна реагировать приманка. Такие динамические ответы помогают поддерживать маскировку.
fapro — кросс-платформенная утилита для симуляции сетевых служб. Она создана, чтобы поддерживать как можно больше протоколов — более 50 штук — и глубокое взаимодействие с ними.
Masscanned — приманка с низким уровнем взаимодействия, ориентированная на сетевые сканеры и ботов. Отвечает на их запросы по различным протоколам. Интегрируется с IVRE и позволяет собирать черные списки IP-адресов, подобно тому как это делает GreyNoise.
Mimicry — приманка, рассчитанная на активный обман и имитацию уязвимостей в веб-приложениях. Позволяет оперативно подменить Webshell, ReverseShell/BindShell на приманку.
Heralding — простая приманка, которая собирает учетные данные. Поддерживает протоколы: ftp, telnet, ssh, http, https, pop3, pop3s, imap, imaps, smtp, vnc, postgresql и socks5.
Honeydb-agent — небольшая программа-приманка, которую можно легко развернуть в системах Linux и Windows. Может запускать многочисленные эмуляции сетевых служб при помощи подключаемых плагинов. Может работать в автономном режиме или как часть глобальной мониторинговой сети HoneyDB.
Beelzebub — фреймворк для создания SSH, HTTP и TCP-ханипотов, который можно настроить с помощью yaml. Интегрируется с RabbitMQ и OpenAPI ChatBot GPT-3.
DDoSPot — это приманка на основе UDP для отслеживания и мониторинга распределенных DDoS-атак. Эмулирует DNS, NTP, SSDP, CHARGEN, случайные UDP-сервера.
Cowrie — приманка SSH и Telnet со средним и высоким уровнем взаимодействия. Предназначена для регистрации попыток брутфорса. В разных режимах работает как прокси-сервер для SSH и telnet или эмулирует систему UNIX с полноценной фейковой файловой системой. Хорошо работает в паре с Longitudinal Analysis для обработки журналов.
sshesame — простой в настройке поддельный SSH-сервер, который позволяет подключиться любому, и регистрирует SSH-соединения и активность, не выполняя на самом деле никаких команд и запросов.
Mushorg / Glutton — SSH и TCP-прокси, который работает как MITM между злоумышленником и сервером и позволяет шпионить за его действиями.
pshitt — легковесный поддельный SSH-сервер, предназначенный для сбора аутентификационных данных, отправленных злоумышленниками. Сохраняет в JSON логины и пароли, используемые программным обеспечением для перебора SSH.
SSH Honeypot — еще одно решение для сбора базовых сведений об атаке. Прослушивает входящие ssh-соединения и регистрирует IP-адрес, имя пользователя и пароль, которые использует клиент.
FakeSSH — докенизированный SSH-сервер-приманка с низким уровнем взаимодействия, написанный на Go. Регистрирует попытки входа в систему, но всегда отвечает, что пароль неверен.
docker-ssh-honey — еще одна простая приманка с аналогичной FakeSSH функциональностью.
ssh-auth-logger — регистрирует все попытки аутентификации в виде json, не взаимодействует со злоумышленником.
ssh-honeypotd — SSH-приманка с низким уровнем взаимодействия, написанная на C.
Honeyshell — написанная на Go SSH-приманка. Собирает логины и пароли.
Endlessh — коварная штука, которая открывает сокет и притворяется сервером SSH, который очень медленно отправляет SSH-баннер. Способна удерживать клиентов в течение нескольких часов или даже дней. Значительно замедляет и даже парализует работу ботов и сканеров.
portlurker — утилита для прослушивания портов на Rust с базовым логированием в SQLite.
EoHoneypotBundle — узкоспециализированный ханипот для форм Symfony2. Создает формы с дополнительным скрытым от пользователя полем, которое, тем не менее, находят роботы. Робот заполняет невидимое поле, отправляет форму и выдает себя.
Laravel Application Honeypot — еще одна ловушка для ботов, построенная вокруг невидимого поля для ввода. На этот раз для Laravel. Создает скрытый DIV с полем-приманкой, например, «my_name».
laravel-honeypot — аналогичная Laravel-приманка для спама, отправленного через веб-формы.
django-honeypot — приложение Django, добавляющее поля-приманки в веб-формы.
django-admin-honeypot — поддельный экран входа в Django, который уведомляет о попытках несанкционированного доступа.
Express honeypot — RFI и LFI-приманка для ботов и вредоносных программ, которые сканируют веб-сайты и пытаются загрузить оттуда файлы. Написана на javascript и использует фреймворк Express.
HellPot — приманка, которая генерирует бесконечный поток данных, напоминающих загрузку реального веб-сайта, и отправляет его тем клиентам, которые игнорируют robots.txt. Предполагается, что они будут (страдать) ждать загрузки вечно.
honeyup— ханипот, имитирующий дырявый веб-сайт.
Honeytoken — это некие фейковые данные, которые можно использовать для обмана и обнаружения хакеров. Это могут быть логины и пароли, номера карт или куски кода. Когда злоумышленники находят и пытаются использовать эти данные, они тем самым выдают себя. Существуют отдельные инструменты для их создания и распространения:
Сюда попало все, что трудно распределить по другим разделам:
dshield — набор скриптов для настройки Raspberry Pi в качестве сенсора DShield — глобальной системы мониторинга атак на базе журналов брандмауэра. Она получает журналы от добровольцев со всего мира и использует их для анализа глобальных тенденций. Используется в качестве механизма сбора данных для SANS Internet Storm Center (ISC).
ADBHoney — приманка с низким уровнем взаимодействия, которая имитирует устройство Android, на котором запущен серверный процесс Android Debug Bridge (ADB). Может помочь обнаружить вредоносное ПО для Android, развертывающее майнеры на телефонах и смарт-телевизорах.
Fibratus— инструмент для исследования и отслеживания ядра Windows. Он позволяет перехватывать общесистемные события, такие как жизненный цикл процесса, ввод-вывод файловой системы, изменения реестра или сетевые запросы и так далее. Не требует драйверов и стороннего ПО для работы. Потенциально позволяет использовать в качестве приманки с высоким уровнем взаимодействия любую машину на Windows.
vmitools — библиотека, упрощающая мониторинг низкоуровневых сведений о работающей виртуальной машине. Позволяет легко контролировать низкоуровневые детали работы виртуальной машины, просматривая ее память, перехватывая аппаратные события и доступ к регистрам vCPU.
Thug — ханипот с низким уровнем взаимодействия на базе Python. Используется для имитации поведения пользовательских приложений, взаимодействующих с вредоносным контентом. Проще говоря, Thug прикидывается не защищенным браузером. Позволяет изучать атаки на стороне клиента. Реализует гибридный подход, сочетающий статический/динамический анализ угроз.
SentryPeer — ханипот для VoIP АТС. Принимает телефонные звонки от злоумышленников и сохраняет IP-адрес, с которого они пришли, и номер, на который они пытались позвонить.
bluepot — Linux-утилита, написанная на Java и предназначенная для приема и хранения любого вредоносного ПО, отправленного по Bluetooth.
miniprint — приманка-принтер со средним взаимодействием. Выглядит, как стандартный сетевой принтер, который случайно попал в общедоступный интернет. Поддерживает полнофункциональную виртуальную файловую систему, в которой злоумышленники могут читать и записывать файлы и каталоги, сохраняет задания на печать в формате PostScript, ведет журнал.
AntiRansom — это инструмент, способный обнаруживать и останавливать атаки программ-вымогателей с использованием приманок. Сначала Anti Ransom создает случайную папку-приманку с множеством бесполезных случайных документов (Excel, PDF), а затем следит за папкой в ожидании изменений. Когда они обнаружены, AntiRansom пытается определить, какой процесс несет за них ответственность и останавливает его.