求教!关于用netcat来exploit和发送shellcode

HotCode 发布于 2013/09/28 13:57
阅读 271
收藏 0
各位前辈好,我在做计算机网络防御作业时遇到的问题,麻烦指教!

S.exe是一个有栈溢出问题的软件,其本来功能是,可以用netcat与之相连,在netcat这一端输入课程号,它会返回课程信息。现在的任务是,S.exe作为目标机(没有netcat),如何在攻击方用netcat完成:1.打开目标机的cmd窗口,2.下载一个netcat到目标机上。(不分先后,但应该是有先后才能完成的,只是我不知道)



---------------------------

我的基本思路是,利用netcat的发送txt的功能,直接发送shellcode.txt给S.exe。但可能我对shellcode编写的理解有误,我的.txt文件内容是:

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA


AAAA想要的EIP跳转地址



其中,那些AAAAA是刚好不能造成溢出的个数,“想要的EIP跳转地址”的位置我想写成EIp跳转地址的ASCII码格式,这样写入栈后转成hex码刚好是我想让程序跳转的地址。但是我发现我想要跳转的这个地址是0x
0025f6b4,按照little Endien的规则两位两位转,是b4 f6 25 00。 其中b4,f6,25 的ascii码分别都查到了,分别是´ ö %,虽然是特殊符号,但是放进txt里发给S.exe调试后EIP的对应位也正确了,可是00这个对应的ascii 码是null啊,没法写进txt里。我不知道该怎么解决这个问题。

另外,麻烦大家看一下我的思路,是不是不对啊。我在网上看了好多shellcode和exploit的帖子,比如非常经典的看雪翻译的Corelan Team的exploit教程,但我还是没明白如何让eip跳转,因为最初我只会发送字符串过去让它溢出,但溢出后我不可能一直靠一个简单的txt让我的shellcode运行吧,有没有熟悉netcat的前辈能指点一下,这个shellcode怎么写。非常感谢!


(我不是计算机专业的,修了一门计算机专业的课,但基础太差,可能我叙述问题的时候有疏漏的地方,需要补充什么请大家尽管说,希望大家能帮我解决这个问题!)
加载中
0
我不愿看清
我不愿看清
不明觉厉,楼主是山东南翔的吧,课后作业都搞溢出
返回顶部
顶部