reverse-skills-max: initial public release (restored, redacted, hardened)

This commit is contained in:
baradok609hecl1pq6qi
2026-10-20 02:17:15 +03:00
commit da24c2bd20
2227 changed files with 443931 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
# API Reference: Diffing Malware Samples to Find Changes
## Overview
`scripts/analyst.py` structurally diffs two PE samples: per-section SHA-256 and entropy, import name
set differences, and a byte-level similarity ratio, optionally adding an ssdeep comparison score.
It reads bytes statically and executes nothing. Function-level diffing (BinDiff/Diaphora) is out of
scope.
## Dependencies
| Package | Version | Purpose |
|---------|---------|---------|
| pefile | latest | import table parsing (optional) |
| ssdeep | latest | fuzzy-hash similarity (optional) |
| (stdlib) | — | difflib, hashlib, struct, math, JSON |
## Core functions
### `diff(path_a, path_b)`
Returns added/removed/changed sections, added/removed imports, byte similarity ratio, and (if
available) ssdeep score.
### `_sections(data)`
Per-section SHA-256 and entropy keyed by section name.
### `_imports(data)`
Imported symbol name set via pefile (empty if unavailable).
## Usage
```bash
python scripts/analyst.py diff a.bin b.bin
```
## Sources
- PE Format (section table, import directory) — https://learn.microsoft.com/windows/win32/debug/pe-format
- ssdeep context-triggered piecewise hashing — https://ssdeep-project.github.io/ssdeep/
- Structural variant-diffing approach (section/import deltas) from public triage practice