| 域名空间 下载中心 社区论坛 信息公告 MY小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
书写Linux下自己的shellcodehttp://www.iyit.net 日期:2006-4-29 23:23:54 来源: 点击: |
0x804b9ca %26lt;__execve+26%26gt;: jae 0x804bcb0 %26lt;__syscall_error%26gt; 0x804b9d0 %26lt;__execve+32%26gt;: ret End of assembler dump. 4. 研究 main() 函数的汇编代码 0x80481a0 : pushl %ebp # 保存原来的栈基指针 # 栈基指针与堆栈指针不是一个概念 # 栈基指针对应栈底,堆栈指针对应栈顶 0x80481a1 : movl %esp,%ebp # 修改得到新的栈基指针 # 与我们以前在dos下汇编格式不一样 # 这个语句是说把esp的值赋给ebp # 而在dos下,正好是反过来的,一定要注意 0x80481a3 : subl $0x8,%esp # 堆栈指针向栈顶移动八个字节 # 用于分配局部变量的存储%26lt;a href='http://idc.77169.com' color='#bb0000'%26gt;%26lt;FONT color=#f73809%26gt;空间%26lt;/Font%26gt;%26lt;/a%26gt; # 这里具体就是给 char * name[2] 预留%26lt;a href='http://idc.77169.com' color='#bb0000'%26gt;%26lt;FONT color=#f73809%26gt;空间%26lt;/Font%26gt;%26lt;/a%26gt; # 因为每个字符指针占用4个字节,总共两个指针 0x80481a6 : movl $0x806f308,0xfffffff8(%ebp) # 将字符串"/bin/ksh"的地址拷贝到name[0] # name[0] = "/bin/ksh"; # 0xfffffff8(%ebp) 就是 ebp - 8 的意思 # 注意堆栈的增长方向以及局部变量的分配方向 # 先分配name[0]后分配name[1]的%26lt;a href='http://idc.77169.com' color='#bb0000'%26gt;%26lt;FONT color=#f73809%26gt;空间%26lt;/Font%26gt;%26lt;/a%26gt; 0x80481ad : movl $0x0,0xfffffffc(%ebp) # 将NULL拷贝到name[1] # name[1] = NULL; 0x80481b4 : pushl $0x0 # 按从右到左的顺序将execve()的三个参数依次压栈 # 首先压入 NULL (第三个参数) # 注意pushl将压入一个四字节长的0 0x80481b6 : leal 0xfffffff8(%ebp),%eax # 将 ebp - 8 本身放入eax寄存器中 # leal的意思是取地址,而不是取值 0x80481b9 : pushl %eax # 其次压入 name 0x80481ba : movl 0xfffffff8(%ebp),%eax 0x80481bd : pushl %eax # 将 ebp - 8 本身放入eax寄存器中 # 最后压入 name[0] # 即 "/bin/ksh" 字符串的地址 0x80481be : call 0x804b9b0 %26lt;__execve%26gt; # 开始调用 execve() # call指令首先会将返回地址压入堆栈 0x80481c3 : addl $0xc,%esp # esp + 12 # 释放为了调用 execve() 而压入堆栈的内容 0x80481c6 : xorl %eax,%eax 编辑: [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:Linux开发人员发布WindowsXP仿真桌面 下一篇:FreeBSDshellcode编写攻略 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 最新更新 | 热点排行 | 推荐新闻 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||