CVE-2026-54697
ŚrednieCVSS 6.7Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 2 - wyżej niż 2% wszystkich znanych CVE
Streszczenie
W ConnectBot SSH Client Library przed wersją 0.3.1 funkcja DerReader.readLength() akceptuje nadmiernie długie oktety długości DER, akumuluje je w typie Int, a czytniki prymitywów alokują tablice bez sprawdzenia zadeklarowanego rozmiaru względem pozostałych danych. Załadowanie dostarczonego przez atakującego pliku klucza prywatnego przez SshClient.authenticatePublicKey(), SshKeys.decodePemPrivateKey(), SshSigning.sign() lub SshSigning.getPublicKey() może wywołać przepełnienie licznika, nadmierną alokację lub nieobsłużony OutOfMemoryError.
Ocena ryzyka
Może dojść do awarii aplikacji (odmowa usługi) przy ładowaniu złośliwego pliku klucza prywatnego; nie wykazano wpływu na poufność ani integralność.
Rekomendacja
Zaktualizuj ConnectBot SSH Client Library do wersji 0.3.1 lub nowszej i unikaj ładowania kluczy prywatnych z niezaufanych źródeł.
Inne podatności w ConnectBot SSH Client Library
Oryginalny opis (angielski, źródło NVD)
ConnectBot SSH Client Library is written in Kotlin with Kaitai Struct and KStateMachine. Prior to 0.3.1, DerReader.readLength() accepts excessive long-form DER length octets, accumulates them into an Int, and primitive readers allocate arrays without checking the declared size against the remaining input. An application or user that loads an attacker-provided private-key file through SshClient.authenticatePublicKey(), SshKeys.decodePemPrivateKey(), SshSigning.sign(), or SshSigning.getPublicKey() can trigger integer wraparound, excessive allocation, or an uncaught OutOfMemoryError. SSH server host keys and agent-forwarding messages do not use this application-supplied private-key input path. No usable weakened key and no confidentiality or integrity impact have been demonstrated. This issue is fixed in version 0.3.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

