尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Injector:一行命令向 Windows 进程完成 DLL 注入与卸载

Injector:一行命令向 Windows 进程完成 DLL 注入与卸载 Injector一行命令向 Windows 进程完成 DLL 注入与卸载【免费下载链接】InjectorCommand line utility to inject and eject DLLs项目地址: https://gitcode.com/gh_mirrors/injec/Injector想 hook 一个正在运行的进程传统做法要自己处理 OpenProcess、VirtualAllocEx、CreateRemoteThread任何一步出错都要从头排。Injector 就是为这类场景准备的 Windows 命令行工具一条命令把 DLL 注入或卸载进任意运行中的进程。一句话定位Injector 是一个 Windows 命令行工具支持按进程名、窗口标题、PID 三种方式定位目标进程一次调用完成一个或多个 DLL 的注入inject与卸载eject面向需要 hook 开发、进程调试和功能监控的开发者与测试人员。安装与首次运行获取源码git clone https://gitcode.com/gh_mirrors/injec/Injector用 Visual Studio 2019 或更高版本打开解决方案文件 Injector.sln选择 x86、x64 或 ARM64 平台生成即可也可以直接从项目的 Releases 页下载对应架构的预编译二进制。拿到可执行文件后第一条能跑通的命令目标向记事本注入一个 DLLInjector.exe --process-name notepad.exe --inject C:\Temp\myHooks.dll输出Successfully injected module!即注入成功返回码为 0。命令怎么拼三步组出有效调用一条完整命令由三部分组成前两部分各选一第三部分可传多个。定位目标进程三选一-n/--process-name按进程模块名默认不区分大小写加-c/--case-sensitive开启精确匹配-w/--window-name按主窗口标题-p/--process-id按数字 PID指定动作二选一-i/--inject加载 DLL-e/--eject卸载 DLL按模块名匹配磁盘上文件已删除也能卸载附加一个或多个 DLL 路径绝对或相对路径空格分隔其他要点注入前工具会自动申请SeDebugPrivilege权限这是调试其他进程所必需的返回码约定0成功、1命令行参数无效、2一般错误、3结构化异常SEH错误、4未知错误方便脚本判断输入Injector.exe -h可随时查看帮助实战场景Hook 开发者的编译后自动化调试 DLL 每次重新编译后都要手动注入很烦。把注入命令写进 Visual Studio 的后置生成事件编译完成时 hook 自动加载进目标进程全程不用手动操作。测试人员验证 hook 是否生效验证完某个 hook 后不想杀进程重启会丢失现场状态执行Injector.exe --process-id 4321 --eject myHooks.dllDLL 立即从目标进程中卸载进程继续运行。批量挂多个模块一次任务要挂 hook、overlay、日志三个 DLL无需跑三遍命令一条命令全部带上Injector.exe --process-name chrome.exe --inject hook1.dll hook2.dll hook3.dll进阶入口源码与构建想改行为或自己编译时从这几个位置入手Injector/Main.cpp命令行解析、参数校验、返回码定义Injector/Injector.cpp 与 Injector/Injector.h注入/卸载类的完整实现Injector/Seh.cpp把 SEH 异常代理成 C 异常保证错误路径可捕获scripts/finalize-release.ps1发布流程脚本踩坑速查权限不足注入失败目标若是 64 位系统进程或以管理员身份运行的程序需以管理员身份运行 Injector工具会自动申请 SeDebugPrivilege但提升该权限本身需要管理员。架构不匹配32 位 DLL 注入不进 64 位进程反之亦然。先确认 DLL 与目标进程的位宽一致再排查其他原因。提示 No process identifier specified!-n、-w、-p至少传一个-i、-e也至少传一个且-i与-e不能同时用。跑Injector.exe -h对照格式。结尾工具边界很窄你负责指定哪个进程和哪个 DLLOpenProcess 到远程线程的细节它全包。如果任务就是让某个进程加载某个 DLL一行命令是它的上限复杂度。【免费下载链接】InjectorCommand line utility to inject and eject DLLs项目地址: https://gitcode.com/gh_mirrors/injec/Injector创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表