phpupscan: verificador de exposicao as CVEs de memoria do PHP

Ferramenta em portugues para avaliar hosts frente as CVE-2026-109618
(RCE via corrupcao por OOM) e CVE-2026-109619 (RCE via estado global
obsoleto), publicadas pelo projeto PHP em 21/10/2026.

Conteudo:
- varredura: fingerprint de versao e SAPI, exposicao de phpinfo e
  veredito por alvo, com saida texto/JSON
- sondas ativas controladas: "leve" reproduz o OOM pre-RINIT do bundle
  oficial de reproducao; "forte" usa chunked para verificar o patch por
  comportamento (o parser corrigido corta a leitura em post_max_size).
  Cada sonda vem com um corpo de controle para atribuir o OOM ao
  caminho de progresso de upload de sessao
- config: auditoria de php.ini, .user.ini, .htaccess e pool FPM contra
  as recomendacoes do aviso oficial do PHP
- info: referencia rapida das CVEs, versoes corrigidas e mitigacoes
- laboratorio: sobe containers (8.2.34 vulneravel, 8.2.35 corrigido,
  controle com upload_progress desligado e par nginx+php-fpm) e valida o
  verificador com recibos PASS/FAIL

As versoes corrigidas vem do advisory oficial (8.2.35, 8.3.36, 8.4.27,
8.5.12) e nao do post de referencia, que lista as versoes anteriores.

A ferramenta mede exposicao: nao inclui a forja de ponteiros nem a
chamada a system() do bundle de reproducao.

Testes: 46 testes unitarios (unittest, sem dependencias).
This commit is contained in:
lgcosta committed 2026-10-22 19:44:46 -03:00
commit 6370227ad1
19 files changed
+3644

No files matched your search

+29
View File
@@ -0,0 +1,29 @@
# Byte-compiled / cache
__pycache__/
*.py[cod]
*$py.class
# Distribuicao / build
build/
dist/
*.egg-info/
.eggs/
# Ambientes
.venv/
venv/
# Testes e cobertura
.pytest_cache/
.coverage
htmlcov/
# Relatorios gerados
*.json
!phpupscan/**/*.json
# Editores e SO
.idea/
.vscode/
*.swp
.DS_Store