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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-67598 — CVE-2026-67598 — Emlog Pro: AI 어시스턴트에서 비활성화된 TLS 인증서 검증(MITM → API 키 탈취). CWE-295, CVSS 9.1. @IlhomjonR이(가) 보고함. | Kitploit
도구/GitHubGitHub/ilhomjonr/cve-2026-67598
Vulnerability AnalysisCode AnalysisWeb SecurityLearning & EducationAPI SecurityAI Security
GitHubilhomjonr/cve-2026-67598

CVE-2026-67598

CVE-2026-67598 — Emlog Pro: AI 어시스턴트에서 비활성화된 TLS 인증서 검증(MITM → API 키 탈취). CWE-295, CVSS 9.1. @IlhomjonR이(가) 보고함.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-67598

Emlog Pro — AI 어시스턴트의 TLS 인증서 검증 비활성화

네트워크 인접 MITM → LLM 공급자 API 키 탈취 및 AI 응답 주입

CVE CVSS 4.0 CVSS 3.1 CWE

Product CNA Status Published Researcher

요약 · 공격 흐름 · 영향받는 코드 · 증명 · 수정 방법 · 타임라인 · 참고 자료


📋 한눈에 보기

CVE IDCVE-2026-67598
제품emlog/emlog — Emlog Pro
영향 범위Emlog Pro 2.6.23까지
취약점 유형CWE-295: 부적절한 인증서 검증
CVSS v4.09.1 — 치명적(Critical)
CVSS v3.17.4 — 높음(High)
공격 벡터네트워크 인접 · 권한 불필요 · MITM
CNAVulnCheck · GHSA-hf85-99vj-m4c5
예약 / 공개2026-07-29 / 2026-08-03
연구자Ilhomjon Rustamov (@IlhomjonR)

🔎 요약

Emlog Pro에는 관리자용 AI 어시스턴트(admin/ai.php + include/service/ai.php)가 포함되어 있으며, 구성된 LLM 공급자에게 아웃바운드 HTTPS 호출(채팅, 스트리밍, 이미지 생성)을 수행합니다 — 그리고 @em-help 명령을 위한 Bing 스크래핑 헬퍼도 포함합니다.

모든 아웃바운드 요청 헬퍼는 조건 없이 TLS 인증서 검증을 비활성화합니다:

root@kitploit:~
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);

검증은 구성된 공급자 URL이나 네트워크 경로와 관계없이 꺼져 있으므로, Emlog 서버와 api_url 사이에 위치한 네트워크 인접 / 중간자(MITM) 공격자는 위조된 인증서로 TLS 세션을 투명하게 가로챌 수 있으며:

  • 🔑 Authorization: Bearer <apiKey> 헤더 탈취 — 사이트가 비용을 지불하는 LLM 공급자의 API 키.
  • 💉 악성 AI 응답을 어시스턴트에 주입 — query_database 및 update_config 도구 접근 권한을 보유한 LLM을 구동합니다.

이는 순수한 전송 보안 결함이며, AI 도구 호출 확인 UI 뒤에 숨겨진 것이 아닙니다.


🧭 공격 흐름

root@kitploit:~
flowchart LR
    A["🖥️ Emlog server<br/>AI assistant"] -->|"HTTPS request<br/>Bearer &lt;apiKey&gt;"| M{"😈 MITM attacker<br/>(forged cert)"}
    M -->|"TLS verify DISABLED<br/>→ accepted"| P["☁️ LLM provider"]
    M -.->|"🔑 reads API key"| X["Key exfiltrated"]
    M -.->|"💉 forged response"| A
    A -->|"acts on injected<br/>AI output"| T["⚙️ query_database /<br/>update_config tools"]

    classDef bad fill:#7f1d1d,stroke:#ef4444,color:#fff;
    classDef ok  fill:#1e3a8a,stroke:#3b82f6,color:#fff;
    class M,X bad;
    class A,P,T ok;

💥 영향

  • API 키 노출 — 사이트의 유료 LLM 공급자 키 탈취 및 금전적 오용.
  • 응답 주입 — 공격자가 제어하는 콘텐츠가 AI 어시스턴트의 스트림에 유입됩니다.
  • 낮은 공격 진입 장벽 — 네트워크 인접 위치(공유 호스팅, 악의적인 Wi-Fi, 침해된 라우터, 악성 이그레스 프록시)면 충분하며, Emlog 설치에 대한 자격 증명은 필요하지 않습니다.

📂 영향받는 코드

include/service/ai.php — CURLOPT_SSL_VERIFYPEER / CURLOPT_SSL_VERIFYHOST 호출 위치:

함수용도
send()LLM 채팅 요청
sendStream()스트리밍 채팅 응답
sendImageRequest()AI 이미지 생성
fetchSearchHtml()@em-help용 Bing 스크래핑

🧪 증명 / 검증

root@kitploit:~
# 1. Configure the AI assistant with any OpenAI-compatible provider URL + API key.
# 2. Put a MITM proxy with an UNTRUSTED CA between Emlog and the provider:
mitmproxy --mode reverse:https://api.provider.example -p 8443

# 3. Trigger any AI chat / image-gen / @em-help request from the admin panel.
# 4. Result: request succeeds despite the untrusted cert, and the
#    "Authorization: Bearer ..." header is readable in the proxy log
#    → certificate validation is confirmed disabled.
📸 테스트된 인스턴스 (스크린샷)

감사 대상 Emlog Pro 2.6.23 인스턴스의 스크린샷은 screenshots/에 있습니다 — 홈페이지 및 관리자 로그인.


🛠️ 수정 방법

include/service/ai.php의 모든 아웃바운드 호출에서 TLS 검증을 활성화하세요:

root@kitploit:~
- curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
- curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
+ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
+ curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);

사설 CA를 사용하는 자체 호스팅 / OpenAI 호환 엔드포인트는 사용자 지정 CA 번들(CURLOPT_CAINFO)로 지원해야 합니다 — 절대 전체적으로 검증을 비활성화하는 방식으로는 안 됩니다.


🔗 관련 참고 사항 (동일 기능, 별도 하드닝)

동일한 AI 기능을 감사하던 중, Ai::queryDatabase()가 blog 테이블에 대한 직접 SQL 쓰기는 특별히 차단하지만 role / password를 보유한 user 테이블은 차단하지 않는 것으로 확인되었습니다. @em-help를 통한 간접 프롬프트 주입 경로(실시간 Bing 결과 + 스크래핑된 FAQ가 query_database / update_config 도구 접근 권한을 가진 모델에 전달됨)와 결합하면, write_article이 블로그 게시물을 처리하는 방식처럼 user / options 쓰기를 범위가 좁은 도구로 라우팅하는 하드닝이 필요합니다. 전체 내용은 **REPORT.md**에 있습니다(위 CVE와 별도로 추적됨).


🗓️ 타임라인

날짜이벤트
2026-07-24Emlog Pro 2.6.23(커밋 ff5637e) 감사 중 취약점 발견
2026-07-29VulnCheck를 통해 CVE 예약
2026-08-03CVE-2026-67598 공개

📚 참고 자료

  • 🆔 CVE 레코드 — https://www.cve.org/CVERecord?id=CVE-2026-67598
  • 🛡️ NVD — https://nvd.nist.gov/vuln/detail/CVE-2026-67598
  • 📢 GitHub Advisory — GHSA-hf85-99vj-m4c5
  • 📦 공급업체 — https://github.com/emlog/emlog
  • 📝 전체 보고서 — REPORT.md

조정된 공개(coordinated disclosure)의 일환으로 교육 및 방어적 보안 목적으로 게시됨.
발견 및 보고: Ilhomjon Rustamov (@IlhomjonR) · CNA: VulnCheck

도구 다운로드