摘要:
重载内核 具体代码有点长,记下思路备查。大致思路: 1. NT内核从磁盘装载到内存 2. 重定位 3. 修复导入表 4. 修正内核SSDT 5. 删除PE头 接下来hook kifastcallEntry函数,用的方法也和之前的重载内核那篇代码分析的方法一致,就不分析了。 阅读全文
摘要:
这部分ring3和ring0通信,感觉也是实用的套路,先总结大致思路: 1. hook NtTerminateProcess函数 2. 有TerminateProcess请求到来时,判断参数二是否为固定常数(密钥),不是的话走原函数调用 3. 如果参数二是约定好的密钥,参数一作为约定好的结构指针 4 阅读全文
摘要:
这部分是讲释放在OD插件中的资源文件,也就是一个驱动,然后安装驱动、卸载驱动的过程。主要关注点放在安装、卸载者部分代码上。 安装、启动服务 总结大致步骤如下: 1. 获得服务控制管理器句柄(OpenSCManager) 2. 获得服务句柄(CreateService) 3. 如果CreateServ 阅读全文
摘要:
[TOC] 这一部分的代码的作用主要是用于枚举NT内核模块的符号文件,很多都是常规写法(同一个套路),来做个总结,以后肯定是会再见到的。 获取模块信息 NtQuerySystemInformation NtQuerySystemInformation用于获取多种系统信息中的其中之一。 RtlMove 阅读全文