POJIA破甲
地图 / ssh_config_matches is dead code: unauthorized SSH key reuse

ssh_config_matches is dead code: unauthorized SSH key reuse

身份认证 / Authentication Bypass by Primary Weakness / #3826843

厂商
curl
严重程度
低危
赏金
—
弱点
Authentication Bypass by Primary Weakness
研究员
@bigsize
披露日期
2026-06-30
资产
https://github.com/curl/curl
CVE
CVE-2022-27782CVE-2023-27538

该报告还没有中文解读。

原文摘录

摘自原文(6095 字符中的一小部分)
libcurl's SSH connection-reuse guard `ssh_config_matches()` — added for **CVE-2022-27782** and reaffirmed by **CVE-2023-27538** — is dead code in every release since 7.83.1. It compares `sshc->rsa` / `sshc->rsa_pub` between a new transfer ("needle") and a pooled connection, but on **both** sides …
原文中的代码
Step 1: keyA (authorized)   GET sftp://.../secret  -> OK      (leaves conn in pool)
Step 2: keyB (unauthorized) GET same, same pool    -> OK      <-- BUG: reuses keyA's session
Step 3: keyB (unauthorized) GET same, FRESH pool   -> DENIED  (control: keyB truly rejected)

默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 curl 所有。

时间线

  • 报告提交
  • 公开披露
阅读 HackerOne 原文 ↗作者 @bigsize · 版权归作者与 curl 所有

同类报告

Negotiate connection reuse with wrong credentials when using CURLAUTH_ANYcurl · 2026-04-29SSH/SFTP connection reuse can bypass SSH key identity after ssh_config_matches removalcurl · 2026-06-09lib/http2.c: SSL connections accept non-HTTP push schemes (incomplete fix for 2e8c922a)curl · 2026-04-16HackerOne Vulnerability Report: libcurl SSL/TLS Identity Leakage via Insecure Connection Reusecurl · 2026-03-31CVE-2026-5545: wrong reuse of HTTP Negotiate connectioncurl · 2026-04-29Incorrect Parsing of IPv6 Zone ID in curlcurl · 2025-09-01