Собираем свою лабораторию для пентеста: Vagrant + Docker + Metasploit. Конфиги и уязвимые приложения - Разработка роботов и эксплойтов

МЕНЮ


Главная страница
Поиск
Регистрация на сайте
Помощь проекту
Архив новостей

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


2025-07-05 15:35

киберугрозы

Эй, хакеры и пентестеры! Хотите создать свою личную песочницу для отработки навыков взлома, не боясь сломать что-то важное или попасть под прицел админов? Сегодня мы с вами соберем крутую лабораторию для пентеста, используя Vagrant для виртуализации, Docker для контейнеров и Metasploit как основное оружие. А еще настроим зеркала уязвимых приложений, таких как OWASP Juice Shop и DVWA, чтобы было на чем оттачивать скиллы. Всё будет изолировано, безопасно и готово к бою. Погнали!

Зачем нужна лаборатория для пентеста?

Пентест — это про практику. Теория хороша, но без реальных тестов на уязвимых системах ты не станешь профи. Собственная лаборатория даёт тебе:

  • Безопасность: никаких рисков для реальных сетей.
  • Контроль: ты сам выбираешь, что и как ломать.
  • Повторяемость: сломал — пересобрал среду за минуты.

Мы используем Vagrant для создания виртуальных машин (VM), Docker для лёгких контейнеров с уязвимыми приложениями и Metasploit как главный инструмент атаки. Всё это изолировано, чтобы ты мог экспериментировать без страха.

Что тебе понадобится

Перед стартом убедись, что у тебя есть:

  • Установленный Vagrant (для управления VM).
  • Установленный VirtualBox или другой провайдер для Vagrant.
  • Установленный Docker и Docker Compose (для контейнеров).
  • Установленный Metasploit Framework (лучше на Kali Linux или через Docker).
  • Базовые знания командной строки и сетей.

Шаг 1: Настройка базовой среды с Vagrant

Vagrant позволяет быстро разворачивать виртуальные машины с предустановленными конфигурациями. Мы создадим две VM: одну для атак (Kali Linux с Metasploit), другую для мишеней (Ubuntu с Docker для уязвимых приложений).

Создаём Vagrantfile

Создай файл Vagrantfile в пустой директории:


# -*- mode: ruby -*-

# vi: set ft=ruby :

Vagrant.configure("2") do |config|

  # Машина для атак (Kali Linux)

  config.vm.define "kali" do |kali|

    kali.vm.box = "kalilinux/rolling"

    kali.vm.hostname = "kali"

    kali.vm.network "private_network", ip: "192.168.56.10"

    kali.vm.provider "virtualbox" do |vb|

      vb.memory = "2048"

      vb.cpus = 2

    end

  end

  # Машина для мишеней (Ubuntu с Docker)

  config.vm.define "target" do |target|

    target.vm.box = "ubuntu/jammy64"

    target.vm.hostname = "target"

    target.vm.network "private_network", ip: "192.168.56.11"

    target.vm.provider "virtualbox" do |vb|

      vb.memory = "2048"

      vb.cpus = 2

    end

    # Устанавливаем Docker на target-машину

    target.vm.provision "shell", inline: <<-SHELL

      sudo apt update

      sudo apt install -y docker.io docker-compose

      sudo systemctl enable docker

      sudo systemctl start docker

      sudo usermod -aG docker vagrant

    SHELL

  end

end

Запускаем машины

В той же директории выполни:


vagrant up

Vagrant скачает образы Kali Linux и Ubuntu, настроит сетевые интерфейсы (приватная сеть для общения между машинами) и установит Docker на машину-мишень. После завершения ты можешь подключиться к машинам:

  • Для Kali: vagrant ssh kali
  • Для мишени: vagrant ssh target

Лайфхак: Если у тебя слабый ПК, уменьши memory и cpus в конфиге, но не ниже 1024 МБ для Kali — Metasploit жрёт ресурсы.

Шаг 2: Разворачиваем уязвимые приложения с Docker

Теперь на машине-мишени (Ubuntu) мы поднимем уязвимые веб-приложения с помощью Docker. Мы выберем два популярных проекта: OWASP Juice Shop (симуляция уязвимого интернет-магазина) и DVWA (Damn Vulnerable Web Application).

OWASP Juice Shop

Создай файл docker-compose.yml в домашней директории на машине target:


version: "3"

services:

  juiceshop:

    image: pwning/juice-shop

    ports:

      - "3000:3000"

    restart: always

Запусти контейнер:


docker-compose up -d

После старта Juice Shop будет доступен по адресу http://192.168.56.11:3000. Это крутой полигон для отработки инъекций, XSS, CSRF и других атак.

DVWA (Damn Vulnerable Web Application)

Добавь DVWA в тот же docker-compose.yml:


version: "3"

services:

  juiceshop:

    image: pwning/juice-shop

    ports:

      - "3000:3000"

    restart: always

  dvwa:

    image: vulnerables/web-dvwa

    ports:

      - "80:80"

    restart: always

Перезапускай контейнеры:


docker-compose up -d

DVWA будет доступен по адресу http://192.168.56.11. Логин/пароль по умолчанию: admin/password. Здесь можно практиковать SQL-инъекции, брутфорс и многое другое.

Лайфхак: Если порты конфликтуют, меняй их в конфиге (например, для DVWA используй 8080:80).

Шаг 3: Настройка Metasploit на Kali

Если ты подключился к машине kali через vagrant ssh kali, Metasploit уже должен быть предустановлен. Проверь:


msfconsole

Если всё ок, ты увидишь знакомый интерфейс. Если нет — обнови пакеты:


sudo apt update && sudo apt install metasploit-framework

Теперь настроим сеть так, чтобы Kali видела машину-мишень. IP-адреса уже заданы в Vagrantfile (Kali: 192.168.56.10, Target: 192.168.56.11). Пингуй мишень:


ping 192.168.56.11

Если есть ответ — ты готов к атакам.

Пример атаки: Сканирование портов мишени через Metasploit.

  1. Запусти msfconsole.
  2. Используй модуль сканирования:


use auxiliary/scanner/portscan/tcp

set RHOSTS 192.168.56.11

set PORTS 1-1000

run

Ты увидишь открытые порты, включая 80 (DVWA) и 3000 (Juice Shop). Это твой первый шаг к эксплуатации.

Шаг 4: Тестируем уязвимости

OWASP Juice Shop

Открой браузер на своей хост-машине и перейди на http://192.168.56.11:3000. Попробуй простые атаки:

  • SQL-инъекция в строке поиска (например, test' OR 1=1 --).
  • XSS через поля ввода (например, <script>alert('hacked')</script>).

Juice Shop даже имеет встроенные челленджи с подсказками — круто для новичков.

DVWA

Перейди на http://192.168.56.11 и выбери уровень сложности “Low”. Попробуй:

  • SQL-инъекция: В разделе SQL Injection введи 1' OR '1'='1 для обхода авторизации.
  • Брутфорс: Используй Burp Suite или Hydra для подбора пароля.

Лайфхак: Если хочешь усложнить задачу, повысь уровень безопасности в DVWA до “High”.

Шаг 5: Дополнительные фичи и автоматизация

  1. Снимки состояния (Snapshots): Vagrant и VirtualBox позволяют создавать снимки VM. Перед сложной атакой сделай снапшот:


vagrant snapshot save kali kali_backup

vagrant snapshot save target target_backup

Если что-то сломается, восстанови:


vagrant snapshot restore kali kali_backup

  1. Автоматизация атак: Напиши простые скрипты для Metasploit (resource scripts), чтобы автоматизировать рутинные задачи, например, сканирование или эксплуатацию.

Пример скрипта scan.rc:


use auxiliary/scanner/portscan/tcp

set RHOSTS 192.168.56.11

set PORTS 1-65535

run

Запусти: msfconsole -r scan.rc.

Итог: Твоя лаборатория готова!

Теперь у тебя есть полностью изолированная среда для пентеста. Ты можешь:

  • Атаковать уязвимые приложения с Kali Linux.
  • Разворачивать новые мишени в Docker за минуты.
  • Экспериментировать с Metasploit и другими инструментами.

Совет от профи: Не ограничивайся Juice Shop и DVWA. Попробуй другие контейнеры, например, VulnHub машины или TryHackMe образы, интегрируя их в свою лабораторию через Vagrant.


Источник: timrobot.ru

Комментарии: