
Развертывание SSH-ловушки среднего уровня взаимодействия, собирающей реальный трафик брутфорса, загрузки вредоносного ПО и поведение атакующих. Включает запись TTY-сессий, сбор учетных данных и перекрестную проверку угроз по 159 источникам.
Ханипот среднего взаимодействия на базе Cowrie, развёрнутый на арендованном публичном Linux VPS, предназначенный для привлечения, регистрации и анализа реального трафика SSH-брутфорса. За 8-дневный период захвата сенсор зафиксировал 37 477 сессий от 1 582 уникальных IP-адресов атакующих, захватив 794 сброса вредоносного ПО — каждое наблюдение перекрёстно сверено с 159 публичными отраслевыми и академическими источниками.
| 📊 Live Report — интерактивный HTML | 📜 Logs/ — ежедневные логи Cowrie | 📸 ScreenShots/ — захваты сессий |
| 🏗️ docs/ — диаграмма архитектуры | 🗂️ Reports/ — исходный код отчёта | 🐛 Открыть готовый анализ |
Ханипот работает на арендованном Linux VPS. Публичный интернет-порт tcp/22 бесшумно перенаправляется через NAT в Cowrie на порт tcp/2222, в то время как настоящий демон OpenSSH перемещён на нестандартный управляющий порт (tcp/49222), доступный только с помощью приватного ключа. Для атакующего сервер выглядит как уязвимый Debian-сервер на порту 22; для администратора он полностью доступен на отдельном тихом порту.

Две полосы движения через один сервер: полоса атакующего (сверху) проходит через iptables NAT и попадает в Cowrie, который записывает в TTY-логи и карантинную папку. Полоса администратора (снизу) проходит напрямую через iptables к настоящему демону OpenSSH на порту tcp/49222. Эти два пути никогда не пересекаются.
Исходный вектор:
docs/architecture.svg

Захват в реальном времени: несколько IP-адресов атакующих одновременно обращаются к tcp/2222 — CONNECT (голубой), LOGIN SUCCESS / FAILED и пары учётных данных, которые они пробовали. Одна минута, несколько кампаний.

Полная последовательность команд одного атакующего после входа — chattr -ia ~/.ssh, имплант ключа mdrfckr, cat /proc/cpuinfo, uname, lscpu, crontab -l. Захвачена дословно с миллисекундными временными метками и идентификатором сессии.

Сводное представление по многим сессиям: подключения (голубой), неудачные входы (красный), успешные входы (зелёный), команды (жёлтый), передачи файлов (фиолетовый). Повторяющийся паттерн импланта ключа mdrfckr + chattr -ia .ssh виден среди разных IP-адресов атакующих — одна кампания, разные боты.

Характерный сброс криптомайнера RedTail XMRig: шесть файлов за одну сессию с 213.209.159.158 — установщики clean.sh и setup.sh, а также четыре ELF-бинарника под разные архитектуры (redtail.arm7, redtail.arm8, redtail.i686, redtail.x86_64), охватывающие роутеры, IoT, устаревшие x86 и серверы в одном сбросе.
ls, wget, cat /proc/cpuinfo логируется с временными метками высокого разрешенияwget / curl, перехватываются и помещаются в карантин в папке downloads/🌍 Основные регионы источников: Гонконг (Alibaba Cloud) · Китай (ChinaNet) · Болгария (IT7 Networks) · Россия (Aeza Group, под санкциями)
🐛 Основные выявленные кампании: криптомайнер RedTail XMRig · семейство имплантов SSH-ключей mdrfckr · IoT-вербовщики на базе Mirai · сигнатура SSH-распространителя 3245gs5662d34
Полный анализ с интерактивными графиками, картой MITRE ATT&CK и обсуждением каждого результата с источниками → Открыть отчёт в реальном времени.
cowriesudo useradd -m -s /bin/bash cowrie
sudo passwd -l cowrie
su - cowrie
git clone https://github.com/cowrie/cowrie.git
cd cowrie
python3 -m venv cowrie-env
source cowrie-env/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
sshd с порта 22 (перед добавлением любых правил NAT)sudo sed -i 's/^#\?Port .*/Port 49222/' /etc/ssh/sshd_config
sudo systemctl restart sshd
⚠️ Проверьте из второго терминала, что вы всё ещё можете войти на порту 49222, прежде чем продолжить.
sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222
sudo iptables-save | sudo tee /etc/iptables/rules.v4
bin/cowrie start
SSH-Honeypot-Research/
├── README.md ← you are here
├── docs/
│ ├── architecture.png ← architecture diagram (rendered)
│ └── architecture.svg ← architecture diagram (vector source)
├── Logs/ ← daily Cowrie logs (cowrie_YYYY-MM-DD.log)
│ ├── cowrie_2026-05-08.log
│ ├── cowrie_2026-05-09.log
│ └── ... (8 days total)
├── Reports/
│ └── honeypot_report.html ← full interactive report
└── ScreenShots/ ← session captures, log snapshots, payloads
├── live session.png ← multi-IP CONNECT/LOGIN stream
├── CMD1.png · CMD2.png ← captured post-login command sequences
├── sh1.png · sh2.png ← aggregated daily log views
└── RedTail Payload.png ← signature 4-arch cryptominer drop
Перекрёстно сверено с 159 отраслевыми и академическими источниками — полный аннотированный список находится в разделе References отчёта в реальном времени. Ключевые академические опоры:
Этот ханипот был развёрнут только в целях оборонительного исследования. Все захваченные артефакты (IP-адреса, полезные нагрузки, учётные данные) наблюдаются пассивно из входящего нежелательного трафика. Ханипот не инициирует сканирование, не отвечает на атаки и не предоставляет никаких услуг, кроме изолированного слушателя Cowrie. Используйте конфигурацию ответственно и в рамках применимого законодательства.
Сделано на Cowrie. 🛠️
| Слой | Что делает | Почему |
|---|
Непривилегированный пользователь cowrie | Ханипот работает как системный пользователь без sudo, без оболочки хоста | В худшем случае компрометация песочницы не даёт доступа к хосту |
| Виртуальное окружение Python | Фиксированное изолированное дерево зависимостей (Twisted, cryptography и т.д.) | Нет конфликта с системным Python; чистая сборка и пересборка |
| Смоделированная файловая система | Записи атакующего попадают в эфемерный оверлей Cowrie | Реальный диск никогда не затрагивается, даже при длительных сессиях |
| Перенаправление iptables NAT | Правило PREROUTING переписывает входящий tcp/22 на tcp/2222 | Cowrie привязывается к высокому порту (не нужен root); обман остаётся незаметным |
| Перенос управляющего порта | Настоящий sshd перемещён на tcp/49222, аутентификация только по ключу | Шум брутфорса против реального демона падает до нуля |
| Метрика | Значение |
|---|
| Всего сессий | 37 477 |
| Уникальных IP-адресов атакующих | 1 582 |
| Неудачных входов | 14 968 |
| Входов в оболочку | 22 720 |
| Захваченных команд оболочки | 21 968 |
| Сбросов вредоносного ПО | 794 |
| Перекрёстно сверенных внешних источников | 159 |