#memflow #introspection #memory #dma

memflow-win32

win32 integration of the memflow physical memory introspection framework

9 releases

0.2.0-beta7 Jul 24, 2022
0.2.0-beta4 Mar 18, 2022
0.2.0-beta2 Feb 20, 2022
0.1.5 Dec 14, 2020
0.0.0 Jul 16, 2020

#178 in Memory management

Download history 13/week @ 2022-06-11 24/week @ 2022-06-18 16/week @ 2022-06-25 18/week @ 2022-07-02 31/week @ 2022-07-09 41/week @ 2022-07-16 123/week @ 2022-07-23 25/week @ 2022-07-30 32/week @ 2022-08-06 23/week @ 2022-08-13 30/week @ 2022-08-20 16/week @ 2022-08-27 24/week @ 2022-09-03 30/week @ 2022-09-10 16/week @ 2022-09-17 31/week @ 2022-09-24

102 downloads per month
Used in 4 crates

MIT license

175KB
4K SLoC

memflow-win32

Crates.io build and test codecov MIT licensed Discord

This crate provides integration for win32 targets for memflow. This library can be used in addition to the memflow core itself read processes, modules, drivers, etc.

Example initializing a win32 target:

use std::fs::File;
use std::io::Write;

use log::{error, Level};

use memflow::connector::*;
use memflow_win32::win32::{Kernel, Win32OffsetFile};

pub fn main() {
    let connector_name = std::env::args().nth(1).unwrap();
    let connector_args = std::env::args().nth(2).unwrap_or_default();

    // create inventory + connector
    let inventory = unsafe { ConnectorInventory::try_new() }.unwrap();
    let connector = unsafe {
        inventory.create_connector(
            &connector_name,
            &ConnectorArgs::parse(&connector_args).unwrap(),
        )
    }
    .unwrap();

    // initialize kernel
    let kernel = Kernel::builder(connector)
        .build_default_caches()
        .build()
        .unwrap();

    println!("{:?}", kernel);
}

Additional examples can be found in the examples subdirectory.

Dependencies

~5–6.5MB
~146K SLoC