MalMemDetect 开源项目使用教程

MalMemDetect 开源项目使用教程

MalMemDetectDetect strange memory regions and DLLs项目地址:https://gitcode.com/gh_mirrors/ma/MalMemDetect

1. 项目的目录结构及介绍

MalMemDetect 项目的目录结构如下:

MalMemDetect/
├── README.md
├── Source
│   └── cpp
│       └── main.cpp
├── LICENSE
└── .gitignore
  • README.md: 项目的基本介绍和使用说明。
  • Source/cpp/main.cpp: 项目的主要源代码文件。
  • LICENSE: 项目的开源许可证文件,采用 GPL-3.0 许可证。
  • .gitignore: 用于指定 Git 版本控制系统忽略的文件和目录。

2. 项目的启动文件介绍

项目的启动文件是 Source/cpp/main.cpp。该文件包含了项目的主要逻辑和功能实现。以下是 main.cpp 文件的部分关键代码:

// 加载 ntdll.dll 库
HMODULE libntdll = LoadLibraryA("ntdll.dll");
if (libntdll) {
    // 获取 KiUserExceptionDispatcher 函数的地址
    FARPROC addr = GetProcAddress(libntdll, "KiUserExceptionDispatcher");
    if (addr != 0) {
        // 修改内存保护属性并进行 Hook
        char* moduleChar = (char*)addr;
        _VirtualProtect(GetCurrentProcess(), (PVOID*)&addr, (PSIZE_T)1, PAGE_EXECUTE_READWRITE, &oldProtect);
        moduleChar[0] = 0xC3;
        _VirtualProtect(GetCurrentProcess(), (PVOID*)&addr, (PSIZE_T)1, oldProtect, &oldProtect);
    }
}

// 检测任何 DLL 或 EXE 的空心化和内联 Hooks
std::string Monitor = DetectHollowingAndHooks(GetCurrentProcessId());
if (Monitor != "NULL") {
    dllMonitor = Monitor;
}

// 启动自己的 Hooks 并记录失败
CHAR* log = (CHAR*)malloc(256);
// 初始化 MinHook
if (MH_Initialize() != MH_OK) {
    snprintf(log, 255, "Failed to initialize minhook. Try again running as Admin.\n\n");
    Log(&log);
    return 1;
}

3. 项目的配置文件介绍

MalMemDetect 项目没有显式的配置文件。项目的配置主要通过代码中的硬编码参数和逻辑来实现。例如,输出文件的路径默认设置为 C:\drive,可以在 main.cpp 文件中找到相关代码:

// 默认情况下,结果将输出到 C:\drive 中的文件
// 样本输出
// Suspicious Malloc() from thread with id:12780 LPVOID:000002C38082B1D0

如果需要修改输出路径或其他配置,可以直接在 main.cpp 文件中进行相应的修改。


以上是 MalMemDetect 开源项目的使用教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。希望这份文档能帮助您更好地理解和使用该项目。

MalMemDetectDetect strange memory regions and DLLs项目地址:https://gitcode.com/gh_mirrors/ma/MalMemDetect

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘冶琳Maddox

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值