Skip to the content.

Overall Plan

Overview

Nemo is a cross-platform CLI tool, written in Go, for hiding, detecting, and clearing hidden data. It targets two modes: an image mode, working offline against a raw, unencrypted disk image, and a live mode, working directly on the filesystem of the machine it runs on. Image mode is built; live mode is planned. The tool is intended to serve as a forensic utility, an offensive/CTF tool for exercising anti-forensic techniques, and, through live mode, as something an everyday user can point at their own machine to hide files.

Three filesystems are targeted: NTFS (Windows), APFS (macOS), and ext4 (Linux).

Objectives

  1. Study hidden filesystem data mechanisms across NTFS, APFS, and ext4, including their structure, limitations, and forensic relevance.
  2. Build a CLI tool that can hide, detect, and clear hidden data using these mechanisms, with chain-of-custody logging and integrity hashing for every write operation.
  3. Validate tool correctness and reliability against test images

Intended Features

Forensic Soundness

Scope

In Scope

NTFS, APFS, and ext4 support for named-stream hiding, slack-space hiding, and timestomping, in both image mode and live mode; CLI hide/detect/clear workflows; chain-of-custody logging; SHA-256 integrity hashing; validation against a public dataset.

Out of Scope

FAT32/exFAT support, deleted-file recovery, file carving, malware execution, privilege escalation or bypassing, and a GUI.