Releases: nmatt0/moria
Releases · nmatt0/moria
Release list
moria 0.2.1
moria 0.2.1
Packaging only; no code changes since 0.2.0.
- Added Debian packaging (
debian/) and a release job that builds a.debfor amd64 and arm64 and attaches it to the release, alongside the existing self-contained binary tarballs. - Install on Debian/Ubuntu/Kali: download
moria-fw_0.2.1-1_<arch>.deb, thensudo apt install ./moria-fw_0.2.1-1_<arch>.deb. The installed command ismoria(the package is namedmoria-fwbecausemoriais taken in Debian by an unrelated game).
moria 0.2.0
moria 0.2.0
New formats and detections:
- UPX-packed executable detection (ELF/PE/Mach-O) via the trailing PackHeader and its checksum, with a tampered-header heuristic for stripped/altered stubs (#9).
- VBF (Ford/Volvo ECU programming container) identify and extract, including qvbf-LZSS block decompression and per-block CRC16 verification (#3, #5).
- Embedded YAFFS2 is now detected mid-stream, not only at offset 0; images are sized by walking the chunk stream, with extra-header tag decoding and sparse / data-only handling (#4, #6).
- dm-verity hash-tree superblocks are identified and sized.
- RAE Systems / Honeywell RFP firmware packages identify and extract, LZARI-decompressing each section (community contribution, #1).
Correctness and robustness:
- ELF sizing validates the header tables before trusting a size, so a corrupt ELF can no longer fabricate a multi-gigabyte region that masks real data (#4).
- uImage no longer trusts
ih_sizewhen the header CRC fails (masking guard, #7). - Added a per-finding and file-level diagnostics channel surfaced in both human and JSON output (#6).
Build and CI:
- GitHub Actions: build and test on gcc and clang, an ASan+UBSan job, and a libFuzzer smoke run on every PR and push (#8).
- Install ships only the binary and man page; the signature sets are embedded in the binary.
Thanks to @rabernethy for the RFP firmware support and format request.
v0.1.0
moria v0.1.0 — initial public release