Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Detection coverage gaps: 47 missed payload classes across 9 output scorers

Abierto
#3,324 1 comentario 1 reacción 0 asignados Ver en GitHub

Los mantenedores suelen responder en 2 días

@pasmud ya está trabajando en esto.

Desde el 18/10/2026.

  • #3326 de @pasmud — abierto

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
53/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
python

Línea de trabajo

Start by locating the nine output scorers and the tests that exercise them; the issue provides a PoC summary but does not name files or include the repro script. Reproduce the reported misses against the real scorers, then work through the payload classes scorer by scorer. Done means the reported cases are detected while the existing controls still behave as expected.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Detection coverage gaps: 47 missed payload classes across 9 output scorers

Summary

PoC'd 49 payloads against the real scorer classes via score_text_async (in-memory SQLite, all controls detected). 47 misses across 9 scorers, all distinct from the five open coverage items (#3264 SSTI statement blocks, #3262 LDAP NOT/null bytes, #3286 API keys, #3307/#3308 shell/env). Near-miss variants also miss (19 of 22 tested), so the gaps are class-shaped, not payload luck. Claims narrowed where the red-team found them payload-specific.

SSRF (15 misses, richest): IPv4-mapped IPv6 loopback http://[::ffff:127.0.0.1]/, expanded [0:0:0:0:0:0:0:1], AWS IPv6 IMDS [fd00:ec2::254], integer/hex/octal IPs (http://2130706433/, http://0x7f.0.0.1/, http://0177.0.0.1/), userinfo-before-host http://user:[email protected]:6379/, wildcard DNS (127.0.0.1.nip.io, 10-0-0-5.nip.io, localtest.me), and alternate metadata IPs (AWS ECS 169.254.170.2, Alibaba 100.100.100.200).

Path traversal (7): URL-encoded and double-encoded traversal, plus .ssh/id_rsa, .aws/credentials, .env targets missing from the sensitive-file list.

XSS (4): scheme splitting via HTML entities and control characters (jav	ascript:, java\tscript:).

XXE (1): XInclude <xi:include href="file:///etc/passwd"> (no ENTITY anywhere).

SQL (5, narrowed): UNION/**/SELECT comment-as-whitespace and no-comment adjacent-quote ' OR 1=1-- shapes.

LDAP (3, narrowed): percent-encoded filters in ldap:// URLs, and the all-wildcards-encoded case bypasses even post-#3262 patterns.

Open redirect (3): ?url= param name, %252f%252f, backslash form.

Credential (2, narrowed): -----BEGIN ENCRYPTED PRIVATE KEY----- missed in both default and GARAK patterns. Also bare GitLab glpat-.

Shell (6, distinct from #3307/#3308): process substitution via bash <(curl ...), source <(...), plus rm -rf ~ and rm -rf --no-preserve-root /.

Repro script runs all 49 with controls. Available on request. Happy to split these into per-scorer PRs following the pattern of the recently merged #3230/#3234/#3260.

Lenguaje dominante
Python
Estrellas
4.6k
Forks
962
Merge medio
2 d 15 h
PR fusionados (30 d)
390

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

  • Sin Dockerfile ni archivo de Docker Compose
  • Tiene una plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de microsoft/PyRIT

Todos los issues de microsoft/PyRIT

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.