有位哲人曾经说过:
所有用户输入的内容都不可信
存在可控输入的地方都可能发生跨站脚本攻击
跨站脚本攻击,简称XSS,通常指攻击者通过HTML/JS注入篡改了页面,插入了代码,先看一些XSS的分类吧
XSS按照插入的代码是否会存储在服务器端,主要分为两大类:反射型XSS和存储型XSS。
XSS到底能搞啥啊?我怎么没感觉到它的存在呢?先看一组数据,在2007年OWASP所统计的所有安全威胁中,跨站脚本攻击占到了22%,高居所有Web威胁之首。只要你上网浏览器网页,你就可能会受到XSS攻击,别怪我没提醒你哦!
反射型XSS需要攻击者构造恶意的脚本代码,发送给受害者受害者在点击后才能完成攻击过程,容易被警觉性较高的小白发现
来一个弹窗的XSS代码
Egg:http://www.360.cn/index.php?id=<script>alert(1)</script>
你以为我傻,这么明显的JS代码在地址栏中,我能点击?
存储型XSS则会把攻击者的攻击代码保存在服务器端,在没有查看服务器端源码或检测数据库内容时,难以发现。
常见的场景,如某论坛存洞,那么攻击者在留言板中插入了代码,访问此页面的小白、大白都会中招,因为隐蔽性非常强。
看一眼360SRC对存储型跨站的奖励吧
血淋淋的教训
我感觉愧对大家,请看图说话
没错,你没有看错,的确是360的某论坛,不是我的安全意识不高,而是我相信的网站存在漏洞,导致我收到了攻击
那么XSS漏洞到底有何危害?为什么大家谈XSS色变?
1. 通过窃取用户的cookie,从而达到盗取帐号的目的
2. 钓鱼欺诈,一般通过构造含有跳转功能的JS代码实现
3. 网站挂马,利用IFrame嵌入隐藏的恶意网站或者将被攻击者定向到恶意网站上
危害都了解了,还不赶紧和XSS代码混个脸熟,以后看到这些代码,我就知道我可能已经中招了
<script>alert(123);</script>
<ScRipT>alert(“XSS”);</ScRipT>
<img/src=1onerror=alert`1`>
<svg/onload=alert(1)>
光说不练假把式,你需要体验一下,你需要实操一下,请把你的JS代码插入到我的服务器中来吧
http://123.59.120.75/CTF-X55/xsser3.php
请打开天窗说亮话
如何防范XSS漏洞呢,,首先,我告诉你,这是程序员的事情,但请你不要打死他们,打死了就没人修复XSS漏洞了,发生了XSS,虽然不怪我们,但是请记住,你是受害者,你应该有所行动。
来点小TIPS:
不点击陌生人发来的URL链接
登录网站后点击退出按钮
恭喜你,小白,你已经成为了见框就插的人了……
记得完成课程中的实验哦,实验答案下期公布,期待吧!
来源:freebuf.com 2018-05-25 14:02:03 by: 360网络安全学院
请登录后发表评论
注册