dectalk-tts is a Node package to interact with the aeiou Dectalk web API. In `dectalk-tts@1.0.0`, network requests to the third-party API…
GitHub_M·CWE-300·Published 2024-04-04
dectalk-tts is a Node package to interact with the aeiou Dectalk web API. In `dectalk-tts@1.0.0`, network requests to the third-party API are sent over HTTP, which is unencrypted. Unencrypted traffic can be easily intercepted and modified by attackers. Anyone who uses the package could be the victim of a man-in-the-middle (MITM) attack. The network request was upgraded to HTTPS in version `1.0.1`. There are no workarounds, but some precautions include not sending any sensitive information and carefully verifying the API response before saving it.
dectalk-tts is a Node package to interact with the aeiou Dectalk web API. In `dectalk-tts@1.0.0`, network requests to the third-party API are sent over HTTP, which is unencrypted. Unencrypted traffic can be easily intercepted and modified by attackers. Anyone who uses the package could be the victim of a man-in-the-middle (MITM) attack. The network request was upgraded to HTTPS in version `1.0.1`. There are no workarounds, but some precautions include not sending any sensitive information and carefully verifying the API response before saving it.
### Impact In `dectalk-tts@1.0.0`, network requests to the third-party API are sent over HTTP, which is unencrypted. Unencrypted traffic can be easily intercepted and modified by attackers. Anyone who uses the package could be the victim of a [man-in-the-middle (MITM)](https://en.wikipedia.org/wiki/Man-in-the-middle_attack) attack. <ins>Theft</ins> Because `dectalk-tts` is a text-to-speech package, user requests are expected to only contain natural language. The package [README](https://github.com/JstnMcBrd/dectalk-tts/blob/main/README.md) warns that user input is sent to a third-party API, so users should not send sensitive information regardless. But if users ignore the warnings and send sensitive information anyway, that information could be stolen by attackers. <ins>Modification</ins> Attackers could manipulate requests to the API. However, the worst a modified request could do is return an incorrect audio file or bad request rejection. Attackers could also manipulate responses from the API, returning malicious output to the user. Output is expected to be a wav-encoded buffer, which users will likely save to a file. This could be a dangerous entrypoint to the user's filesystem. ### Patches The network request was upgraded to HTTPS in version `1.0.1`. No other changes were made, so updating is risk-free. ### Workarounds There are no workarounds, but here are some precautions: - Do not send any sensitive information. - Carefully verify the API response before saving it. ### References [Vulnerable code](https://github.com/JstnMcBrd/dectalk-tts/blob/b3e92156cbb699218ac9b9c7d8979abd0e635767/src/index.ts#L18) [Original report](https://github.com/JstnMcBrd/dectalk-tts/issues/3) [Patch pull request](https://github.com/JstnMcBrd/dectalk-tts/pull/4)
### Impact In `dectalk-tts@1.0.0`, network requests to the third-party API are sent over HTTP, which is unencrypted. Unencrypted traffic can be easily intercepted and modified by attackers. Anyone who uses the package could be the victim of a [man-in-the-middle (MITM)](https://en.wikipedia.org/wiki/Man-in-the-middle_attack) attack. <ins>Theft</ins> Because `dectalk-tts` is a text-to-speech package, user requests are expected to only contain natural language. The package [README](https://github.com/JstnMcBrd/dectalk-tts/blob/main/README.md) warns that user input is sent to a third-party API, so users should not send sensitive information regardless. But if users ignore the warnings and send sensitive information anyway, that information could be stolen by attackers. <ins>Modification</ins> Attackers could manipulate requests to the API. However, the worst a modified request could do is return an incorrect audio file or bad request rejection. Attackers could also manipulate responses from the API, returning malicious output to the user. Output is expected to be a wav-encoded buffer, which users will likely save to a file. This could be a dangerous entrypoint to the user's filesystem. ### Patches The network request was upgraded to HTTPS in version `1.0.1`. No other changes were made, so updating is risk-free. ### Workarounds There are no workarounds, but here are some precautions: - Do not send any sensitive information. - Carefully verify the API response before saving it. ### References [Vulnerable code](https://github.com/JstnMcBrd/dectalk-tts/blob/b3e92156cbb699218ac9b9c7d8979abd0e635767/src/index.ts#L18) [Original report](https://github.com/JstnMcBrd/dectalk-tts/issues/3) [Patch pull request](https://github.com/JstnMcBrd/dectalk-tts/pull/4)
dectalk-tts es un paquete de Nodo para interactuar con la API web aeiou Dectalk. En `dectalk-tts@1.0.0`, las solicitudes de red a la API de terceros se envían a través de HTTP, que no está cifrado. Los atacantes pueden interceptar y modificar fácilmente el tráfico no cifrado. Cualquiera que utilice el paquete podría ser víctima de un ataque de intermediario (MITM). La solicitud de red se actualizó a HTTPS en la versión "1.0.1". No existen workarounds, pero algunas precauciones incluyen no enviar información confidencial y verificar cuidadosamente la respuesta de la API antes de guardarla.
| Version | Type | Source | Base | Exp | Impact | Vector |
|---|---|---|---|---|---|---|
| 3.1 | Primary | cve.org | 8.2 | — | — | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N |
| 3.1 | Primary | cve.org | 8.2 | — | — | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N |
| 3.1 | Secondary | GHSA | 8.2 | — | — | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N |
| 3.1 | Secondary | NVD | 8.2 | 3.9 | 4.2 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N |