Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Example: qcow-forensic

Inputs

  • examples/inputs/qcow-forensic-samples/README.md
  • examples/inputs/qcow-forensic-samples/sample.qcow2

Profile

# QCOW Forensic Image Example Profile
# Demonstrates analysis of QCOW (QEMU Copy On Write) forensic disk images

decode = ["base64"]

max-file-size = 104857600  # 100 MiB

tag = "qcow-forensic"

# Patterns to match in QCOW images and extracted partitions
[[patterns]]
  name = "QCOW Signature"
  pattern = "51:46:49:FB"  # "QFI\xfb" at header (QCOW/QCOW2/QCOW3)
  type = "bytes"

[[patterns]]
  name = "AWS Access Key"
  pattern = "AKIA[0-9A-Z]{16}"
  type = "regex"

[[patterns]]
  name = "AWS Secret Key"
  pattern = "(?i)aws.{0,20}secret.{0,20}['\"][0-9a-zA-Z/+=]{40}['\"]"
  type = "regex"

[[patterns]]
  name = "SSH Private Key"
  pattern = "-----BEGIN.*PRIVATE KEY-----"
  type = "regex"

[[patterns]]
  name = "Password in Config"
  pattern = "password\\s*=\\s*['\"]?[^'\"\\s]+"
  type = "regex"

[[patterns]]
  name = "Database Connection String"
  pattern = "jdbc:[a-zA-Z0-9]+://[^\\s]+password=[^\\s&;]+"
  type = "regex"

[[patterns]]
  name = "MBR Boot Signature"
  pattern = "55:AA"
  type = "bytes"

[[patterns]]
  name = "GPT Signature"
  pattern = "45:46:49:20:50:41:52:54"  # "EFI PART"
  type = "bytes"

[[patterns]]
  name = "NTFS Signature"
  pattern = "4E:54:46:53"  # "NTFS"
  type = "bytes"

[[patterns]]
  name = "Email Address"
  pattern = "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}"
  type = "regex"

Report outputs

Triage report (converted from triage_report.json)

total_files3
critical_count0
high_count0
medium_count0
low_count0
minimal_count3
must_investigate_count0
all_scoresNone
generated_at2026-02-01T01:44:30.568861735+00:00

top_scores

characteristics_scorefile_typefile_type_scoremust_investigatepathpattern_count_scorepattern_matchespattern_severity_scorereasonsrisk_levelscoresha256
0Other0False/sample.qcow2523["2 suspicious patterns detected"]Minimal86461736b27529f047823e7c100131897542d5ae2d4fbe4af1c073c2b4e9c7c1f
0Other0False/README.md000[]Minimal0a8e3ac3e3bbbe8fc934e70ef9046b33c6975c8a572dace67a4604a48bbd1b1e6
0Other0False/sample.qcow2/sample.qcow2:qcow:metadata000[]Minimal0b47571aa892b329fca6fc99a24df380103ff97a2a22ff57659ff4999e080a82a

CSV outputs

errors.csv

Empty CSV

files.csv

pathfile_namesha256file_createdfile_modifiedfile_accessedmime_types_from_file_extensionis_symbolic_linkis_extracted_fileis_decoded_fileis_deobfuscated_filetag
/README.mdREADME.mda8e3ac3e3bbbe8fc934e70ef9046b33c6975c8a572dace67a4604a48bbd1b1e62026-02-01T01:26:44.645674012Z2026-02-01T01:26:44.645674012Z2026-02-01T01:27:13.235271167Z["application/x-genesis-rom"]0000
/sample.qcow2/sample.qcow2:qcow:metadatasample.qcow2:qcow:metadatab47571aa892b329fca6fc99a24df380103ff97a2a22ff57659ff4999e080a82a[]0100
/sample.qcow2sample.qcow26461736b27529f047823e7c100131897542d5ae2d4fbe4af1c073c2b4e9c7c1f2026-02-01T01:26:44.645674012Z2026-02-01T01:26:44.672673717Z2026-02-01T01:27:13.235271167Z["application/x-qemu-disk"]0000

pattern_matches.csv

idsha256pattern_namematch_typematchlocationlength
16461736b27529f047823e7c100131897542d5ae2d4fbe4af1c073c2b4e9c7c1fQCOW SignaturebytesQFI�04
26461736b27529f047823e7c100131897542d5ae2d4fbe4af1c073c2b4e9c7c1fEmail Addressregextest@example.com2:716

signature_matches.csv

Empty CSV

unique_files.csv

sha256sha1md5file_sizemime_type_for_contentshannon_entropy
a8e3ac3e3bbbe8fc934e70ef9046b33c6975c8a572dace67a4604a48bbd1b1e6aae56b1ceca472f663040d350c14913c163206f559243f291f4d2c6b4526a5d87f0995753095text/plain5.05082053829356
b47571aa892b329fca6fc99a24df380103ff97a2a22ff57659ff4999e080a82ab057cb3910d3b078984eff6d85a05691c70f46f6516cd80888f7e98f3d529e3ee6c0302e881text/plain5.03263993157254
6461736b27529f047823e7c100131897542d5ae2d4fbe4af1c073c2b4e9c7c1f40d7e4ec2cc7fab69057f0067cb38e6751a8bd670c6e0572f9642cecdfbbe4c87255b9c11048576application/x-qemu-disk0.0030719323240831