Skip to main content

dfIndexeddb

dfindexeddb is an experimental Python tool for performing digital forensic analysis of IndexedDB and leveldb files.

It parses leveldb, IndexedDB and javascript structures from these files without requiring native libraries.

The content of IndexedDB files is dependent on what a web application stores locally/offline using the web browser's IndexedDB API. Examples of content might include:

  • text from a text/source-code editor application,
  • emails and contact information from an e-mail application,
  • images and metadata from a photo gallery application

Installation

$ pip install dfindexeddb

Installation from source

Linux

  1. Install the snappy compression development package
    $ sudo apt install libsnappy-dev
  1. Clone or download the repository to your local machine.

  2. Create a virutal environemnt and install the package

    $ python3 -m venv .venv
    $ source .venv/bin/activate
    $ pip install .

Usage

A CLI tool is available after installation:

$ dfindexeddb -h
usage: dfindexeddb [-h] -s SOURCE [--json] {log,ldb,indexeddb} ...

A cli tool for the dfindexeddb package

positional arguments:
  {log,ldb,indexeddb}

options:
  -s SOURCE, --source SOURCE
                        The source leveldb file
  --json                Output as JSON

To parse a LevelDB .log file:

$ dfindexeddb -s <SOURCE> log -h
usage: dfindexeddb log [-h] {blocks,physical_records,write_batches,parsed_internal_key,records}

positional arguments:
  {blocks,physical_records,write_batches,parsed_internal_key,records}

options:
  -h, --help            show this help message and exit

To parse a LevelDB .ldb file:

$ dfindexeddb -s <SOURCE> ldb -h
usage: dfindexeddb ldb [-h] {blocks,records}

positional arguments:
  {blocks,records}

options:
  -h, --help        show this help message and exit

To parse a LevelDB .ldb or .log file as IndexedDB:

$ dfindexeddb -s <SOURCE> indexeddb -h
usage: dfindexeddb indexeddb [-h]

options:
  -h, --help  show this help message and exit

Metadata

Release files for dfindexeddb 20240229

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dfindexeddb 20240229
File Size Uploaded
dfindexeddb-20240229.tar.gz 33.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dfindexeddb 20240229
File Interpreter ABI Platform
dfindexeddb-20240229-py3-none-any.whl Python 3 none any Details

Total release size: 72.9 kB

Release files / dfindexeddb-20240229.tar.gz

Download URL dfindexeddb-20240229.tar.gz
Size 33.1 kB
Tags Source
SHA-256 checksum
How to use checksums
8741418469e04e399aa4502cf542e3c2521d63a43c04ce76879fa38d02ad5144
BLAKE2b-256 checksum
How to use checksums
04f2b68f06d092c47fdeb0fc5e8ffc5cfac0459d828f3277fa0fa20f7d3041e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.8

Release files / dfindexeddb-20240229-py3-none-any.whl

Download URL dfindexeddb-20240229-py3-none-any.whl
Size 39.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
23529c5943886ac8efe13aec00ec23c523900a3673141c1b4e7b7a347ddbaf31
BLAKE2b-256 checksum
How to use checksums
3575dece48e60447e71f2409924fe9bf72ccaf1d929f591b22066c2427a7d346
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/4.0.2 CPython/3.11.8
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page