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

Validate OAuth login redirects before using them in headers

Abierto
#124 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@AnKiT-GaRG2 ya está trabajando en esto.

Desde el 26/10/2026.

  • #143 de @AnKiT-GaRG2 — abierto

Evaluación

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

Línea de trabajo

Start at the OAuth entry point where quart.request.args.get("login") is prefix-validated, then trace the value through pending_states to the Refresh response header. Determine the framework-level validation needed before storage and confirm that safe redirects continue to work while CRLF, null bytes, and other header-injection characters are rejected.

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

Descripción

bug priority

The login_uri query parameter is validated to start with / and not //, but is not checked for CRLF sequences, null bytes, or other header-injection characters before being stored in pending_states and later interpolated into the Refresh HTTP response header. While the ASGI server (Hypercorn) sanitizes header values as a secondary defense, the framework itself does not validate this value for the specific context in which it is used (an HTTP header).

Data flow: quart.request.args.get("login") → prefix validation (only) → stored in pending_states → interpolated into Refresh header → response

Attacker capability required: Remote unauthenticated user (can initiate an OAuth login flow with a crafted login parameter).

Impact on success: In the default deployment, Hypercorn rejects CRLF in header values, so no actual header injection occurs. This is a defense-in-depth gap: if the ASGI server were changed or misconfigured, the unsanitized value could enable HTTP response splitting.

Lenguaje dominante
Python
Estrellas
7
Forks
14
Merge medio
11 h 58 min
PR fusionados (30 d)
1

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

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 apache/infrastructure-asfquart

Todos los issues de apache/infrastructure-asfquart

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.