
Offensive Docker — это образ с наиболее часто используемыми инструментами для атак, позволяющий быстро и легко создать среду для проведения оценки целей.
Offensive Docker — это образ с наиболее популярными инструментами для быстрого и простого создания среды пентеста.
➡️ Примечание: Ознакомьтесь со следующим репозиторием, чтобы узнать, как запустить offensive docker на VPS в Google Cloud Platform или Digital Ocean (включает бесплатный кредит). Offensive Docker VPS
Смотрите вики проекта для документации.
Вы можете использовать образ Docker одним из двух способов:
git clone --depth 1 https://github.com/aaaguirrep/offensive-docker.git
cd offensive-docker
docker build -t offensive-docker .
docker run --rm -it --name my-offensive-docker offensive-docker /bin/zsh
Используйте образ с Docker Hub: aaaguirrep/offensive-docker
docker pull aaaguirrep/offensive-docker
docker run --rm -it --name my-offensive-docker aaaguirrep/offensive-docker /bin/zsh
Существуют различные сценарии использования образа, поэтому вы должны знать, как правильно запускать контейнер.
Использование контейнера для доступа к машинам HTB (Hack the Box) через VPN HTB.
docker run --rm -it --cap-add=NET_ADMIN --device=/dev/net/tun --sysctl net.ipv6.conf.all.disable_ipv6=0 --name my-offensive-docker aaaguirrep/offensive-docker /bin/zsh
Обмен информацией между локальной директорией и директорией контейнера, а также сохранение информации в локальной директории. Сохраняйте информацию в каталоге /offensive.
docker run --rm -it -v /path/to/local/directory:/offensive --name my-offensive-docker aaaguirrep/offensive-docker /bin/zsh
Экспорт внутренних служб контейнера (apache, squid) в локальное окружение.
docker run --rm -it --name my-offensive-docker -p 80:80 -p 3128:3128 aaaguirrep/offensive-docker /bin/zsh
Внутри контейнера запустите службы apache2 и squid с помощью алиасов.
apacheUp
squidUp
Монтирование директорий с помощью команды umount.
docker run --rm -it --privileged --name my-offensive-docker aaaguirrep/offensive-docker /bin/zsh
Инструменты загружаются в каталог /tools.
Вы можете настроить образ Docker с помощью следующих полезных конфигураций:
Для использования ключей доступа, токенов или API-ключей в Docker смотрите репозиторий Offensive Docker Custom
Для использования обоих вариантов необходимо использовать опцию -v для отображения локальной директории на директорию контейнера /offensive.
Добавьте следующую строку на этапе «Создание ярлыков» в Dockerfile, соберите новый образ и запустите новый контейнер с опцией -v.
RUN echo "alias vpnhtb=\"openvpn /offensive/path/to/ovpn/file\"" >> /root/.zshrc
Создайте новый Dockerfile с указанными шагами, соберите новый образ и запустите новый контейнер с опцией -v.
FROM aaaguirrep/offensive-docker
# Создание ярлыка и загрузка файла .ovpn с рабочей станции
RUN echo "alias vpnhtb=\"openvpn /offensive/path/to/ovpn/file\"" >> /root/.zshrc
При удалении контейнера вся информация теряется, включая историю команд. Следующая конфигурация позволяет сохранять историю команд в локальном окружении и загружать её при запуске нового контейнера. Таким образом, вы не потеряете историю команд при запуске нового контейнера.
Для использования обоих вариантов необходимо использовать опцию -v для отображения локальной директории на директорию контейнера /offensive.
Добавьте следующую строку на этапе «Создание ярлыков» в Dockerfile, соберите новый образ и запустите новый контейнер.
# Сохранение и загрузка истории команд в локальном окружении
RUN sed -i '1i export HISTFILE="/history/.zsh_history"' /root/.zshrc
Создайте новый Dockerfile с указанными шагами, соберите новый образ и запустите новый контейнер.
FROM aaaguirrep/offensive-docker
# Сохранение и загрузка истории команд в локальном окружении
RUN sed -i '1i export HISTFILE="/history/.zsh_history"' /root/.zshrc
Образ был протестирован в следующих средах:
Docker service for Mac
Docker version 19.03.13, build 4484c46d9d
Docker service for Linux instance on Google Cloud Platform
Docker version 19.03.6, build 369ce74a3c
Docker service for Linux droplet on Digital Ocean
Docker version 19.03.6, build 369ce74a3c
Не сохраняйте информацию в директориях контейнера, так как она будет потеряна после удаления контейнера. Сохраняйте информацию в локальном окружении, используя параметр -v при запуске контейнера. Например:
docker run --rm -it -v /path/to/local/directory:/offensive --name my-offensive-docker aaaguirrep/offensive-docker /bin/zsh
Приведённая выше команда указывает путь к локальной директории, сопоставленной с директорией контейнера /offensive. Сохраняйте всю информацию в каталоге /offensive.
Используйте hashcat и john the ripper в контролируемых средах, таких как CTF. Возможны проблемы.
Спасибо за ваши пожертвования, они всегда ценятся.
Пока я пью кофе, я проверяю больше инструментов для добавления в образ Docker.
Спасибо всем нашим участникам!
Руководство по внесению вклада
Copyright (c) 2020, Arsenio Aguirre