Skip to main content

Python script to carve NTFS USN records from arbitrary binary data

Description

The NTFS USN Change journal is a volume-specific log which records metadata changes to files. It is a treasure trove of information during a forensic investigation. As the change journal reaches its maximum size, clusters of the journal’s disk space are marked unallocated by the operating system to be used when needed at a later time. As with many other artifacts, USN change journal records in unallocated space can be extremely valuable. Better yet, due to the compact nature of change journal records, I routinely find millions of records outside of the file system’s allocated clusters.

This script will carve NTFS USN journal records from arbitrary binary data, and output to a file in binary format. The investigator can then parse these records with a tool of their own choosing. At this time the script only supports raw/dd input files.

Usage and Output

Simply specify the input and output files:

dev@computer:$ python usncarve.py -f file.raw -o usn.raw

Command-Line Options

usage: usncarve.py [-h] -f FILE -o OUTFILE

optional arguments:
    -h, --help            show this help message and exit
    -f FILE, --file FILE  Carve USN records from the given file
    -o OUTFILE, --outfile OUTFILE
                        Output to the given file

Installation

Using setup.py:

python setup.py install

Using pip:

pip install usncarve

Travis-CI

https://travis-ci.org/PoorBillionaire/USN-Record-Carver.svg?branch=master

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

usncarve-1.2.2.tar.gz (2.8 kB view details)

Uploaded Source

File details

Details for the file usncarve-1.2.2.tar.gz.

File metadata

  • Download URL: usncarve-1.2.2.tar.gz
  • Upload date:
  • Size: 2.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for usncarve-1.2.2.tar.gz
Algorithm Hash digest
SHA256 fa566a81b2a735cad54df1def9f9bb8f84da560b30a47d49e54f81b8f794fa3c
MD5 1661045059c9f45a81178e154fbefd07
BLAKE2b-256 80aedb6ae24e22b2355e923ac83601c6c8c3c40bd1bcc2858556680cf9861f86

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.2.2 This release

1 file

1.2.1

1 file

1.2.0

1 file

1.0.1

1 file

1.0.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page