angr.analyses.language_detector¶
- class angr.analyses.language_detector.LanguageDetectionConfidenceLevel¶
Bases:
EnumConfidence level of language detection results.
- LOW = 'low'¶
- MEDIUM = 'medium'¶
- HIGH = 'high'¶
- class angr.analyses.language_detector.LanguageDetectionResult¶
Bases:
objectResult of language/compiler detection on a binary.
- confidence: LanguageDetectionConfidenceLevel = 'low'¶
- __init__(language='unknown', compiler=None, compiler_version=None, confidence=LanguageDetectionConfidenceLevel.LOW, evidence=<factory>)¶
- class angr.analyses.language_detector.LanguageDetector¶
Bases:
AnalysisDetect the original programming language and compiler used to build a binary.
Supports detection of C (gcc, clang, msvc), Rust, Go, and Swift through multiple heuristic layers: DWARF debug info, .comment sections, symbol patterns, section names, and linked library names.
Usage:
result = project.analyses.LanguageDetector() print(result.language) # "rust" print(result.compiler) # "rustc" print(result.confidence) # "high" print(result.evidence) # ["symbol: __rust_alloc", ...]
- __init__()¶
- property confidence: LanguageDetectionConfidenceLevel¶