#memory #checker #rowhammer

app rusty_checker

A simple RowHammer vulnerability checker written in Rust

5 releases

Uses new Rust 2024

0.1.4 Sep 21, 2025
0.1.3 Aug 22, 2025
0.1.2 Aug 7, 2025
0.1.1 Aug 3, 2025
0.1.0 Aug 3, 2025

#292 in Debugging

28 downloads per month

GPL-3.0 license

30KB
444 lines

Rusty-Checker ๐Ÿงช

Built with โค๏ธ in Rust

Rusty-Checker is a memory testing and analysis tool written in Rust that helps detect memory bit flips, test stability, and analyze reliability across configurable patterns and workloads.

Features

  • RowHammer-Inspired Memory Stress Tests โ€“ hammer memory cells to expose instability
  • Test Modes
  • Sequential
  • Random (with PRNG)
  • Checkerboard (0xAAAA / 0x5555)
  • Configurable Parameters
  • Memory size (safe allocation limits enforced)
  • Number of hammering iterations
  • Verbose output toggle
  • Log file path
  • Structured Logging
  • Chrono-based timestamped logs
  • Detailed progress and anomaly reporting
  • Anomaly Tracking โ€“ detect and record mismatches with memory addresses
  • Progress Reporting โ€“ clear percentage updates during test runs
  • Safe Memory Allocation โ€“ prevents excessive allocations and handles OOM errors gracefully
  • Error Handling โ€“ robust exit messages with clear guidance

๐Ÿ“ฆ Installation

Clone the repo and build with Cargo:

git clone https://github.com/<your-username>/rusty_checker.git
cd rusty_checker
cargo build --release

or install from crates.io:

cargo install rusty_checker

Usage

rusty_checker <memory_in_mb> <hammer_count> [--random] [--verbose] [--log <file>]

Example runs

  • Run a sequential test on 64 MB, 10 hammer cycles:
rusty_checker 64 10
  • Run with random access mode, verbose output, and log results:
rusty_checker 128 20 --random --verbose --log rusty_log.txt

DISCLAIMER

Rusty-Checker performs low-level stress testing. While safe by design, improper use on unstable systems may cause crashes or instability. Use at your own risk.

Dependencies

~4โ€“16MB
~165K SLoC