码迷,mamicode.com
首页 > 系统相关 > 详细

如何编写一个shellcode

时间:2015-01-05 23:21:46      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:

ShellCode的编写就是将函数或变量在内存中的间接地址改为函数或变量在内存中的直接地址,直接调用!

 

MessageBox函数为例进行讲解如下

 

新建shellcode.cpp

技术分享

 

编写代码如下:

技术分享

运行结果:

技术分享

VC代码转换成汇编指令:

技术分享

技术分享

技术分享

技术分享

内存数据图:

技术分享

函数的真实地址找到之后,修改代码如下:

技术分享

将以上汇编指令转换成二进制数据:

技术分享

技术分享

内存数据图:

技术分享

0x0040103C~0x00401049之间的二进制数据复制出来

 

如下:

 

6A 00 6A 00 6A 00 6A 00 B8 1E FD 0B 75 FF D0

 

最终shellcode代码:

技术分享

 

运行结果:

技术分享

 

如何编写一个shellcode

标签:

原文地址:http://www.cnblogs.com/milantgh/p/4204766.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!