Own tools

Originally written in Windows Batch, then rewritten in C# (based on the .NET Framework 4.x).

Compiled into an .exe executable file with an MZ file header.

The application performs the following functions:

  1. runs as a console application requiring administrator privileges to perform system-level operations;
  2. displays console messages with color coding: green for standard information, red for warnings and best practices, blue for status and system feedback;
  3. presents a sequence of educational screens describing the three primary types of data acquisition: cold (performed on a powered-off system), live (performed on a running system), and logical (focused on selected files or partitions rather than the full disk); it also outlines best practices for handling digital evidence and standards and guidelines RFC 3227 and ISO/IEC 27037:2012 concerning digital evidence handling and maintaining the chain of custody;
  4. retrieves a list of all system volumes using WMI (Windows Management Instrumentation) and displays details including drive letter, type (Removable – removable media, Fixed – fixed disk, Network – network drive, CDROM – CD/DVD drive, RAMDisk – RAM disk), filesystem, volume label, size, and free space in gigabytes;
  5. enables management of the Write Protection mechanism for USB devices – this is a Windows feature that prevents writing data to connected USB media and protects their original content from modification; the user can enable, disable, or check the current status of this mechanism;
  6. enforces logging of all actions to a chosen USB drive – the log includes creation time, every user action (enable or disable protection, status check), and precise timestamps; the log file is named using the format usb_write_blocker_log_YYYY-MM-DD_HH-MM.txt, for example usb_write_blocker_log_2025-09-07_18-15.txt;
  7. informs the user that Write Protection changes apply only to newly connected USB devices, while already mounted devices are not affected;
  8. provides safe termination – displays a summary, confirms log saving, allows the user to decide whether to exit, and closes with a 20-second countdown.

USBWriteBlocker.exe
USBWriteBlocker.exe
USBWriteBlocker.exe
USBWriteBlocker.exe

Click to zoom in

USBWriteBlocker.exe

Purpose: Advanced USB write blocker (a tool that prevents data from being written to USB devices to protect their original content) with auditing and educational module, enabling, disabling, and monitoring the Write Protection mechanism while recommending proper methods of digital evidence acquisition and preservation.

License: Free for personal and commercial use.

Download from GitHub

Written in PowerShell (built on top of the .NET Framework and .NET Core).

Compiled to .exe executable files with the MZ file header.

Each script individually performs one of the following functions:

  1. continuously monitors a specified file for changes and copies it to the user’s desktop when modifications occur;
  2. monitors a specified directory for changes and copies its contents to another directory continuously;
  3. monitors a specified directory for file system changes, logging them, and providing real-time notifications.

FileCatcherBeforeRemoval.exe

Click to zoom in

FileCatcherBeforeRemoval.exe

Purpose: This script continuously monitors a specified file for changes and copies it to the user’s desktop when modifications occur.

License: Free for personal and commercial use.

Download from GitHub

DirectoryCatcherBeforeRemoval.exe

Click to zoom in

DirectoryCatcherBeforeRemoval.exe

Purpose: This script is designed to monitor a specified directory for changes and copy its contents to another directory continuously.

License: Free for personal and commercial use.

Download from GitHub

FileWatcher.exe

Click to zoom in

FileWatcher.exe

Purpose: The script monitors a specified directory for file system changes, logging them and providing real-time notifications.

License: Free for personal and commercial use.

Download from GitHub

FileWatcherWithExactTimestamps.exe

Click to zoom in

FileWatcherWithExactTimestamps.exe

Purpose: FileWatcherWithExactTimestamps is an updated version of FileWatcher that provides exact timestamps in milliseconds, unlike FileWatcher, which provides timestamps in seconds.

License: Free for personal and commercial use.

Download from GitHub