Integer overflow in ConnectBot SSH DER private-key parsing
Key facts
- Attack vector
- Local
- Privileges required
- None
- User interaction
- Active
- Attack complexity
- Low
- Attack requirements
- None
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-190 and the CVSS impact.
Summary
ConnectBot SSH Client Library before 0.3.1 accepts excessively long DER length octets in DerReader.readLength() and accumulates them into an Int (CWE-190). Primitive readers also allocate arrays without checking the declared size against the remaining input (CWE-789). An application or user that loads an attacker-provided private-key file can trigger integer wraparound, excessive allocation or an uncaught OutOfMemoryError. No confidentiality or integrity impact has been demonstrated.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| connectbot | cbssh | before 0.3.1 | 0.3.1 | Patch available | CNA |
| — | org.connectbot.sshlib:sshlib (Maven) | up to 0.3.0 | — | No fix listed | GHSA-vc8p-8pxg-rfwg |
- cbssh Vendorconnectbot Affected before 0.3.1 Fixed in 0.3.1 Patch available CNA
- org.connectbot.sshlib:sshlib (Maven) Vendor— Affected up to 0.3.0 Fixed in — No fix listed GHSA-vc8p-8pxg-rfwg
Remediation
Upgrade cbssh to version 0.3.1, which fixes this issue. The sources list no fixed version for org.connectbot.sshlib:sshlib.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA cbssh (connectbot) Fixed in 0.3.1
Vendor assessments
Timeline
- 2026-10-13 Threatist record created from CVE-2026-54697
- 2026-10-13 CISA SSVC decision points changed
- 2026-10-13 Priority changed: MEDIUM → LOW
- 2026-11-06 Affected versions changed · Red Hat
- 2026-11-06 CVSS score added · Red Hat
References
More connectbot vulnerabilities
- TI-2023-26623 The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6… CVSS 3.1MEDIUM 5.9
- TI-2026-71767 ConnectBot SSH library allows excessive memory allocation CVSS 4.0MEDIUM 6.9
Sources
- CVE-2026-54697 · CVE Program
- CVE-2026-54697 · NVD
- FIRST EPSS
- CVE-2026-54697 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences