🇰🇷 한글 설명
libcurl이 해시된 known_hosts 파일을 사용하는 libssh2와 함께 작동할 때, 관련 없는 초기 항목으로 인해 호스트 키 검증 오류가 발생할 수 있습니다. 이로 인해 실제로는 키 불일치(mismatch)가 발생했음에도 불구하고 CURLOPT_SSH_KEYFUNCTION 콜백에는 키가 누락(missing)된 것으로 잘못 보고될 수 있습니다.
💡 쉬운 설명
보안 연결을 확인할 때 서버의 신분증이 틀렸다고 알려줘야 하는데, 신분증이 아예 없다고 잘못 알려주는 오류입니다. 이로 인해 보안 검사를 제대로 수행하지 못할 위험이 있습니다.
🇺🇸 원문 (English)
When libcurl uses libssh2 with a hashed `known_hosts` file, an unrelated
initial entry can cause host key validation to report a key *mismatch* as a
*missing* key to the `CURLOPT_SSH_KEYFUNCTION` callback.
📍 영향받는 시스템
libcurl 및 libssh2를 사용하는 시스템 (해시된 known_hosts 파일 사용 시)
⚔️ 공격 벡터
공격자가 조작된 호스트 키를 사용하여 키 불일치를 유도함으로써 보안 검증 로직을 우회할 수 있음
🛡️ 대응 방법
libcurl 및 libssh2를 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
설치된 curl 버전과 시스템에 로드된 libssh2 라이브러리 존재 여부를 확인합니다.
curl --version && ldconfig -p | grep libssh2