swagger-api / swagger-api/swagger-codegen
[Javascript clients] Vulnerability in one of the dependencies.
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Mustache
- Estrellas
- 17.8k
- Forks
- 6k
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
Description
The HTTP client module superagent is vulnerable to ZIP bomb attacks. In a ZIP bomb attack, the HTTP server replies with a compressed response that becomes several magnitudes larger once uncompressed. If a client does not take special care when processing such responses, it may result in excessive CPU and/or memory consumption. An attacker might exploit such a weakness for a DoS attack. To exploit this the attacker must control the location (URL) that superagent makes a request to.
https://nvd.nist.gov/vuln/detail/CVE-2017-16129
Github is issuing a warning in generated clients, see for example:
https://github.com/bitcoind-rest/javascript-client
Swagger-codegen version
Current versions of:
Suggest a fix/enhancement
Update superagent or use fetch API or any other clients.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Empieza por los archivos package.json de samples/client/petstore/javascript-es6 y javascript-promise-es6, y luego sigue el uso de esas dependencias en los clientes JavaScript generados. Confirma la versión afectada de superagent y revisa las salidas de los clientes generados. Se considera completado cuando la dependencia vulnerable ya no está presente y los clientes siguen funcionando sin la advertencia indicada.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript
- Área
- security
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 30/100