CVE-2026-5917
EUVD-2026-5701111.08.2026, 22:17
libgit2 versions before 1.8.7 and 1.9.0 before 1.9.7 built with the libssh2 SSH backend (USE_SSH=libssh2) contain a shell command injection vulnerability that allows remote attackers to execute arbitrary commands on an SSH server by supplying a repository path containing unescaped shell metacharacters such as single quotes, semicolons, or pipes. The gen_proto() function in ssh_libssh2.c inserts the repository path directly into a shell command string without escaping special characters before passing it to libssh2_channel_exec(), enabling an attacker to craft a malicious submodule URL in a .gitmodules file that, when processed during a recursive clone, causes the remote server's shell to interpret injected commands under the victim's SSH user account.
Early Detection
Affected products identified ahead of NVD analysis through intelligence sources.
| Vendor | Product | Version | Source |
|---|---|---|---|
| libgit2 | libgit2 | 𝑥 < 1.8.7 | CNA |
| libgit2 | libgit2 | 1.9.0 ≤ 𝑥 < 1.9.7 | CNA |
Debian Releases
Ubuntu Releases
Ubuntu Product | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| libgit2 |
|
Amazon Linux Releases
Amazon Package | |||
|---|---|---|---|
| cargo-c |
| ||
| cargo-c-debuginfo |
| ||
| libgit2 |
| ||
| libgit2-debuginfo |
| ||
| libgit2-debugsource |
| ||
| libgit2-devel |
| ||
| rust-cargo-c-debugsource |
|