Сегодня поделюсь подборкой open source ханипотов, которые можно использовать для защиты своих серверов и локальных сетей от кибератак, но для начала давайте разберемся, что такое ханипот и зачем он нужен.

Honeypot — это приманка для хакеров, которая имитирует реальную цель атаки. Он может имитировать любой цифровой актив, например, сервер, приложение, устройство или даже отдельный документ. Такие приманки создаются специально, чтобы привлечь внимание злоумышленников и отвлечь их от настоящих целей.

Самые простые приманки (с низким уровнем взаимодействия) выглядят правдоподобно лишь на первый взгляд, пока с ними не начинаешь взаимодействовать. Ханипоты с высоким уровнем взаимодействия копируют реальную систему вплоть до мелочей и ведут себя так же.

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

Теперь давайте посмотрим на подборку из более чем 70 open source ханипотов, которые можно поставить и попробовать прямо сейчас.


Как обычно, напоминаю, что этот список не претендует на 100% полноту и объективность. Здесь представлены те проекты, которые показались мне полезными и актуальными. Я не включал в список ханипоты, которые давно не обновлялись или не получали реквестов на github. Но если вы знаете еще какие-то классные ханипоты, которые я пропустил, то пишите в комментариях.

Комплексные системы развертывания приманок, управляющие платформы deception-системы

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

SSH-приманки

  • 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-баннер. Способна удерживать клиентов в течение нескольких часов или даже дней. Значительно замедляет и даже парализует работу ботов и сканеров.

Приманки, имитирующие базы данных

  • pg-server — эмулятор сервера БД Postgres, прокси и приманка.

  • dns.py — скрипт для создания приманки DNS, которая регистрирует все запросы к базе данных SQLite и имеет настраиваемый уровень интерактивности.

  • mysql-honeypotd —MySQL-приманка с низким уровнем взаимодействия, написанная на C.

  • RedisHoneyPot — интерактивная приманка с высоким уровнем взаимодействия для протокола Redis. Написана на Golang. Умеет имитировать выполнение команд ping, info, set, get, del, exists, keys, flushall, flushdb, save, select, dbsize, config, slaveof.

  • MongoDB-HoneyProxy — прокси-приманка для mongod, которая регистрирует трафик на фиктивном сервере.

RDP

  • ad-honeypot-autodeploy — ловушка с высоким уровнем взаимодействия — намеренно небезопасный уязвимый домен Windows. Работает в виртуальной машине на базе libvirt с QEMU/KVM, но его можно развернуть и в облаке. Состоит из Windows Server 2016 в качестве контроллера домена и машины на базе Windows 10 (21H2). На ней включены службы RDP и WinRM.

  • pyrd — инструмент и библиотека для Python 3 позволяющая реализовать атаку MITM против подключающегося к приманке злоумышленника. Позволяет просматривать подключения в режиме реального времени и постфактум.

Электронная почта

  • SHIVA Spampot — релейная спам-приманка, написанная на Python 3. Состоит из пары Docker-контейнеров, где один — это ресивер — SMTP-сервер, который принимает все отправленные ему электронные письма, а второй — анализатор, который разбирает .eml и файл метаданных и извлекает из писем различные идентификаторы: информацию о получателях, URL-адреса, вложения, тело письма Информация индексируется в Elasticsearch/OpenSearch для более удобного поиска и анализа.

  • Honey — пакетное решение для борьбы со спамом для Laravel, которое сочетает в себе ханипот, систему блокировки спамерских адресов и reCAPTCHA. Скорее средство активного противодействия спаму, чем инструмент для исследования.

  • imap-honey — простая IMAP и SMTP-приманка, написанная на Golang.

  • Mailoney — еще одна SMTP-приманка с базовой функциональностью. Давно не получала крупных обновлений.

Различные веб-приманки

  • 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— ханипот, имитирующий дырявый веб-сайт.

Различные приманки для внутренних сетей

  • Conpot — еще один проект MushMush Foundation — приманка предназначенная для сбора информации о мотивах и методах злоумышленников, действующих во внутренних сетях промышленных предприятий (АСУ ТП). Написана на Python, имитирует ICS/SCADA, поддерживает Modbus, DNP-IP, SML и другие промышленные протоколы. Дает возможности для настройки приманок, в частности, время их отклика может быть искусственно увеличено, чтобы имитировать работу под постоянной нагрузкой.

  • Goblin — фишинговый инструмент для блютимминга. Может быть использован в качестве ханипота или средства активного противодействия атаке. Основан на обратном прокси.

  • hontel — ханипот для службы Telnet. Первоначально разработан для работы в среде Ubuntu/Debian, но его можно адаптировать под любой Linux.

  • esp-canary — простой датчик, который оповещает об обращениях или сканировании. Предназначен для ESP-8266 или ESP-32, подключается к локальной сети по Wi-Fi, основан на Tomcat.

  • log4j-honeypot-flask — приманка, сообщающая о том, сканирует ли злоумышленник внутреннюю сеть на наличие log4j CVE-2021-44228.

Токены и хлебные крошки

Honeytoken — это некие фейковые данные, которые можно использовать для обмана и обнаружения хакеров. Это могут быть логины и пароли, номера карт или куски кода. Когда злоумышленники находят и пытаются использовать эти данные, они тем самым выдают себя. Существуют отдельные инструменты для их создания и распространения:

  • Canarytokens — работает по принципу, напоминающему Tracking Pixel, с помощью которых отслеживают открытие электронных писем. Только канарейка делает то же самое для файлов, запросов к базам данных и многого другого. Это позволяет вам устанавливать ловушки в ваших системах, а не создавать отдельные приманки.

  • SpaceSiren — менеджер токенов и система оповещения о вторжениях для AWS. Поддерживает высокие нагрузки и позволяет управлять тысячами токенов.

Другие приманки

Сюда попало все, что трудно распределить по другим разделам:

  • 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 пытается определить, какой процесс несет за них ответственность и останавливает его.

Другие авторские подборки инструментов, связанных с информационной безопасностью

Комментарии (4)


  1. pm_Freeman
    25.04.2023 11:50
    +3

    Интересно, если вся эта инфа в общем доступе и есть, то разве хороши хакер не сможет найти способ обойти все эти "приманки"?


    1. SantrY Автор
      25.04.2023 11:50
      +4

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

      Приведу пример с внутренней сетью. Допустим, хакер не знает что в ней установлены ханипоты - он запустит автоматический сканер, чтобы собрать больше информации, и тот вскоре вызовет срабатывание ловушки. Профит.

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


    1. humoured
      25.04.2023 11:50
      +5

      Обойти (проигнорировать) можно, но о существовании приманки ещё ведь нужно узнать. А если учесть, что атаки, как правило, начинаются с массового автоматического сканирования, цель приманки будет достигнута — она зафиксирует потенциального взломщика, его адрес и методы работы.