攻击者可以利用跨站脚本漏洞得到浏览该网页用户的Cookie,使其在不知不觉中访问木马网页,并且可以让网页无法正常访问。
1.死循环
在网页中插入死循环语句,这是一种低劣的恶意攻击手法。写一段条件永远为真的循环语句,让页面执行到这段代码时就一直执行这段代码而不能继续显示后面的内容,从而使网页不能正常地显示,陷入死循环状态。更有甚者,在死循环语句中加入弹出对话框的代码,从而使浏览者的浏览器不停地弹出对话框,始终无法关闭,必须结束浏览器进程才行。
具体过程曝光如下。
STEP01:访问“index.asp”主页
STEP02:进入“发表留言”页面
STEP03:再次访问index.asp页面
STEP04:再次弹出提示对话框
2.隐藏访问
隐藏访问指使用户在访问一个网页时不知不觉之中访问另外一个网页。这样做,可以用来增加其他网站的访问量,也可以用来放置网页木马进行网络“钓鱼”。
攻击者可以在有跨站漏洞的页面中插入代码,让所有访问这个页面的用户打开这个页面的同时隐藏访问攻击者的网站,从而帮攻击者增加访问量。网上有跨站漏洞的页面也不少,只要攻击者多找几个有漏洞的网站把代码插进去,网站访问量就非常可观了。
这样的危害还不算大,仅仅是给攻击者的网站增加了些访问量而已,对于漏洞页面来说,最多也只是因为多加载一个页面而稍微影响速度。如果攻击者让用户隐藏访问的页面是一个木马网页,那问题就严重了。在访问时,用户的计算机在不知不觉中下载并安装了一个病毒或者木马程序,这样计算机的控制权完全掌握在攻击者的手里。
往一个知名网站的页面里插木马网页让人不知不觉地中招,比在QQ群里发消息骗人点击木马的效率要高很多。让用户访问页面的方法很多,如插入如下代码可以直接从当前网页跳转到目标页面:
这样直接跳转过去的隐蔽性不高,明眼人一看就知道有问题。所以,黑客更多选择用隐藏访问的方法来达到目的。实现隐藏访问的方法有两种。
1)让页面弹出一个高度和宽度都为0,而且坐标在屏幕范围之外的新页面来打开网页。其代码如下:
用这种方法在弹出一个新页面后,虽然用户看不到,但是在任务栏中会出现这个页面的标题按钮。不过攻击者可以加入代码让木马网页自动关闭,这样留意任务栏的人不多。而且木马网页的标题一闪而过,刚开马上就被关闭了,也不会有太多人去在意它。
2)在页面中插入一个高度和宽度都为0的框架。其内容是攻击者想要用户访问的网页地址,既不会弹出一个新窗口,页面看起来也与没有插入代码一样,隐蔽性十分高。插入框架的代码为:
具体过程曝光如下。
STEP01:用一幅图片来测试代码效果(www.daowen.com)
STEP02:访问index.asp页面
提示
“<iframe src="http://www.baidu.com/img/baidu_logo.gif"></iframe>”的含义
这段代码的作用是在网页中插入一个框架,以显示百度网站的Logo.gif图片。
STEP03:设置框架的高度和宽度为0
STEP04:再访问index.asp页面
有些人会说,也有可能是因为代码没有被执行,所以才会看不到。下面不妨通过一个实验来验证一下。先来做一个test.html文件,将其放在迷你留言本网站的根目录下作为木马网页,其功能只是弹出一个对话框说明已经隐藏访问木马页面。其代码如下:
再来发布一个跨站留言,让用户隐藏访问test.html,留言部分的代码如下:
在实际利用漏洞时,攻击者会把木马页面放在自己的网站空间中。上述代码使用完整的路径来表示木马页面的地址,为了模拟得真实一些,这里使用test.html的完整路径“http://localhost/迷你留言本/test.html”。以示区别,后面都用localhost来表示攻击者的网站,用127.0.0.1表示漏洞网站。具体过程曝光如下。
STEP01:打开“签写留言”页面
STEP02:访问留言主页index.asp
以上操作证明页面中代码被成功执行了,用户已经访问了木马页面。这个对话框是专门为了证明漏洞存在而加上去的,如果没有加这句代码,网页浏览者根本不知道自己已经访问了木马页面,在不知不觉中就把木马下载到自己的计算机上运行了,这无疑是一件非常可怕的事情。
3.获取浏览者cookie信息
为了节省服务器的资源,论坛和留言本通常都把用户的登录信息保存在用户计算机的Cookie中,通过一些特殊的代码从用户的Cookie中提取这个文件,再配合隐藏访问的方法将其发送给攻击者。具体过程曝光如下。
STEP01:进入“签写留言”页面
STEP02:再次访问留言主页index.asp
从上述过程中可以看出跨站漏洞的危害很大,攻击者可以通过一些方法取得浏览者的Cookie,从而得到所需的敏感信息。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。