lambdaclass / lambdaclass/lambda_compiler_kit

JSON parser DoS prevention

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

Nadie ha tomado este issue todavía.

Lenguaje dominante
Lean
Estrellas
2
Forks
1
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

As reported by Claude review, our current JSON parser does not prevent large exponents from exhausting our memory.
The solution proposed by Claude, however, is inflexible: cap the exponent.
For most regular uses that would be OK. For schema validation, though, that might be too restrictive.
Instead, I suggest we just keep the exponent as a separate field for JSON numbers.
The trade off:

  • We get arbitrarily large numbers with efficient-ish representation
  • We allow users to define schemas with arbitrary numbers
  • We need to implement basic operations and might need some float-like behavior in places

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

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.

Línea de trabajo

El issue no menciona archivos, pruebas ni puntos de entrada. Empieza por localizar el analizador JSON y su representación de números; después, determina el alcance de conservar los exponentes y las operaciones básicas necesarias; se considerará terminado cuando los exponentes grandes ya no provoquen agotamiento de memoria y la validación del esquema siga aceptando números arbitrarios.

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

Evaluación

Stack tecnológico
json
Área
compilers, security
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.