Honeypot
Honeypot-системы (или узлы-приманки) — вычислительные системы, предназначенные для привлечения внимания, чтобы атака была направлена на поддельную систему.
Узлы-приманки позволяют собирать ценную информацию об атакующих для дальнейшего анализа их поведения и предотвращения будущих атак. Решают задачи:
- Сбор информации о злоумышленнике: при проведении атаки собирается информация о событиях в узле-приманке. Собранный журнал событий анализируется, из полученных данных составляется модель поведения атакующего, что позволяет выявлять и предотвращать новые вектора атак.
- Отвлечение атакующего от ресурсов системы, что позволяет избежать утечек или сбоев в реальной системе.
- Оценка эффективности применения других средств защиты.
Эффективность использования зависит от их размещения. Важно учитывать тип эмулируемого ресурса в зависимости от располагаемых активов.
Классификация
Классифицируют по их назначению (исследовательские и производственные) и уровню взаимодействия (низкий, средний и высокий).
- Исследовательская: сбор информации о кибератаках, угрозах, с которыми могут столкнуться организации, что позволяет лучше их защитить.
- Производственная: используется в среде организации для ее защиты и снижения рисков. Оповещают администраторов о потенциальных атаках в режиме реального времени.
По уровню взаимодействия:
- Низкий — производственные, имитируют сервисы, которые нельзя использовать для получения полного доступа к узлу.
- Средний более сложные и предоставляют больше векторов атак.
- Высокий — полнофункциональные ОС и приложения. После проникновения внутрь производится анализ его активности в системе.
Honeynet – сеть из связанных узлов, которые находятся под управлением специального межсетевого экрана, называемого honeywall. Размещение honeynet в корпоративной сети
Скомпрометированные системы представляют угрозу для сети компании. Поскольку приманки предназначены для компрометации, злоумышленники могут получить к ним полный доступ, создать ботнет, а затем атаковать другие системы или запустить DoS-атаку. Чтобы уменьшить риск заражения, сеть-приманка помещается за межсетевым экраном, который ограничивает доступ к производственной сети, поскольку через нее должен проходить весь входящий и исходящий трафик. Это также ограничивает объем вредоносного трафика, который может выйти из сети, не позволяя злоумышленнику атаковать другие системы.
Наиболее актуальная стадия развития honeypot-систем — deception-системы. Основной целью deception-систем по-прежнему является отвлечение атакующего от реальных ресурсов компании, но в масштабе, большем, чем в honeynet. Решения deception предполагают автоматизированный подход к обнаружению атак. Deception-системы эмулируют поведение инфраструктуры. Например, в рамках атаки злоумышленник может обнаружить эмулируемые сервера баз данных, размещенных рядом с другими незначительными с точки зрения ценности информации объектами сети. Исследование полученных сведений из баз данных позволит отвлечь атакующего от реальных активов.
Обнаружение разведки Active Directory при помощи Honeytoken
Создается поддельная учетная запись домена. При попытке логина в журнале событий (eventvwr. msc) появится запись с идентификатором события 4625 и имя поддельной учетной записи.
Также зарегистрируется событие 4771. При вводе учетной записи, рабочая станция связывается с локальным контроллером домена и запрашивает TGT. Если имя пользователя и пароль верны и учетная запись пользователя проходит проверки состояния и ограничений, контроллер домена предоставляет TGT и регистрирует событие с идентификатором 4768 (билет аутентификации предоставлен). Если запрос билета завершается неудачей, Windows регистрирует это событие с идентификатором 4771.
Для получения уведомлений при регистрации данных событий необходимо:
- Сгенерировать Canary-токен (например, при помощи сервиса по ссылке) который будет срабатывать при переходе на URL (Web bug/URL token).
- В планировщике заданий Windows создать задачу, которая будет выполняться при возникновении события.
- В качестве фильтра событий указать:
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">
(*[System[EventID='4771']] or *[System[EventID='4625']]) and
*[EventData[Data [@Name='TargetUserName']='ИМЯ_ПОЛЬЗОВАТЕЛЯ']]
</Select>
</Query>
</QueryList>
- В качестве действия, выполняемого при срабатывании события, указать запуск curl.exe, а в качестве аргумента указать ссылку на ранее созданный canary-токен.
HoneyHash.
Для обнаружения атаки Pass-the-Hash. Включает размещение учетных данных для поддельной учетной записи в памяти LSASS на целевой системе. Если злоумышленник попытается воспользоваться учетными данными для атаки PtH, событие будет зарегистрировано для дальнейшего анализа. Такие события могут быть зарегистрированы при помощи Sysmon. При попытке проведения атаки PtH журнал событий будет содержать события с идентификаторами 4625 (неудачная попытка входа) и 10 (попытка доступа к процессу lsass.exe процессом mimikatz.exe).
Чтобы сделать поддельную учетную запись привлекательнее, возможно:
- Перепрофилировать старую учетную запись, которая была неактивна. Это «старит» аккаунт и обеспечивает некоторый уровень легитимности.
- Выполнить вход в систему несколько раз: неактивные учетные записи выглядят подозрительно. Возможно настроить запланированное задание для входа в систему с этой учетной записью ежедневно или еженедельно, чтобы повысить активность учетной записи. Если предполагается использование неактивной учетной записи-приманки, необходимо убедиться в том, что с ней связано несколько входов в систему, поскольку злоумышленники могут проверить атрибут logoncount.
- Совершить хотя бы одну попытку ввода неверного пароля.
- Добавить учетную запись в привилегированную группу AD, установив при этом автоматически сгенерированный пароль.
Примеры систем
В зависимости от специфики корпоративной сети возможно использование honeypot’ов с различным уровнем взаимодействия.
При разворачивании honeypot’ов, представляющих собой конкретный сервис стоит понимать, что ловушка может либо имитировать работу конкретного протокола, либо выполнять полную эмуляцию сервиса. В первом случае не предусмотрены функциональные возможности сервиса, во втором случае решения используют надстройку над реальными службами для перехвата и дальнейшего анализа информации.
Honeypot-системы для баз данных
- Delilah — действует как уязвимый экземпляр Elasticsearch, который обнаруживает и идентифицирует паттерны атак, попытки сканирования и команды загрузки (в частности, «wget» и «curl»).
- Nosqlpot — приманка с открытым исходным кодом для баз данных nosql, которая автоматизирует процесс обнаружения злоумышленников и регистрации инцидентов атак. Механизмы моделирования развертываются с использованием фреймворка Twisted.
- mysql-honeypotd — honeypot с низким уровнем взаимодействия, имитирующий работу БД MySQL.
Honeypot-системы для веб-приложений:
- Glastoph — Реализован на языке Python версии 2.7, имеет ряд шаблонов html-страниц. Приложение, которое имитирует данная ловушка, может быть дописано или вовсе переделано в зависимости от нужд пользователей. В данном honeypot присутствует эмуляция популярных типов атак: удаленное включение файлов (RFI) через встроенную песочницу PHP, включение локальных файлов (LFI) из виртуальной файловой системы и внедрение HTML через запросы POST.
- DShield — Web Honeypot состоит из 3 элементов: клиент, набор шаблонов и система логирования событий. Все веб-запросы, поступающие на приманку, передаются модулю-клиенту. Клиент пытается сопоставить запрос к веб-приложению с одним из шаблонов, установленных в приманке. Если подходящий шаблон найден, он отправляется пользователю, который произвел запрос. Если шаблон недоступен, возвращается веб-страница по умолчанию. В обоих случаях конкретный запрос веб-приложения регистрируется и отправляется в центральную базу данных DShield.
- Honeyhttpd — это honeypot-платформа веб-сервера на основе Python. HoneyHTTPD позволяет создавать свои ответы с помощью Python на уровне протокола HTTP, чтобы имитировать ответы серверов Apache/Tomcat. Для более гибкой настройки требуется изменение исходного кода обработчиков запросов.
Honeypot-системы для сетевых протоколов:
- DDoSPot — honeypot для отслеживания и мониторинга атак распределенного отказа в обслуживании (DDoS) на основе UDP. В настоящее время платформа поддерживает следующие службы/серверы-приманки: NTP-сервер, SSDP-сервер, CHARGEN-сервер, Mock-UDP-сервер.
- HoneySMB — honeypot с высоким уровнем взаимодействия для эмуляции работы SMB-сервера.
- Conpot — это приманка для АСУ ТП, целью которой является сбор информации о мотивах и методах злоумышленников, нацеленных на системы промышленного управления. Поддерживает распространенные протоколы, используемые на устройствах АСУ ТП: IEC104, http, ftp, tftp, modbus, snmp.
- CiscoASA Honeypot — honeypot с низким уровнем взаимодействия для компонента Cisco ASA, способен обнаруживать попытки эксплуатации CVE-2018-0101, уязвимости DoS и удаленного выполнения кода.
- Kippo — SSH-honeypot среднего взаимодействия, предназначен для регистрации bruteforce атак и, что наиболее важно, всего взаимодействия с SSH-оболочкой, выполняемого злоумышленником.
- Cowrie — honeypot для SSH и Telnet со средней и высокой степенью взаимодействия, предназначенная для регистрации bruteforce атак и взаимодействия с SSH-оболочкой, выполняемого злоумышленником. В режиме среднего взаимодействия (SSH-оболочка) он эмулирует систему UNIX на Python, в режиме высокого взаимодействия (прокси) он функционирует как прокси-сервер SSH и telnet для наблюдения за поведением злоумышленника в системе.
Honeypots — представляет собой модуль Python, который содержит honeypot’ы низкого уровня взаимодействия. Логирование данных о взаимодействии злоумышленника с узлом происходит в одном из поддерживаемых форматов: терминал, syslog, Postges, sqlite. В таблице ниже приведен список сервисов, эмулируемых данным средством.
Эмулируемый сервис |
Порт |
Логируемые данные о злоумышленнике |
DNS |
53/udp |
IP-адрес, порт |
FTP |
21/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
HTTP Proxy |
8080/tcp |
IP-адрес, порт, данные в рамках сеанса |
HTTP |
80/tcp |
IP-адрес, порт, данные в рамках сеанса |
HTTPS |
443/tcp |
IP-адрес, порт, имя пользователя и пароль |
IMAP |
143/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
Mysql |
3306/tcp |
IP-адрес, порт, имя пользователя и пароль |
POP3 |
110/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
Postgres |
5432/tcp |
IP-адрес, порт, имя пользователя и пароль |
Redis |
6379/tcp |
IP-адрес, порт, имя пользователя и пароль |
SMB |
445/tcp |
IP-адрес, порт, имя пользователя и пароль |
SMTP |
25/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
SOCKS5 |
1080/tcp |
IP-адрес, порт, имя пользователя и пароль |
SSH |
22/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
Telnet |
23/tcp |
IP-адрес, порт, имя пользователя и пароль |
VNC |
5900/tcp |
IP-адрес, порт, имя пользователя и пароль |
Elastic |
9200/tcp |
IP-адрес, порт, действия в рамках сеанса |
LDAP |
389/tcp |
IP-адрес, порт, имя пользователя и пароль |
NTP |
123/udp |
IP-адрес, порт, действия в рамках сеанса |
Memcache |
11211/tcp |
IP-адрес, порт, действия в рамках сеанса |
Oracle |
1521/tcp |
IP-адрес, порт, имя пользователя и пароль |
SNMP |
161/udp |
IP-адрес, порт, действия в рамках сеанса |
SIP |
5060/udp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
IRC |
6667/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
PJL |
9100/tcp |
IP-адрес, порт, действия в рамках сеанса |
IPP |
631/tcp |
IP-адрес, порт, действия в рамках сеанса |
RDP |
3389/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
DHCP |
67/udp |
IP-адрес, порт |
Dionaea — honeypot на базе Python-модулей, реализующих имитацию работы протоколов. В отличие от honeypots является ловушкой среднего уровня взаимодействия. Некоторые из модулей предоставляют злоумышленнику ограниченный функционал соответствующего протокола. В таблице ниже приведен список сервисов, эмулируемых данным средством.
Эмулируемый сервис |
Порт |
Логируемые данные о злоумышленнике |
FTP |
21/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
HTTP |
80/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
Memcache |
11211/tcp |
IP-адрес, порт, действия в рамках сеанса |
MongoDB |
27017/tcp |
IP-адрес, порт, действия в рамках сеанса |
MSSQL |
1433/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
MySQL |
3306/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса (эмуляция на уровне БД с помощью sqlite) |
SIP |
5060/udp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
SMB |
445/tcp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
TFTP |
69/udp |
IP-адрес, порт, имя пользователя и пароль, действия в рамках сеанса |
T-Pot — представляет собой honeypot-систему, в которой собран функционал описанных выше средств. Является honeypot-системой с высоким уровнем взаимодействия. Содержит большое количество средств визуализации информации о взаимодействии с системой злоумышленников, а также множество инструментов безопасности. Данная honeypot-система включает в себя описанные выше средства. Разворачивание каждого из эмулируемых сервисов происходит при помощи средств контейнеризации.
Для эмуляции системы, позволяющей выявлять активность злоумышленника в сети по популярным сетевым протоколам, рекомендуется использовать T-Pot. Инструкция по установке T-Pot:
УстановитьВ ОС Debian11.11 ВотустановленнойимениОС открыть терминал, заменить пользователя оболочки на root: su.rootapt install -y git. git clone https://github.com/telekom-security/tpotce. cd tpotce/iso/installer/. ./install.sh --type=user.
- Выбрать конфигурацию T-Pot: Standard, установить имя пользователя и пароль для веб-интерфейса. После успешной установки произойдет перезагрузка ОС. После перезагрузки порт, прослушиваемый службой SSH, изменится на 64295.
-
Отключить отправку пользовательских данных на серверы T-Pot:
systemctl stop tpot # Открыть конфигурационный файл /opt/tpot/etc/tpot.yml и удалить из него секцию: # Ewsposter service ewsposter: container_name: ewsposter restart: always networks: - ewsposter_local environment: - EWS_HPFEEDS_ENABLE=false - EWS_HPFEEDS_HOST=host - EWS_HPFEEDS_PORT=port - EWS_HPFEEDS_CHANNELS=channels - EWS_HPFEEDS_IDENT=user - EWS_HPFEEDS_SECRET=secret - EWS_HPFEEDS_TLSCERT=false - EWS_HPFEEDS_FORMAT=json env_file: - /opt/tpot/etc/compose/elk_environment image: "dtagdevsec/ewsposter:2203" volumes: - /data:/data - /data/ews/conf/ews.ip:/opt/ewsposter/ews.ip systemctl start tpot
Для проверки корректности установки системы необходимо перейти в директорию tpotce/bin и выполнить shell-скрипт ./dps.sh.
- Веб-интерфейс доступен на порту 64297 и содержит ссылки на панели управления основными компонентами системы.
Панели инструментов:
Attack Map | карта с информацией о запросах, фиксируемых сервисами. |
Cockpit | web-панель управления ОС, на которой установлен T-Pot. |
Cyberchef | web-приложение для анализа сжатых/закодированных данных. |
Elasticvue | web-интерфейс для взаимодействия с подсистемой Elasticsearch. |
Spiderfoot | инструмент для автоматизации OSINT. |
Kibana |
панели с визуализацией данных, получаемых каждым из honeypot’ов. |
Deception-технология - методы активного обмана злоумышленников с применением специальных ловушек, приманок и других приемов дезинформации. Применение таких методов внутри корпоративной сети позволяет рано обнаруживать целенаправленные атаки, которые могли быть упущены предупредительными мерами, такими как брандмауэры, системы предотвращения вторжений и антивирусные программы. Хотя термин "Deception" относительно новый, основная концепция этой технологии основана на принципе Honeypot-систем, но с более высоким уровнем реализации, возможностями масштабирования и автоматизации.
Deception-платформы представляют собой централизованные системы управления, которые создают, распространяют и управляют всей эмулируемой средой и связанными с ней компонентами архитектуры. Эти компоненты могут включать рабочие станции, серверы, устройства, приложения, сервисы, протоколы, элементы данных или пользователей, которые часто виртуализируются и практически неотличимы от реальных активов. Они используются в качестве приманки для привлечения и обнаружения злоумышленников. Отличительной особенностью Distributed Deceptive Platform (DDP) от Honeypot (Honeynet) является наличие распределенных систем, то есть при разворачивании таких систем, как правило, используются технологии виртуализации ВМ с возможностью централизованного управления ими. Разворачивание узлов может производиться автоматизировано с повторением корпоративной специфики компании. Ниже приведена сравнительная таблица с продуктами, реализующими технологию DDP.
|
ACALVIO Shadowplex |
ATTIVO NETWORKS ThreatDefend Platform |
COUNTERCRAFT Cyber Deception Platform |
Cybertrap Cybertap |
CYMME TRIA’S MazeRunner |
FIDELIS Elevate |
Illusion Black |
XELLO |
SIEM Интеграция |
+ |
+ |
|
|
|
+ |
+ |
+ |
API |
Наличие открытого API для интеграции + REST API |
REST API |
Наличие открытого API для интеграции + REST API |
|
|
|
|
Наличие открытого API для интеграции + REST API |
Возможности анализа ВПО |
Интеграция Sandbox |
Интеграция Sandbox |
|
|
|
|
|
|
Интеграция с промышленными системами |
SCADA IoT |
POS SCADA IoT |
|
|
IoT |
|
IoT |
|
Корреляция результатов |
SIEM интеграция + встроенные средства корреляции |
SIEM интеграция + встроенные средства корреляции |
Встроенные средства корреляции |
|
Встроенные средства корреляции |
SIEM интеграция + встроенные средства корреляции |
SIEM интеграция |
IEM интеграция + встроенные средства корреляции |
Тип эмуляции ловушек |
Ловушки на базе полноценной ОС + наличие эмулированных сенсоров |
Ловушки на базе полноценной ОС + наличие эмулированных сенсоров |
Ловушки на базе полноценной ОС |
Ловушки на базе полноценной ОС |
Ловушки на базе полноценной ОС + наличие эмулированных сенсоров |
Наличие эмулированных сенсоров |
Ловушки на базе полноценной ОС + наличие эмулированных сенсоров |
Ловушки на базе полноценной ОС |
Этапы обнаружения атак |
Разведка Боковое движение Эксфильтрация |
Разведка Боковое движение Эксфильтрация |
Разведка Боковое движение |
Разведка Боковое движение Эксфильтрация |
Разведка Боковое движение Эксфильтрация |
Разведка Боковое движение Эксфильтрация |
Разведка Боковое движение Эксфильтрация |
Боковое движение Эксфильтрация |
Deception-токены (эмулируемые ОС) |
Windows |
Windows Linux Mac |
Windows |
Windows |
Windows |
Windows |
Windows |
Windows Linux |
Обнаружение командных центров, MITM и бот-сетей |
- |
Обнаружение командных центров + Обнаружение атак MITM + ботнетдетектор |
|
|
Обнаружение атак MITM |
Обнаружение командных центров + ботнетдетектор |
|
|
EDR |
+ |
+ |
|
|
|
|
|
|
Active Directory |
+ |
+ |
+ |
|
|
|
+ |
+ |
База данных |
+ |
+ |
|
+ |
|
|
+ |
+ |
Общий сетевой ресурс |
+ |
+ |
|
|
|
|
+ |
+ |