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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-72898 — CVE-2026-72898에 대한 PoC 익스플로잇으로, Metabase의 비밀번호 재설정 엔드포인트에서 발생하는 인증되지 않은 SQL 인젝션 취약점입니다. 관리자 세션을 위조하여 완전한 탈취를 수행하며, 승인된 테스트를 위한 단일 대상 및 대량 스캔 모드를 지원합니다. | Kitploit
도구/GitHubGitHub/4minx/cve-2026-72898
Vulnerability ScannersVulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration Testing
GitHub4minx/cve-2026-72898

CVE-2026-72898

CVE-2026-72898에 대한 PoC 익스플로잇으로, Metabase의 비밀번호 재설정 엔드포인트에서 발생하는 인증되지 않은 SQL 인젝션 취약점입니다. 관리자 세션을 위조하여 완전한 탈취를 수행하며, 승인된 테스트를 위한 단일 대상 및 대량 스캔 모드를 지원합니다.

저장소 보기
15일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-72898 PoC : Metabase 인증되지 않은 SQL 인젝션

Metabase 사전 인증 SQL 인젝션을 통한 관리자 계정 탈취

CVE-2026-72898에 대한 개념 증명(PoC)으로, Metabase의 비밀번호 재설정 엔드포인트에서 발생하는 치명적인 인증되지 않은 SQL 인젝션입니다. 이 PoC는 core_session 테이블에 위조된 관리자 세션 행을 삽입한 다음, 이를 사용하여 자격 증명 없이 완전한 관리자 세션을 검증합니다.

참고: 이 PoC는 허가된 보안 테스트 및 연구 목적으로만 사용하십시오. CVE-2026-72898은 CISA KEV(Known Exploited Vulnerabilities) 카탈로그에 등재되어 있으며 실제 환경에서 활발히 악용되고 있습니다. 시스템을 테스트하기 전에 모든 관련 법률을 준수하고 서면 승인을 받을 책임은 사용자에게 있습니다.


취약점 정보

  • CVE: CVE-2026-72898
  • 유형: CWE-89 SQL 명령에 사용되는 특수 요소의 부적절한 중화('SQL 인젝션')
  • CVSS 4.0: 10.0 (치명적)
  • 인증: 인증 불필요(사전 인증, 원격, 낮은 공격 복잡도)
  • CISA KEV: 2026-08-11 추가(활발한 악용 중)
  • 영향받는 버전 (Metabase):
    • x.58.0 ~ < x.58.24
    • x.59.0 ~ < x.59.21
    • x.60.0 ~ < x.60.17
    • x.61.0 ~ < x.61.11
    • x.62.0 ~ < x.62.9
    • x.63.0 ~ < x.63.5
  • 수정 버전: x.58.24, x.59.21, x.60.17, x.61.11, x.62.9, x.63.5

요구 사항

  • Python 3.8+ 및 requests 라이브러리
  • 대상: 영향을 받는, 인터넷에 노출된 Metabase 인스턴스

의존성 설치:

root@kitploit:~
pip install requests

사용 방법

단일 대상

root@kitploit:~
python cve-2026-72898_poc.py -t http://192.168.1.1:3000

대량 스캔

root@kitploit:~
python cve-2026-72898_poc.py -T targets.txt

옵션


출력 예시

root@kitploit:~
 CVE-2026-72898 | Metabase SQLi PoC
----------------------------------------

Target: http://192.168.1.1:3000
 [1] GET http://192.168.1.1:3000/ -> 200
 [2] POST /api/session/reset_password -> 400
      (expected: Invalid reset token, SQLi executed)
 [3] GET /api/user/current -> 200
[+] VULNERABLE
    session id : 242x6a6cx-5388-aaf8-bl5c-afi46ic02198
    key_hashed : 0f6005cbexf08948c08dd9272b439xfecwabxb4ntedd83bagb6337bx849b6xyi6
    admin email: [email protected]

2단계에서 Invalid reset token과 함께 400 응답이 반환되는 것은 정상입니다. 이는 SQLi 페이로드가 실행되었고 응답이 조기 종료되었음을 의미합니다. 3단계에서 /api/user/current가 200을 반환하면 위조된 세션이 유효함이 확인됩니다.

결과 상태: vulnerable | not_vulnerable | patched | root_not_200 | unknown | error


위조된 세션 사용하기

root@kitploit:~

Metabase는 `metabase.SESSION` 쿠키에서 세션을 읽으므로, 해당 쿠키를 추가하면 위조된 관리자로 웹 UI에 로그인할 수 있습니다:

**Google Chrome / Edge / Chromium**

1. PoC를 실행하고 출력된 `session id`를 복사합니다
2. `http://TARGET/`를 열고 `F12`(개발자 도구)를 누릅니다
3. **Application**(Edge: **Application**, Chrome: **Application**) &rarr; **Storage** &rarr; **Cookies** &rarr; 대상 호스트를 선택합니다
4. **+**(쿠키 추가) 버튼을 클릭하고 다음 항목을 입력합니다:
   - **이름**: `metabase.SESSION`
   - **값**: `<SESSION_ID>` (PoC가 출력한 값)
   - **도메인**: 대상 호스트/IP(예: `192.168.1.1` 또는 `.example.com`)
   - **경로**: `/`
   - 만료 시간을 먼 미래로 설정합니다(또는 "Session" 클릭)
5. **저장**을 클릭한 후 페이지를 새로고침합니다
6. 이제 슈퍼유저로 인증되었습니다 &mdash; 관리자 톱니바퀴 아이콘이 표시됩니다

**Firefox**

1. PoC를 실행하고 출력된 `session id`를 복사합니다
2. `F12`를 누르고 &rarr; **Storage** 탭 &rarr; **Cookies** &rarr; 대상 호스트를 선택합니다
3. 마우스 오른쪽 버튼 클릭 &rarr; **Add/Edit Cookie** 선택 후 다음을 추가합니다:
   - **이름**: `metabase.SESSION`
   - **값**: `<SESSION_ID>`
   - **경로**: `/`
   - **HttpOnly**: 체크 해제(JS가 설정)
   - **Secure**: 일반 HTTP에서는 체크 해제
4. 저장하고 페이지를 새로고침합니다

**대안: 쿠키 편집 확장 프로그램**

쿠키 편집 확장 프로그램(예: Cookie-Editor)을 사용하여 대상 도메인에 위조된 값을 가진 `metabase.SESSION` 쿠키를 추가한 다음 새로고침합니다.

**브라우저 콘솔에서**

```js
fetch('/api/user/current', { headers: { 'X-Metabase-Session': '<SESSION_ID>' } })
  .then(r => r.json()).then(console.log)

완화 조치

  • 패치된 버전(x.58.24 / x.59.21 / x.60.17 / x.61.11 / x.62.9 / x.63.5 이상)으로 업그레이드합니다
  • 즉시 업그레이드할 수 없는 경우 네트워크/WAF 계층에서 /api/session/reset_password를 차단합니다
  • 업그레이드 후: 모든 활성 세션을 해지하고, 연결된 데이터베이스의 자격 증명을 교체하며, 관리자 계정과 API 키에 예상치 못한 변경이 없는지 검토하고, Metabase 활동/쿼리 기록을 감사합니다

☕ 후원

이 프로젝트가 도움이 되었다면 개발을 후원해 주세요:

USDT (TRC-20)

TDCPYioWbZW4iyMCuHhJeFsUZJ88YqZWc1

USDT TRC-20 QR

ETH (ERC-20)

0xf6eA555f95ed5b356fF7a90E6461EbBF6ce105cE

Ethereum QR

참고 자료

  • Metabase 보안 권고 (GHSA-vwf4-m7j8-wcjf)
  • Metabase 보안 업데이트
  • CVE.org 기록 – CVE-2026-72898
  • NVD – CVE-2026-72898
  • CISA 알려진 악용 취약점 카탈로그
  • Horizon3.ai – Metabase SQL 인젝션
  • The Hacker News – 실제 환경에서 악용된 Metabase 제로데이
  • Nuclei 템플릿 – Metabase 인증되지 않은 SQL 인젝션
도구 다운로드
인자설명기본값
-t, --target단일 대상 URL-
-T, --targets대상 URL이 포함된 파일(줄당 하나)-
-o, --output결과 파일(탭으로 구분: target, result, status, session_id, admin_email)-
--timeout요청 제한 시간(초)15