Skip to content

kernel::find_winver hangs at reading nt major/minor version using memflow-pcileech #10

Description

@holly-hacker

When running the ps_win32 example from memflow-pcileech, it seems to hang when getting the windows NT version. I can't do much testing due to using a weird setup on nixos, but with some println debugging I narrowed it down to this read for nt_major_version in src/kernel/ntos.rs.

This is the full output until the hang:

[+] using FTDI device: 0403:601f (bus 2, device 11)
[+] FTDIFTDI SuperSpeed-FIFO Bridge000000000001
DEVICE: FPGA: ScreamerM2 PCIe gen2 x1 [300,25,500] [v4.14,0200] [ASYNC,NORM]
[2024-08-16T14:41:54Z INFO  memflow_win32::win32::kernel_info] arch=X86(64, false) kernel_hint=fffff80077e11a80 dtb=1bb000
[2024-08-16T14:41:54Z INFO  memflow_win32::win32::kernel_info] base=fffff80077a00000 size=17068032
[2024-08-16T14:41:54Z INFO  memflow_win32::win32::kernel_info] kernel_guid=Some(Win32Guid { file_name: "ntkrnlmp.pdb", guid: "EEFAC795A46ECB8E8267C6C0ABAF1CE91" })
[2024-08-16T14:41:54Z INFO  memflow_win32::kernel::ntos] trying to find NtBuildNumber export
[2024-08-16T14:41:54Z INFO  memflow_win32::kernel::ntos] NtBuildNumber found at 0xc0cbc0
[2024-08-16T14:41:54Z INFO  memflow_win32::kernel::ntos] trying to find RtlGetVersion export
[2024-08-16T14:41:54Z INFO  memflow_win32::kernel::ntos] RtlGetVersion found at 0x689430
[2024-08-16T14:41:54Z INFO  memflow_win32::kernel::ntos] nt_build_number: 4026554471

Possibly relevant info:

My apologies if this belongs in memflow-pcileech, I'm not sure if the issue is outdated offsets or something related to the fpga interface.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions