Update upstream and remove incompatible payloads

This commit is contained in:
2026-10-01 12:24:20 +01:00
parent 0017ea8fd4
commit bb6b46969f
5 changed files with 25 additions and 24 deletions
+5
View File
@@ -71,6 +71,11 @@ sha256sum app/payloads/*
After reviewing the new binaries, update `payloads.sha256`, rebuild, test, and commit After reviewing the new binaries, update `payloads.sha256`, rebuild, test, and commit
both the submodule pointer and checksum changes together. both the submodule pointer and checksum changes together.
The currently pinned upstream snapshot includes only the kernel exploit payload and
the ELF loader. It no longer bundles etaHEN, KStuff, or ShadowMount+ because upstream
removed those compatibility-sensitive payloads. After the loader starts, send any
separately reviewed ELF to the PS5 on TCP port 9021 with an external payload sender.
## Container hardening ## Container hardening
The runtime image: The runtime image:
+1 -1
Submodule app updated: 09f10f5b58...dd8e4e0914
+7 -7
View File
@@ -1,6 +1,6 @@
# Maintainer and agent handoff # Maintainer and agent handoff
Last updated: 2026-09-29 Last updated: 2026-10-01
This file is the durable handoff for future sessions. Start work from this This file is the durable handoff for future sessions. Start work from this
repository rather than from the upstream Relapse Exploit checkout. repository rather than from the upstream Relapse Exploit checkout.
@@ -44,7 +44,7 @@ https://github.com/ntfargo/Relapse-Exploit.git
Pinned upstream commit: Pinned upstream commit:
```text ```text
09f10f5b58fab8a9ae9e8df214da37271290b13e dd8e4e0914c5e9d066ee1f9b056be76cb992c8e0
``` ```
Repository-local Git identity: Repository-local Git identity:
@@ -121,15 +121,17 @@ At the pinned upstream commit:
```text ```text
de5dd480d12637527ba2d75e35de851adbb59c455293fa32588c492ef6b44b81 payloads/elfldr-ps5-1360.elf de5dd480d12637527ba2d75e35de851adbb59c455293fa32588c492ef6b44b81 payloads/elfldr-ps5-1360.elf
26034dfbb88dd8be344fee1876c387bfcba0386edb079014e18ec25580368f6d payloads/etaHEN.elf
7cfb3a8cb86db67893c360ae3531f460f800e9f24039797038e6e81fc50f18a9 payloads/kexp_2026_05_25.bin 7cfb3a8cb86db67893c360ae3531f460f800e9f24039797038e6e81fc50f18a9 payloads/kexp_2026_05_25.bin
858880a8adbedaabfaced025384f4f6f908cfe44f1a049070ad8df911c22b972 payloads/kstuff.elf
0b30a1c23b83ebb2aa6523c8caaa5801ee89bde00e90cb36f392a29bb0bdb403 payloads/shadowmountplus.elf
``` ```
The payloads are precompiled, stripped binaries. Hash matching proves consistency The payloads are precompiled, stripped binaries. Hash matching proves consistency
with the reviewed snapshot; it does not prove that the binaries are safe. with the reviewed snapshot; it does not prove that the binaries are safe.
This upstream revision removed etaHEN, KStuff, and ShadowMount+ plus the `R2`
auto-loader because those optional payloads caused compatibility issues. The page
now stops after starting the ELF loader; any additional reviewed ELF must be sent
externally to the PS5 on TCP port 9021.
## PS5 and DNS state ## PS5 and DNS state
The local HTTP endpoint is available and verified at: The local HTTP endpoint is available and verified at:
@@ -204,8 +206,6 @@ Important upstream findings from the initial static review:
3. Some early kernel failures return a result that the UI can misreport as root and 3. Some early kernel failures return a result that the UI can misreport as root and
sandbox escape success. sandbox escape success.
4. The ELF loader on port 9021 is an arbitrary-payload interface by design. 4. The ELF loader on port 9021 is an arbitrary-payload interface by design.
5. ShadowMount+ includes an HTTP/JSON administration API; keep it on loopback or a
trusted LAN and never expose it publicly.
The wrapper's checksum and container hardening mitigate host-side packaging risks; The wrapper's checksum and container hardening mitigate host-side packaging risks;
they do not correct these upstream kernel or payload risks. they do not correct these upstream kernel or payload risks.
+12 -13
View File
@@ -35,7 +35,7 @@ cd /opt/relapse-exploit-docker
docker compose up -d --build docker compose up -d --build
``` ```
O build verifica o SHA-256 dos cinco payloads antes de criar a imagem. Se algum O build verifica o SHA-256 dos dois payloads antes de criar a imagem. Se algum
hash divergir, o build deve falhar em vez de incluir silenciosamente o binário. hash divergir, o build deve falhar em vez de incluir silenciosamente o binário.
Confirmar o serviço: Confirmar o serviço:
@@ -190,11 +190,11 @@ docker compose logs -f ps5-guide-gateway
elfldr is listening on port 9021 elfldr is listening on port 9021
``` ```
5. Apenas depois de o ELF loader estar pronto, carregar em `R2` para enviar: 5. Quando o ELF loader estiver pronto, o fluxo incluído termina. Esta versão já não
apresenta a opção `R2`: o upstream removeu etaHEN, KStuff e ShadowMount+ por
- `kstuff.elf`; questões de compatibilidade. Para executar outro ELF, rever o respetivo binário
- `shadowmountplus.elf`; e enviá-lo separadamente para o endereço da PS5 na porta TCP `9021`, usando um
- `etaHEN.elf`. payload sender externo.
O exploit pode precisar de várias tentativas. Se o browser bloquear ou ocorrer O exploit pode precisar de várias tentativas. Se o browser bloquear ou ocorrer
kernel panic, reiniciar completamente a consola antes de repetir. Não assumir que kernel panic, reiniciar completamente a consola antes de repetir. Não assumir que
@@ -206,11 +206,9 @@ uma mensagem genérica de conclusão prova que todas as etapas terminaram corret
- `53/UDP` e `53/TCP` no servidor: DNS local restritivo; - `53/UDP` e `53/TCP` no servidor: DNS local restritivo;
- `80/TCP` e `443/TCP` no servidor: gateway do Guia do Utilizador; - `80/TCP` e `443/TCP` no servidor: gateway do Guia do Utilizador;
- `9021/TCP` na PS5: ELF loader; - `9021/TCP` na PS5: ELF loader;
- `10101/TCP` na PS5: API HTTP do ShadowMount+, por defeito em loopback.
Manter os serviços de administração e carregamento de payloads limitados a loopback Manter o carregamento de payloads limitado à LAN confiável. Nunca publicar a porta
ou à LAN confiável. Nunca publicar estas portas na Internet. O ShadowMount+ suporta 9021 na Internet e não enviar um ELF que não tenha sido previamente revisto.
operações como mount, unmount, copy, move e uninstall.
## Operação no net-utils01 ## Operação no net-utils01
@@ -305,6 +303,7 @@ O container reduz a exposição do servidor: corre como UID/GID 65532, usa files
read-only, não tem capabilities Linux, aplica `no-new-privileges`, bloqueia listagens read-only, não tem capabilities Linux, aplica `no-new-privileges`, bloqueia listagens
e não inclui `.git`. e não inclui `.git`.
Estas proteções não tornam os payloads seguros. Os ELF incluídos são binários Estas proteções não tornam os payloads seguros. Os dois binários incluídos são
pré-compilados, executados depois de obter acesso privilegiado à consola. Manter a pré-compilados e executados no processo de obter acesso privilegiado à consola.
PS5 numa rede isolada, não usar a conta principal e conservar backups dos dados. Manter a PS5 numa rede isolada, não usar a conta principal e conservar backups dos
dados.
-3
View File
@@ -1,5 +1,2 @@
de5dd480d12637527ba2d75e35de851adbb59c455293fa32588c492ef6b44b81 payloads/elfldr-ps5-1360.elf de5dd480d12637527ba2d75e35de851adbb59c455293fa32588c492ef6b44b81 payloads/elfldr-ps5-1360.elf
26034dfbb88dd8be344fee1876c387bfcba0386edb079014e18ec25580368f6d payloads/etaHEN.elf
7cfb3a8cb86db67893c360ae3531f460f800e9f24039797038e6e81fc50f18a9 payloads/kexp_2026_05_25.bin 7cfb3a8cb86db67893c360ae3531f460f800e9f24039797038e6e81fc50f18a9 payloads/kexp_2026_05_25.bin
858880a8adbedaabfaced025384f4f6f908cfe44f1a049070ad8df911c22b972 payloads/kstuff.elf
0b30a1c23b83ebb2aa6523c8caaa5801ee89bde00e90cb36f392a29bb0bdb403 payloads/shadowmountplus.elf