🇰🇷 한글 설명
Apache Commons HttpClient 3.x에서 X.509 인증서의 Subject Common Name(CN) 또는 subjectAltName 필드가 접속 대상 서버 호스트명과 일치하는지 검증하지 않습니다. 공격자가 유효한 인증서를 소유하고 있으면 네트워크 중간에서 통신을 가로채 자신의 인증서로 SSL 서버를 위장할 수 있어 중간자 공격이 가능합니다. Amazon Flexible Payments Service 및 기타 Java SDK가 영향을 받습니다.
💡 쉬운 설명
HTTPS 연결 시 서버가 진짜 서버인지 확인하는 검증이 없어서, 공격자가 네트워크를 통해 가짜 서버로 속일 수 있습니다. 공격자의 유효한 인증서만 있으면 당신의 통신을 가로채고 읽을 수 있다는 뜻입니다.
🇺🇸 원문 (English)
Apache Commons HttpClient 3.x, as used in Amazon Flexible Payments Service (FPS) merchant Java SDK and other products, does not verify that the server hostname matches a domain name in the subject's Common Name (CN) or subjectAltName field of the X.509 certificate, which allows man-in-the-middle attackers to spoof SSL servers via an arbitrary valid certificate.
📍 영향받는 시스템
Apache Commons HttpClient 3.x 및 이를 사용하는 Amazon FPS merchant Java SDK 등 모든 제품
⚔️ 공격 벡터
네트워크 중간자(MITM) 위치에서 통신 가로채기 후 유효한 X.509 인증서 제시로 서버 위장
🛡️ 대응 방법
Commons HttpClient 4.x 이상으로 업그레이드하거나 hostname 검증 패치 적용
🔧 검증 코드
JAR 파일명의 버전 번호가 3.x면 취약점 존재, 4.x 이상이면 안전
find / -name 'commons-httpclient*.jar' 2>/dev/null | xargs -I {} sh -c 'basename {} | grep -oE "[0-9]+\.[0-9]+"'