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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2019-12102-Scanner — Kentico CMS의 CVE-2019-12102 인증되지 않은 파일 업로드 취약점 자동 스캐너. 도메인을 확인하고 해시 매개변수로 검증하며 잠재적 및 확인된 취약 대상을 출력합니다. | Kitploit
도구/GitHubGitHub/egi08/cve-2019-12102-scanner
Vulnerability ScannersExploitationWeb Application ExploitationInformation GatheringPenetration Testing
GitHubegi08/cve-2019-12102-scanner

CVE-2019-12102-Scanner

Kentico CMS의 CVE-2019-12102 인증되지 않은 파일 업로드 취약점 자동 스캐너. 도메인을 확인하고 해시 매개변수로 검증하며 잠재적 및 확인된 취약 대상을 출력합니다.

저장소 보기
51년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2019-12102 스캐너

CVE-2019-12102 스캐너는 Kentico CMS 버전 11~12에서 발생하는 인증되지 않은 파일 업로드 / 파일 노출 취약점을 스캔하는 자동화 도구입니다. 이 취약점은 /cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx 엔드포인트에 대한 부적절한 접근 제어로 인해 발생합니다. 이 도구는 해당 엔드포인트의 응답을 확인하여 도메인이 취약한지 여부를 판단하고, 잠재적 취약 및 확인된 취약 도메인을 별도의 파일로 저장합니다.


목차

  1. 취약점 설명
  2. 주요 기능
  3. 설치
  4. 사용 방법
  5. 샘플 출력
  6. 중요 사항
  7. 기여
  8. 라이선스

취약점 설명

CVE-2019-12102 취약점을 통해 공격자는 다음을 수행할 수 있습니다:

  • 인증 없이 파일을 업로드합니다.
  • 서버에 존재하는 파일을 탐색합니다.

hash 매개변수가 제대로 검증되지 않는 경우, 취약한 엔드포인트(/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx)에 인증 없이 접근할 수 있습니다. URL이 /CMSMessages/accessdenied.aspx?resstring=dialogs.missinghashtext&hash=로 리디렉션되면 해당 도메인은 취약한 것으로 간주됩니다.


주요 기능

  • 자동 스캔: 입력 파일에서 도메인 목록을 스캔합니다.
  • 이중 검증: 해시 매개변수를 추가하여 도메인이 실제로 취약한지 확인합니다.
  • 색상 구분 출력: 결과를 색상으로 표시하여 쉽게 식별할 수 있습니다(확인된 취약은 빨간색, 잠재적 취약은 노란색).
  • 별도 출력 파일: 잠재적 취약 및 확인된 취약 도메인을 별도의 파일로 저장합니다.
  • 안전한 저장: 스크립트가 중단되어도(예: Ctrl+C 누름) 결과를 저장합니다.

설치

사전 요구 사항

  • Python 3.x
  • Python 모듈: requests, colorama

설치 단계

  1. 이 저장소를 클론합니다:

    git clone https://github.com/Egi08/CVE-2019-12102-Scanner.git
    cd CVE-2019-12102-Scanner
    
  2. 의존성을 설치합니다:

    pip install -r requirements.txt 
    

    (requirements.txt 파일이 없으면 다음 내용으로 생성합니다):

    requests
    colorama
    
  3. 도메인 목록이 포함된 입력 파일(domains.txt)을 준비합니다. 한 줄에 하나의 도메인을 입력합니다. 예시:

    example.com
    another-example.com
    vulnerable-site.com
    

사용 방법

명령줄 인자

python cve_2019_12102_scanner.py -l <input_file> -p <potentially_output_file> -c <confirmed_output_file>

매개변수

  • -l, --list: 도메인 목록이 포함된 파일의 경로(필수)입니다.
  • -p, --potentially: 잠재적 취약 도메인에 대한 출력 파일(선택 사항, 기본값: potentially_vulnerable.txt)입니다.
  • -c, --confirmed: 확인된 취약 도메인에 대한 출력 파일(선택 사항, 기본값: confirmed_vulnerable.txt)입니다.

예시 명령어

python cve_2019_12102_scanner.py -l domains.txt -p potentially_vulnerable.txt -c confirmed_vulnerable.txt

샘플 출력

콘솔

[*] Starting vulnerability scanner for CVE-2019-12102...
[*] Checking: http://example.com
[-] Not Vulnerable: http://example.com/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx
[*] Checking: http://vulnerable-site.com
[+] Potentially Vulnerable: http://vulnerable-site.com/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx
[+] Confirmed Vulnerable: http://vulnerable-site.com/CMSMessages/accessdenied.aspx?resstring=dialogs.missinghashtext&hash=13b203251094c6c51e1f7974b22e84538003b9c23754bc7b24a19891e6d476bf

[+] Results saved:
    Potentially Vulnerable domains saved to potentially_vulnerable.txt
    Confirmed Vulnerable domains saved to confirmed_vulnerable.txt

출력 파일(potentially_vulnerable.txt)

http://vulnerable-site.com/cmsmodules/medialibrary/formcontrols/liveselectors/insertimageormedia/tabs_media.aspx

출력 파일(confirmed_vulnerable.txt)

http://vulnerable-site.com/CMSMessages/accessdenied.aspx?resstring=dialogs.missinghashtext&hash=13b203251094c6c51e1f7974b22e84538003b9c23754bc7b24a19891e6d476bf

중요 사항

  1. 윤리적 테스트:

    • 테스트 권한이 있는 도메인에서만 이 도구를 사용하세요.
    • 승인되지 않은 스캔은 법률을 위반할 수 있습니다.
  2. 타임아웃:

    • 도메인 응답이 느린 경우 requests.get 함수에서 타임아웃 값을 조정할 수 있습니다:
      response = requests.get(full_url, timeout=20)  # Timeout of 20 seconds
      
  3. 오류 처리:

    • 네트워크 오류가 발생하거나 도메인에 연결할 수 없는 경우 도구는 오류 메시지를 기록하지만 다른 도메인 확인을 계속합니다.
  4. 안전한 저장:

    • 스크립트가 중단되어도(예: Ctrl+C 누름) 결과는 출력 파일에 저장됩니다.
  5. 해시 매개변수:

    • test_hash는 현재 예시 해시(13b203251094c6c51e1f7974b22e84538003b9c23754bc7b24a19891e6d476bf)를 사용합니다. 필요에 따라 조정하세요.

기여

기여를 환영합니다! 기여하고 싶다면 다음을 따르세요:

  1. 이 저장소를 포크합니다.
  2. 기능/수정을 위한 새 브랜치를 생성합니다:
    git checkout -b feature/your-feature-name
    
  3. 변경 사항을 커밋합니다:
    git commit -m "Add your changes here"
    
  4. 브랜치에 푸시합니다:
    git push origin feature/your-feature-name
    
  5. 풀 리퀘스트를 생성합니다.

라이선스

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.


이 문서를 사용하면 스크립트를 GitHub에 쉽게 업로드하고 다른 사용자가 도구를 사용할 수 있도록 명확한 지침을 제공할 수 있습니다.

도구 다운로드