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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
msiscan — 취약한 MSI 설치 프로그램에서 로컬 권한 상승 문제를 식별하기 위한 스캐닝 도구 | Kitploit
도구/GitHubGitHub/sec-consult/msiscan
Privilege EscalationStatic AnalysisVulnerability AnalysisConfiguration AuditingPenetration Testing
GitHubsec-consult/msiscan

msiscan

취약한 MSI 설치 프로그램에서 로컬 권한 상승 문제를 식별하기 위한 스캐닝 도구

저장소 보기
128181년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

MSI Analyzer

이 Python 스크립트는 Linux에서 Microsoft Windows *.msi 설치 프로그램 파일을 분석하고 잠재적인 취약점을 지적할 수 있습니다. SEC Consult Vulnerability Lab의 Michael Baer(@derbaer0)가 개발했습니다.

현재로서는 주로 로컬 권한 상승에 적합하며, 이는 우리 블로그 게시물에도 설명되어 있습니다: https://r.sec-consult.com/msi.

Microsoft는 이 취약점에 CVE-2024-38014를 지정했으며 2024년 9월 패치 데이에 패치도 제공했습니다: https://msrc.microsoft.com/update-guide/en-US/advisory/CVE-2024-38014.

이 스크립트는 설치 프로그램의 개요를 파악하고 잠재적 약점을 식별하는 데에도 사용할 수 있습니다.

유의 사항

  • 이 스크립트는 작업 진행 중입니다.
  • 완벽하지는 않지만 많은 설치 프로그램을 올바르게 다룰 수 있기를 바랍니다. 잘못된 판정이 나오는 경우 GitHub 이슈를 만들어 주세요.
    • false-negatives(콘솔 애플리케이션이 설치 프로그램에서 간접적으로만 시작되는 경우)
    • "false-positives"(동일한 작업이 조건부로 실행됩니다. 스크립트는 조건을 표시하지만 평가하지는 않습니다.)
  • 이 스크립트는 악성 설치 프로그램에 대해 보호되지 않습니다.

설치

일부 Python 패키지가 필요합니다. sqlite3, termcolor, 그리고 더 있을 수 있습니다. 그 외에는 설치가 필요 없습니다. 기본 폴더에서 스크립트를 실행하기만 하면 됩니다.

msitools (apt) 패키지를 설치하세요. 여기에는 필요한 msiinfo와 msiextract도 포함되어 있습니다.

root@kitploit:~
sudo apt install msitools

취약점 악용에 유용한 SetOpLock 바이너리는 여기에서 찾을 수 있습니다: https://github.com/googleprojectzero/symboliclink-testing-tools/tree/main/SetOpLock

사용 방법

  • python msiscan.py <Installer>
  • 또는 전체 디렉토리를 확인하려면: ./runall.sh <directory>

이제 빠른 성과를 위해 결과에서 특이한 색상(빨간색)을 찾아보세요. 조언: 빨간색 항목이 있으면 ProcMon으로 복구하고 수동 접근 방식을 수행하세요.

오류가 발생할 수 있습니다. 무시하세요. 분석은 가능하면 계속 진행하려고 시도합니다.

처음에 Repairmode disabled ...라는 빨간색 줄이 보이면 복구 기능을 트리거할 수 없습니다.

이제 더 깊은 분석에 시간을 투자하고 싶다면 출력을 이해하는 데 도움이 되는 몇 가지 설명입니다:

example

  • 평가 악용 가능성이 얼마나 되는지에 대한 제 추측입니다. 이는 색상도 결정합니다.
  • 난이도 취약점을 찾는 데 드는 노력의 정도에 대한 제 추측입니다. 예: HARD = 바이너리 리버싱.
  • 초록색 줄 "Action only invoked upon": 이 작업은 조건이 참일 때만 호출됩니다. 예: "Not Installed"는 소프트웨어가 아직 설치되지 않은 경우, 즉 설치 중에만 실행되고 복구 중에는 실행되지 않습니다. 설치를 강제로 수행할 수 없다면 운이 없는 것입니다. (참고: 때때로 이러한 조건이 현실과 맞지 않는 것처럼 느껴지지만 아직 원인을 파악하지 못했습니다.)
  • 주황색: 스크립트 코드가 있습니다. 시간이 있다면 의심스러운 작업을 찾아보세요. 또는 바이너리 호출(CreateObject ("WScript.Shell"))도 확인하세요.
  • 파란색: WiX 툴셋의 메서드입니다. 아마 안전할 것입니다 (하지만 구별하여 추가 조사가 필요합니다).
  • 청록색: 가장 흔한 색상입니다. 일반적으로 GUI 프로그램이나 DLL 함수를 호출합니다. 여기서 빠른 성과는 기대하기 어렵습니다.

다음 단계는?

설치 프로그램 패키지에서 추출할 것이 아직 많이 있다고 생각합니다. 예를 들어 설치되는 폴더와 서비스의 권한은 더 많은 LPE 벡터를 신속하게 식별할 수 있습니다.

도구 다운로드