Standardowa biblioteka asyncftpclient w języku Nim przed wersją 1.2.6 nie sprawdza, czy wiadomość zawiera znak nowej linii, co umożliwia atak typu CRLF injection. Podatność otrzymała krytyczny poziom CVSS 9.8 ze względu na możliwość zdalnego wykorzystania bez uwierzytelnienia.
▸ Pokaż oryginał (EN)
In Nim before 1.2.6, the standard library asyncftpclient lacks a check for whether a message contains a newline character.
Biblioteka asyncftpclient nie waliduje danych wejściowych pod kątem obecności znaków nowej linii (CR i LF). Brak tej kontroli pozwala atakującemu na wstrzyknięcie dodatkowych poleceń do komunikacji protokołu FTP poprzez spreparowane dane zawierające sekwencje CRLF. Jest to forma ataku command injection (CWE-74), w której znaki sterujące pozwalają na manipulację strumieniem poleceń przesyłanych do serwera FTP.
Atakujący może wstrzykiwać arbitralne polecenia FTP do sesji klienta, co potencjalnie prowadzi do nieautoryzowanego dostępu do danych, modyfikacji zawartości serwera oraz naruszenia poufności, integralności i dostępności systemu.
Należy zaktualizować język Nim do wersji 1.2.6 lub nowszej, w której wprowadzono odpowiednie sprawdzanie obecności znaków nowej linii w wiadomościach. Szczegóły zmian dostępne są w repozytorium projektu (porównanie wersji v1.2.4 z v1.2.6).
Język programowania Nim w wersjach przed 1.2.6 — konkretnie biblioteka standardowa asyncftpclient.
Dostępny jest publiczny proof-of-concept w repozytorium: https://github.com/tintinweb/pub/tree/master/pocs/cve-2020-15690. Podatność została opisana przez Consensys Diligence.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HNim Lang Nim
APPNim-Lang< 1.2.6
Powiązane podatności
Argument injection w bibliotece browsers w Nim 1.2.4 — wykonanie poleceń systemowych
Nimble is a package manager for the Nim programming language. In Nim release versions before versions 1.2.10 a...
Nimble is a package manager for the Nim programming language. In Nim release version before versions 1.2.10 an...
Nimble is a package manager for the Nim programming language. In Nim release versions before versions 1.2.10 a...
In Nim 1.2.4, the standard library httpClient fails to properly validate the server response. For example, htt...