Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
TrueVerdict — 제로 의존성 Windows PE 출처 추적 및 오탐 감소 엔진 (내장 Authenticode + OS 보안 카탈로그, Rich Header ROL32 검증, 재현 가능 빌드 탐지, 차분 섹션 엔트로피). | Kitploit
도구/GitHubGitHub/prox0959/trueverdict
Defensive ToolsStatic AnalysisVulnerability AnalysisHash AnalysisReverse EngineeringMalware AnalysisDigital ForensicsBinary AnalysisIncident Response
GitHubprox0959/trueverdict

TrueVerdict

제로 의존성 Windows PE 출처 추적 및 오탐 감소 엔진 (내장 Authenticode + OS 보안 카탈로그, Rich Header ROL32 검증, 재현 가능 빌드 탐지, 차분 섹션 엔트로피).

11213시간 45분 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

TrueVerdict

Python 3.10+ Platform: Windows Dependencies: Zero False Positive Rate: 0.00% License: MIT

Windows DFIR을 위한 결정론적 PE 출처 검증 및 오탐 감소 엔진

순진한 정적 악성코드 스캐너, YARA 휴리스틱, 엔트로피 스크립트는 극단적으로 높은 오탐률(깨끗한 엔드포인트에서 흔히 40%에서 60%)을 보입니다. 이들은 정당한 Windows 시스템 유틸리티, .NET 어셈블리, Electron 앱, PyInstaller 번들, 서명되지 않은 개발자 C/C++ 빌드를 악성코드로 상습적으로 오분류합니다.

TrueVerdict는 Python 표준 라이브러리(ctypes, struct, math, hashlib)와 네이티브 Win32 암호화 API(wintrust.dll, crypt32.dll)만으로 엄격하게 구축된 제로 의존성 Portable Executable(PE32 / PE32+) 트리아지 엔진입니다. 단일 지표 휴리스틱을 7계층 암호화 및 구조적 상호 검증 매트릭스로 대체하여 오탐을 **거의 제로(표준 OS/개발자 코퍼스에서 0.00%)**로 끌어내립니다.


기존 휴리스틱 스캐너가 오탐을 생성하는 이유


7계층 상호 검증 아키텍처

root@kitploit:~
flowchart TD
    A["Target PE32 / PE32+ Binary"] --> L1["Layer 1: Dual-Path Cryptographic Verification\n(wintrust.dll Embedded PKCS#7 + CatRoot .cat Lookup)"]
    L1 --> L2["Layer 2: Compiler Provenance\n(Rich Header 'DanS' XOR Decryption & ROL32 Checksum)"]
    L2 --> L3["Layer 3: Debug & Timestamp Validation\n(IMAGE_DEBUG_TYPE_REPRO Deterministic Build Detection)"]
    L3 --> L4["Layer 4: Differential Entropy & Section Permissions\n(.text vs .rsrc Segmentation + RWX Memory Detection)"]
    L4 --> L5["Layer 5: Combinatorial IAT Profiling\n(MD5 Imphash + Offensive Cluster vs. Benign CRT Density)"]
    L5 --> L6["Layer 6: Canonical Path & Identity Verification\n(System32 Path Validation + Levenshtein Typosquatting + VS_VERSIONINFO)"]
    L6 --> L7["Layer 7: Multi-Vector Corroboration Gate\n(Blocks Single-Indicator Alerts; Requires >= 2 Independent Layers)"]
    L7 --> V["Deterministic Triage Verdict\n(BENIGN / LOW_RISK_ANOMALY / SUSPICIOUS / MALICIOUS)"]

실시간 벤치마크 결과

python trueverdict.py --benchmark를 실행하면 32개의 실제 Windows 11 시스템 및 개발자 바이너리(카탈로그 서명 유틸리티, Brepro 미래 타임스탬프 바이너리, 서명되지 않은 깨끗한 C/C++ 빌드 포함)와 5개의 합성 적대적 PE64 샘플을 평가합니다:

root@kitploit:~
======================================================================================
  TRUEVERDICT - LIVE FALSE-POSITIVE STRESS BENCHMARK & ADVERSARIAL VALIDATION
======================================================================================

[PHASE 1] Scanning 32 Legitimate OS & Developer Binaries...
--------------------------------------------------------------------------------------
BINARY NAME                  | SIGNING MODE           | NAIVE  | FINAL  | VERDICT
--------------------------------------------------------------------------------------
notepad.exe                  | OS_CATALOG             |    45  |     0  | BENIGN (99.9%)
cmd.exe                      | OS_CATALOG             |    80  |     0  | BENIGN (99.9%)
svchost.exe                  | EMBEDDED_AUTHENTICODE  |    60  |     0  | BENIGN (99.9%)
calc.exe                     | OS_CATALOG             |    45  |     0  | BENIGN (99.9%)
explorer.exe                 | EMBEDDED_AUTHENTICODE  |    60  |     0  | BENIGN (99.9%)
regedit.exe                  | OS_CATALOG             |    45  |     0  | BENIGN (99.9%)
certutil.exe                 | OS_CATALOG             |    45  |     0  | BENIGN (99.9%)
spoolsv.exe                  | OS_CATALOG             |    80  |     0  | BENIGN (99.9%)
powershell.exe               | OS_CATALOG             |    45  |     0  | BENIGN (99.9%)
python.exe                   | EMBEDDED_AUTHENTICODE  |     0  |     0  | BENIGN (99.9%)
clean_unsigned_dev_tool.exe  | UNSIGNED               |    20  |     0  | BENIGN (98.5%)
... (all 32 legitimate binaries score 0/100)

[PHASE 2] Scanning 5 Synthetic Adversarial Threat Specimens...
--------------------------------------------------------------------------------------
THREAT SPECIMEN              | PRIMARY DETECTION VECTORS    | SCORE  | VERDICT
--------------------------------------------------------------------------------------
svchost.exe                  | L2_RICH_F,L6_MASQUE          |   100  | MALICIOUS (99.4%)
scvhost.exe                  | L2_RICH_F,L6_MASQUE          |   100  | MALICIOUS (99.4%)
reflective_rwx_stub.exe      | L4_RWX_ME,L4_PACKED          |   100  | MALICIOUS (99.4%)
hollow_injector.exe          | L2_RICH_F,L3_TIMEST          |    90  | MALICIOUS (94.6%)
tampered_cert_implant.exe    | L1_CRYPTO,L2_RICH_F          |   100  | MALICIOUS (99.4%)

======================================================================================
  BENCHMARK SUMMARY: NAIVE HEURISTICS vs. TRUEVERDICT CORROBORATION ENGINE
======================================================================================
  Total Binaries Evaluated           : 37 (2.70s)
  Naive Heuristic False Positives    : 18/32 (56.25% FPR)
  TrueVerdict False Positives        : 0/32 (0.00% FPR)
  Total False-Positive Risk Suppressed: -1175 heuristic noise points
  Adversarial Threat Detection Rate  : 5/5 (100.00% TPR)
======================================================================================

단일 바이너리 포렌식 보고서 예시 (cmd.exe)

Windows 11의 C:\Windows\System32\cmd.exe가 내장 Authenticode 서명이 없고, **2034년 컴파일 타임스탬프(0x789F4656)**를 가지며, ResumeThread를 임포트한다는 점에 주목하십시오. 순진한 휴리스틱 스캐너는 이를 **80/100 (악성/의심)**으로 점수화합니다. TrueVerdict는 OS 카탈로그 서명을 확인하고, IMAGE_DEBUG_TYPE_REPRO 항목을 검증하며, DanS Rich Header 체크섬을 확인하여 위험 점수를 **0/100 (BENIGN)**으로 낮춥니다:

root@kitploit:~
====================================================================================
  TRUEVERDICT FORENSIC TRIAGE REPORT : cmd.exe
====================================================================================
  File Path         : C:\Windows\System32\cmd.exe
  File Size         : 344,064 bytes
  SHA-256           : 97ac98b1a92c286054cce55239cfccdfc23a5517bd07fe693072c9ca96c7dabb
  Imphash (MD5)     : 010b165e4c37f484601d3dbd700c9423
  Architecture      : x64 (64-bit) | Linker: 14.38 | Container: NATIVE_UNPACKED
  Compile Timestamp : 2034-02-16 12:02:30 UTC [REPRODUCIBLE_BUILD_HASH]

  [1] CRYPTOGRAPHIC PROVENANCE (AUTHENTICODE + OS CATALOG)
  ------------------------------------------------------------------------------
  Verification Mode : OS_CATALOG
  Status            : Valid Windows Security Catalog Signature
  Verified Signer   : Microsoft Windows Production PCA 2011
  Certificate Issuer: Microsoft Root Certificate Authority 2010
  OS Security Cat   : C:\WINDOWS\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}\Microsoft-Windows-Client-Desktop-Required-Package0512~31bf3856ad364e35~amd64~~10.0.26100.9444.cat

  [2] COMPILER PROVENANCE (RICH HEADER & DEBUG METADATA)
  ------------------------------------------------------------------------------
  Rich Header (DanS): Present | XOR Key: 0xD7965A3A | ROL32 Checksum: VALID (Authentic MSVC Build)
  Toolchain Objects : 11 @comp.id records
  CodeView PDB Path : cmd.pdb

  [5] FALSE-POSITIVE SUPPRESSION & CORROBORATION MATRIX
  ------------------------------------------------------------------------------
  [+] TRUST ANCHOR  [L1_CRYPTO_TRUST       ] (-75) Valid Windows Security Catalog Signature (Microsoft Windows Production PCA 2011)
  [+] TRUST ANCHOR  [L2_RICH_PROVENANCE    ] (-15) Authentic MSVC Rich Header ('DanS') verified via ROL32 checksum (0xD7965A3A, 11 toolchain build objects)
  [~] FP SUPPRESSED [L1_CATALOG_RECOVERY   ] (-20) Binary has no embedded Authenticode table, but matched verified OS Catalog
  [~] FP SUPPRESSED [L3_BREPRO_TIMESTAMP   ] (-25) Non-chronological PE TimeDateStamp (0x789F4656) verified as deterministic Reproducible Build (IMAGE_DEBUG_TYPE_REPRO) hash
  [~] FP SUPPRESSED [L5_DUAL_USE_API_SUPPRESSION] (-35) Dual-use Win32 APIs (ResumeThread) suppressed within high-density/trusted IAT (287 total imports)
  [*] Active Risk Vectors: 0 (Zero corroborated threat indicators)

====================================================================================
  NAIVE HEURISTIC SCORE : 80/100  -->  TRUEVERDICT FINAL SCORE : 0/100 (-80 FP noise suppressed)
  FINAL VERDICT         : BENIGN (Confidence: 99.9% | Corroborated Layers: 0)
====================================================================================

설치 및 사용법

TrueVerdict는 외부 PyPI 패키지가 전혀 필요 없으며 Windows의 표준 Python 3.10+ 설치 환경에서 바로 실행됩니다.

root@kitploit:~
git clone https://github.com/prox0959/TrueVerdict.git
cd TrueVerdict

# 1. Run the live False-Positive Stress Benchmark (32 OS/Dev binaries + 5 synthetic threats)
python trueverdict.py --benchmark

# 2. Triage a single binary (.exe, .dll, .sys)
python trueverdict.py C:\Windows\System32\cmd.exe

# 3. Triage an entire directory and export structured JSON
python trueverdict.py --dir C:\Windows\System32 --limit 50 --json system32_triage.json

# 4. Run unit & integration test suite
python -m unittest discover -s tests -v

라이선스

MIT License에 따라 배포됩니다.

도구 다운로드
순진한 스캐너의 함정깨끗한 바이너리가 이를 유발하는 이유TrueVerdict가 오탐을 제거하는 방법
1. Windows 시스템 파일의 "누락된" 디지털 서명C:\Windows\System32 바이너리(cmd.exe, notepad.exe, powershell.exe, regedit.exe)의 50% 이상이 내장 Authenticode 인증서 테이블(IMAGE_DIRECTORY_ENTRY_SECURITY == 0)을 포함하지 않습니다.내장 PKCS#7 서명(WinVerifyTrust)과 Windows OS 보안 카탈로그(CatRoot .cat) 데이터베이스를 CryptCATAdminCalcHashFromFileHandle + CryptCATAdminEnumCatalogFromHash를 통해 모두 조회합니다.
2. "미래 / 위조된" 컴파일 타임스탬프 (예: 2034년 또는 2089년)Windows 10 1607+부터 Microsoft는 **재현 가능 빌드(Brepro)**로 전환하여 COFF TimeDateStamp를 결정론적 빌드 해시로 대체했습니다.IMAGE_DIRECTORY_ENTRY_DEBUG에서 **IMAGE_DEBUG_TYPE_REPRO (Type 16)**를 파싱합니다. 결정론적 빌드 해시를 인식하고 잘못된 타임스탬프 경고를 억제합니다.
3. 높은 파일 엔트로피 (H > 7.2 bits/byte).rsrc의 압축된 아이콘/PNG, .NET 메타데이터, 또는 설치 프로그램 오버레이(PyInstaller, InnoSetup, NSIS, Electron)는 자연스럽게 7.5 - 7.99 bits/byte에 근접합니다.차등 섹션 엔트로피를 계산하여 실행 코드(.text)를 비실행 리소스(.rsrc)로부터 분리하고 알려진 애플리케이션 컨테이너를 핑거프린팅합니다.
4. 이중 용도 Win32 API 임포트 (VirtualAllocEx, ResumeThread)컴파일러, 브라우저, 디버거, 언어 런타임(python.exe, cmd.exe, kernel32.dll)은 메모리 및 스레드 조작 API를 정당하게 임포트합니다.임포트 테이블 밀도 및 조합 클러스터를 평가하여 고밀도 CRT/OS 임포트 테이블(55+ 임포트) 또는 검증된 서명 내에 포함된 이중 용도 API를 억제합니다.
5. 서명되지 않은 로컬 개발자 빌드로컬에서 컴파일된 C/C++, Rust, Go 바이너리는 Authenticode 인증서가 없어 "서명되지 않음 = 의심스러움" 규칙에 걸립니다.서명되지 않음 != 악성 (기준 페널티 0)을 적용하고 **MSVC Rich Header (DanS)**를 복호화하고 ROL32 체크섬을 검증하여 컴파일러 출처를 확인합니다.