Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/shinycolumn/cve-2025-46408
Android SecurityVulnerability AnalysisExploitationPenetration TestingMobile SecurityLearning & Education
GitHubshinycolumn/cve-2025-46408

CVE-2025-46408

EagleEyes Lite Android 애플리케이션의 부적절한 호스트명 검증

저장소 보기
21311개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-46408

EagleEyes Lite 안드로이드 애플리케이션의 부적절한 호스트명 검증

1. 개요


  • 이름: EagleEyes(Lite)
  • 버전: 2.0.0
  • 공급업체: AVTECH
  • CWE: CWE-297: 호스트 불일치 시 인증서의 부적절한 검증
  • CVSS: 9.8 치명적
  • 벡터 문자열: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

2. 요약

EagleEyes Lite (버전 2.0.0)은 HTTPS 통신 중 SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER를 사용하여 호스트명 검증을 비활성화합니다.
그 결과, 애플리케이션은 TLS 인증서의 CN(Common Name) 또는 SAN(Subject Alternative Name) 값에 관계없이 인증서를 수락하므로, 공격자는 유효하거나 자체 서명된 인증서로 합법적인 서버를 가장할 수 있습니다.
동일한 네트워크에 있는 공격자는 이 취약점을 악용하여 MITM 공격을 수행하고, 애플리케이션과 AVTECH 백엔드 서비스 간의 민감한 통신을 가로채거나 변조할 수 있습니다.

3. 상세 정보

디바이스가 Android 8.0 미만 버전에서 실행될 때, 즉 SDK_API_26이 false로 설정되면, 이 메서드는 GetHttpsUrlResponse()를 반환하지 않습니다.
대신 try 블록 내에서 취약한 로직을 실행합니다.

root@kitploit:~
public static String GetHttpsResponse(String str) {
    if (SDK_API_26) {
        return GetHttpsUrlResponse(str);
    }
    try {
        ...
        X509HostnameVerifier x509HostnameVerifier = SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER;
        SSLSocketFactory socketFactory = SSLSocketFactory.getSocketFactory();
        socketFactory.setHostnameVerifier(x509HostnameVerifier);
        ...
    }
    ...
}

여기서 SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER를 사용하면 적절한 호스트명 검증이 비활성화되어, 서버 인증서의 CN(Common Name) 또는 SAN(Subject Alternative Name)이 요청된 호스트명과 일치하지 않더라도 TLS 연결이 성공합니다.
그 결과, 공격자는 위조된 인증서로 합법적인 서버를 가장하여 MITM 공격을 시작하고 민감한 통신을 가로채거나 변조할 수 있습니다.

4. 개념 증명 (PoC)

Frida 후킹 스크립트 hook.js를 실행하여 SDK_API_26 값을 강제로 false로 설정해 하위 Android 버전을 에뮬레이션했습니다. 이를 통해 GetHttpsResponse() 메서드가 호출되는지 모니터링할 수 있었습니다.
그 결과, 실행 중 GetHttpsResponse()가 성공적으로 호출되었음을 확인했습니다.

PoC 매개변수의 민감한 정보에 대한 부적절한 암호화에 대해서는 CVE-2025-50110을 참조하십시오.

5. 권장 사항

애플리케이션은 SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER 사용을 제거하고 모든 HTTPS 연결에 대해 엄격한 호스트명 검증을 적용해야 합니다. 서버의 CN(Common Name) 또는 SAN(Subject Alternative Name) 필드는 요청된 호스트명과 일치하는지 HttpsURLConnection.getDefaultHostnameVerifier() 또는 이와 동등한 엄격한 검증기를 사용하여 검증해야 합니다.
또한, 이전 Android 버전에서 호스트명 검사를 비활성화하는 레거시 대체 로직은 제거되거나 안전한 구현으로 대체되어 일관된 TLS 검증을 보장해야 합니다.

6. 참조

  • https://www.cve.org/CVERecord?id=CVE-2025-46408
  • https://nvd.nist.gov/vuln/detail/CVE-2025-46408
  • https://github.com/shinyColumn/CVE-2025-50110
  • https://github.com/shinyColumn/CVE-2025-50944
도구 다운로드