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

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

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

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

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

Категории

Все категории
Loading categories
PwnAdventure3 — PwnAdventure3 Сервер | Kitploit
Инструменты/GitHubGitHub/liveoverflow/pwnadventure3
Обратная инженерияЭксплуатация веб-приложенийСетевая безопасностьCTFТестирование на ПроникновениеОбучение и ОбразованиеЭксплуатация Бинарных ФайловЛаборатории и Практика
GitHubliveoverflow/pwnadventure3

PwnAdventure3

PwnAdventure3 Сервер

Репозиторий
6841317 лет назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

PwnAdventure3

PwnAdventure3

Добро пожаловать на Остров Пони!

Pwn Adventure 3: Pwnie Island — это ограниченный релиз, шутер от первого лица, настоящая открытая MMORPG, действие которой происходит на прекрасном острове, где может случиться всё что угодно. Потому что эта игра намеренно уязвима для всевозможных глупых взломов! Полет, бесконечные деньги и многое другое — всего в одном клиентском изменении или сетевом прокси. Готовы к хаосу?!

  • Официальный сайт: http://www.pwnadventure.com/

Серия на YouTube

Эта настройка является частью видеосерии, охватывающей различные взломы и задачи в этой игре.

  • Let's Play/Hack - Pwn Adventure 3: Pwnie Island - часть 1 [39:20]
  • Настройка приватного сервера с Docker - Pwn Adventure 3: часть 2 [8:42]
  • Сбор информации / Разведка - Pwn Adventure 3: часть 3 [14:09]
  • Восстановление классов игры с помощью gdb - Pwn Adventure 3: часть 4 [11:28]
  • Хукинг в Linux с LD_PRELOAD - Pwn Adventure 3: часть 5 [12:07]
  • Полет и наш первый флаг! (Cow King) - Pwn Adventure 3: часть 6 [6:34]
  • Телепортация и зависание (Unbearable Revenge) - Pwn Adventure 3: часть 7 [9:31]
  • Найдите спрятанные золотые яйца - Pwn Adventure 3: часть 8 [10:26]
  • Разработка TCP-прокси - Pwn Adventure 3: часть 9 [12:26]
  • Анализ сетевого протокола игры - Pwn Adventure 3: часть 10 [14:48]
  • Реализация автолута через прокси - Pwn Adventure 3: часть 11 [12:33]
  • Эксплуатация целочисленного переполнения (Fire and Ice) - Pwn Adventure 3: часть 12 [19:59]
  • †: Знаковые и беззнаковые целые числа - Целочисленные переполнения - Pwn Adventure 3: часть 12.5 [3:12]
  • Анализ логической головоломки Blocky - Pwn Adventure 3: часть 13 [10:51]
  • Провал в машинном обучении (Blocky часть 2) - Pwn Adventure 3: часть 14 [14:34]
  • Реверс-инжиниринг проверки ввода (Keygen часть 1) - Pwn Adventure 3: часть 15 [12:27]
  • Реверс-инжиниринг пользовательского кодирования (Keygen часть 2) - Pwn Adventure 3: часть 16 [16:01]
  • Понимание алгоритма проверки ключа (Keygen часть 3) - Pwn Adventure 3: часть 17 [13:10]
  • RSA, реализованный на ассемблере (Keygen часть 4) - Pwn Adventure 3: часть 18 [16:23]
  • RSA, реализованный на JavaScript (Keygen часть 5) - Pwn Adventure 3: часть 19 [4:32]
  • Последний флаг (Overachiever) - Pwn Adventure 3: часть 20 [5:31]

Не считая непринужденного Let's Play в начале, вся серия охватывает все задачи Pwn Adventure 3 менее чем за 4 часа.

Установка сервера

Требования

Из официального README:

  • Не менее 2 ГБ ОЗУ; больше ОЗУ позволит запускать больше экземпляров на одной машине

  • Игровой сервер не требует графического оборудования и работает исключительно в консоли. Известно, что он хорошо работает на Amazon AWS и VPS Digital Ocean.

  • Игровой сервер требует много ОЗУ для работы, но использует fork и copy-on-write память, чтобы запускать множество экземпляров на одном хосте.

  • Для сервера с 2 ГБ ОЗУ не рекомендуется запускать более 5 экземпляров, но сервер с 8 ГБ ОЗУ обычно может обрабатывать столько, сколько выдержит ЦП.

  • Рекомендуется использовать 2-3 экземпляра на ядро ЦП, если у вас достаточно ОЗУ. Вы можете запускать 4-5 экземпляров на ядро, но это может вызвать небольшие лаги.

  • Файлы для клиента и сервера также превышают 2 ГБ, поэтому требуется несколько ГБ свободного дискового пространства.

Есть несколько способов собрать и развернуть собственный сервер.

Вариант 1 - Оригинальный

Один вариант — скачать официальные файлы и следовать инструкциям из README. Скачать можно с официального сайта здесь http://www.pwnadventure.com/#server.

Вариант 2 - Руководство

@Beaujeant создал отличное и простое пошаговое руководство. Оно также послужило основой для создания Docker-образа из Варианта 3. Руководство можно найти здесь: https://github.com/beaujeant/PwnAdventure3/blob/master/INSTALL-server.md.

Вариант 3 - Docker

Этот вариант очень прост, при условии, что на хосте установлены docker и docker-compose. Это позволяет легко запускать и останавливать сервер, не внося изменений в основную систему.

Сначала соберите все необходимые файлы:

root@kitploit:~
git clone https://github.com/LiveOverflow/PwnAdventure3.git
cd PwnAdventure3
wget http://pwnadventure.com/pwn3.tar.gz
tar -xvf pwn3.tar.gz

Для запуска сервера необходимо установить docker и docker-compose. Docker быстро развивается, поэтому рекомендуется следовать текущим официальным инструкциям по установке (которые могут также включать удаление старой системной версии docker):

  • Docker CE для Ubuntu: https://docs.docker.com/install/linux/docker-ce/ubuntu/.
  • docker-compose: https://docs.docker.com/compose/install/
  • убедитесь, что текущий пользователь входит в группу docker: sudo usermod -a -G docker $USER. Перезагрузитесь или выйдите и войдите заново, проверьте с помощью id, что пользователь в группе docker.

Затем просто соберите образ и запустите мастер-сервер и игровой сервер:

root@kitploit:~
docker-compose build
docker-compose up

docker-compose up также можно запустить в фоновом режиме с помощью -d.

Установка клиента

Сначала загрузите клиент с официального сайта: http://www.pwnadventure.com/#downloads

Чтобы подключить клиент к новому серверу, необходимо изменить server.ini для клиента. Сервер, запущенный через Docker, ожидает, что используются hostname master.pwn3 и game.pwn3 (Теоретически их можно изменить в docker/файлах настройки).

server.ini для клиента должен выглядеть примерно так:

root@kitploit:~
[MasterServer]
Hostname=master.pwn3
Port=3333

[GameServer]
Hostname=game.pwn3
Port=3000
Username=
Password=
Instances=

Убедитесь, что клиент может достичь этих хостов, например, добавив их в файл /etc/hosts. В этом примере сервер работает на 192.168.178.57, и запись для них будет:

root@kitploit:~
192.168.178.57  master.pwn3
192.168.178.57  game.pwn3

Предупреждение: Использование IP-адреса в качестве Hostname в server.ini не работает! Я потратил 2 часа, пытаясь понять, что не так.

Чтобы остановить сервер, просто введите docker-compose down.

Предупреждение: Файл базы данных не сохраняется — остановка контейнера сбрасывает всё. Поэтому сначала сделайте резервную копию.

Устранение неполадок

Ошибка: docker-compose build

root@kitploit:~
$ docker-compose build
Building init
ERROR: Error processing tar file(exit status 1): write /client/PwnAdventure3_Data/PwnAdventure3/PwnAdventure3/Content/Paks/Characters.pak: no space left on device

О: Освободите больше дискового пространства.

root@kitploit:~
$ docker-compose build
Building init
ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?

О: Вероятно, ваш пользователь не входит в группу docker или служба docker не запущена. sudo usermod -a -G docker pwn3, проверьте с помощью id. Или service docker restart.

Целостность файлов

Проверьте, не поврежден ли архив

root@kitploit:~
$ md5sum pwn3.tar.gz
d3f296461fa57996018ce0e4e5a653ee  pwn3.tar.gz
$ sha1sum pwn3.tar.gz
022bd5174286fd78cd113bc6da6d37ae9af1ae8e  pwn3.tar.gz

Ошибки клиента PwnAdventure3

Ошибка подключения: Unable to connect to master server

Вероятно, это означает, что MasterServer недоступен.

  • Проблемы клиента:
    • Проверьте запись [MasterServer] в server.ini клиента.
    • Можете ли вы пропинговать master.pwn3 с вашей системы?
    • Правильный ли IP-адрес в файле /etc/hosts?
  • Проблемы сервера:
    • Сервер не запущен и не слушает порт 3333?
    • Проверьте с помощью sudo netstat -tulpn
      • Слушает ли мастер-сервер: tcp6 0 0 :::3333 :::* LISTEN 31913/docker-proxy
    • Проверьте docker ps, активны ли два контейнера
      • Мастер-сервер запущен? 880f93374070 pwn3server "/opt/pwn3/setup/mas…" 0.0.0.0:3333->3333/tcp, 5432/tcp pwnadventure3_master_1

Waiting in connection queue...

Это означает, что MasterServer доступен и теперь ожидает свободного GameServer, который можно предоставить клиенту. Вероятно, это означает, что ни один GameServer не запущен или не смог подключиться к MasterServer.

  • Проблемы сервера:
    • Запущен ли игровой сервер и слушает ли он порты 3000-3005?
    • Проверьте прослушивающие процессы с помощью sudo netstat -tulpn
      • tcp6 0 0 :::3000 :::* LISTEN 32160/docker-proxy
    • Запущен ли контейнер pwnadventure3_game_1? Проверьте с помощью docker ps -a
      • 84343f81034f pwn3server "/opt/pwn3/setup/gam…" 0.0.0.0:3000-3010->3000-3010/tcp, 5432/tcp pwnadventure3_game_1
    • Видите ли вы следующую строку в логе docker-compose up: line 1: 7 Killed ./PwnAdventure3Server; pwnadventure3_game_1 exited with code 137
      • ДОБАВЬТЕ БОЛЬШЕ ОЗУ!

Версии Docker

Эти версии использовались при тестировании на хосте:

root@kitploit:~
$ uname -a
Linux ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
$ docker-compose version
docker-compose version 1.19.0, build 9e633ef
docker-py version: 2.7.0
CPython version: 2.7.13
OpenSSL version: OpenSSL 1.0.1t  3 May 2016
$ docker --version
Docker version 17.12.1-ce, build 7390fc6

Благодарности

Настоящие герои — это люди, создавшие игру <3

Pwn Adventure 3 — это детище Rusty Wagner. Он отвечает за идею, планирование и почти всю реализацию (программирование, дизайн уровней, квесты и так далее). Без него игры бы не было! Особая благодарность также организаторам Ghost in the Shellcode за их поддержку во время разработки и тестирования.

От Vector35 - https://vector35.com/ (компания, стоящая за популярным дизассемблером Binary Ninja)

Скачать инструмент