使用AheadLib生成DLL劫持代码
程序加载DLL会有一个优先级顺序,其中,最先加载的是同一目录下的DLL,DLL劫持的原理是在程序的同目录下放一个自己写的DLL,让程序将我们伪造的DLL加载进去,然后在我们的DLL里调用真正DLL的函数。
借助 AheadLib 工具我们可以很方便的伪造DLL。比如,我们想劫持user32.dll,只需将user32.dll的路径填入,然后生成CPP代码。
看一下生成的代码,由于user32.dll里面函数很多,有1213个,所以代码非常长。
接下来,创建一个DLL项目,将代码放进去编译,设置项目编码为多字节字符集,关闭预编译选项,即生成了一个伪造的user32.dll。
我们可以在DllMain里添加想要的功能。
注意,如果我们的程序是32位,则要拿SysWOW64下的winspool.drv,并对Load函数代码做如下修改:
// 加载原始模块inline BOOL WINAPI Load(){TCHAR tzPath[MAX_PATH];TCHAR tzTemp[MAX_PATH * 2];BOOL bIsWow64 = FALSE;IsWow64Process((HANDLE)-1, &bIsWow64);if (bIsWow64){GetSystemWow64Directory(tzPath, MAX_PATH);}else{GetSystemDirectory(tzPath, MAX_PATH);}lstrcat(tzPath, TEXT("\\winspool.drv"));m_hModule = LoadLibrary(tzPath);if (m_hModule == NULL){wsprintf(tzTemp, TEXT("无法加载 %s,程序无法正常运行。"), tzPath);MessageBox(NULL, tzTemp, TEXT("AheadLib"), MB_ICONSTOP);}return (m_hModule != NULL);}
先判断当前进程32位还是64位,然后获取相应的目录。32位程序调用GetSystemDirectory,得到的是system32目录,那么HOOK就会失败。
使用AheadLib生成DLL劫持代码相关推荐
- NTA告警引发的dll劫持思考(溯源)
目录 溯源 DLL DLL Hijacking Vulnerability(DLL劫持漏洞) DLL劫持攻击 转发式劫持 DLL劫持防御 某天在客户局点巡检时,NTA设备发现了CS的告警:定位了被入侵 ...
- c语言劫持dll写法,[原创]DLL劫持生成器 源码开放(纯WINDOWS SDK)+ 实例分析
本菜最近学习了什么DLL注入啊,hook啊(r3)的相关技术,觉得很好玩,于是深入发现还有DLL劫持这种东西觉得挺好玩的,加上最近看到各种木马分析报告中都还有发现有利用白加黑的现象.于是自己想找几个来 ...
- 一种通用DLL劫持技术研究
通用DLL劫持技术研究 by anhkgg 2018年11月29日 写在前面 Dll劫持相信大家都不陌生,理论就不多说了.Dll劫持的目的一般都是为了自己的dll模块能够在别人进程中运行,然后做些不可 ...
- [DLL劫持] 3 DLL劫持之实践 例子
该系列文章是依据本人平时对动态链接库的学习,归纳总结,所做的学习笔记.如有错误或待改善之处,请留下您宝贵的意见或建议. 先说说DLL劫持的原理吧,以下这段来自百度百科对DLL劫持原理的说明: 由于 ...
- 从hook007学习dll劫持自启动方式
转载来自:http://blogs.360.cn/360safe/2016/10/24/hook007autostart/ https://blog.51cto.com/2817071/710911 ...
- Windows 下的 7 种 DLL 劫持技术
本文讲的是Windows 下的 7 种 DLL 劫持技术,在本文中,我将列出半打可以在Windows运行用户模式的进程中使用DLL注入技术.也许可能会有更多类似的技术,但我正在和你分享的是我所拥有的第 ...
- dll注入工具_bypassUAC amp;amp; DLL劫持
0x11 UAC简介 用户帐户控制(User Account Control,简写作UAC)是微软公司在其Windows Vista及更高版本操作系统中采用的一种控制机制.其原理是通知用户是否对应用程 ...
- 老树开新花:DLL劫持漏洞新玩法
DLL劫持漏洞已经是一个老生常谈,毫无新鲜感的话题了.DLL劫持技术也已经是黑客们杀人越货,打家劫舍必备的武器.那么,随着Win10的诞生,微软是否已经修复了此漏洞?同时在当前的安全环境下,DLL ...
- 操作系统权限提升(十五)之绕过UAC提权-基于白名单DLL劫持绕过UAC提权
系列文章 操作系统权限提升(十二)之绕过UAC提权-Windows UAC概述 操作系统权限提升(十三)之绕过UAC提权-MSF和CS绕过UAC提权 操作系统权限提升(十四)之绕过UAC提权-基于白名 ...
最新文章
- 《Java 8 实战》(二)—— Lambda
- navicat的使用
- 妨碍你成为CCIE的10个不良习惯
- Thymeleaf——使用模板动态生成JavaScript脚本文件
- Python基础之:函数
- 企业级 Spring Boot 教程 (十四)用restTemplate消费服务
- Effective Java~38. 用接口模拟可扩展的enum
- Python 配置文件之ConfigParser模块(实例、封装)
- 基于深度学习的番茄叶片分割算法在手机上的应用(GDL+复杂背景只分割叶片有意义?)
- C#将word转换为HTML格式
- 2015-2016前端知识体系(转)
- 回撤率 python 平台_python夏普率、最大回撤计算
- 【51nod-1521】一维战舰
- errorcode 微信分享_分享错误码
- Programming TCP/IP Windows Sockets in C++
- Laravel和Doctrine的测试驱动开发
- IOL2020中国初选第一题题解
- 【编程实践】为了带你搞懂RPC,我们手写了一个RPC框架
- asp计算机房预约系统源码,(机房)实验室预约管理系统
- C++ define用法
热门文章
- python执行shell命令查看输出_python 运行 shell 命令并捕获输出_python_酷徒编程知识库...
- ML:MLOps系列讲解之《MLOps Stack Canvas堆栈画布之MLOps Stack CanvasCRISP-ML(Q)》解读
- AI公开课:19.04.04李航—字节跳动AILab总监《深度学习与自然语言处理:评析与展望》课堂笔记以及个人感悟
- Python3.x 发送邮件
- 蓝桥杯_算法训练_Torry的困惑(基本型)
- python3 邮件方式发送测试报告
- 【转】Linux Netfilter实现机制和扩展技术
- linux下的/dev/shm/ 以及与swap目录的区别【转】
- jenkins配置小结
- EXPRESS.JS再出发