xss漏洞的自我总结:
(1) xss漏洞一般存在于输入框、URL栏。只要网站能够运行js,并且有输入框、通过第三方上传文件的都可能存在xss漏洞。
(2) xss漏洞的原理。通过将恶意的代码与正常的代码进行拼接成我们想要执行的代码。
(3) 一般来说我只要能够让他运行我们所上传的代码,就代表存在xss漏洞。(一开始练习的时候,用alert弹窗,能够快速的检查我们的代码有没有运行成功)。
(4) 最基础的xss漏洞:<script>alert(‘xss’)<script>. 这是一段js代码,目的是让他弹一个显示有xss的弹框。
(5) 有的网站他屏蔽了<>,这样就不能运行script了,但我们可以使用on事件。Onload页面加载事件、onclick点击事件、onmousemove移动事件、onmouseover悬浮事件等。
(6) 出来input标签以外,还可以使用<a> </a> 、<img> </img>标签等都可能xss漏洞攻击
(7) xss比较重要的有两点(个人总结):1.闭合前面的代码。 2.网站过滤了那些标签
Xss漏洞平台训练:
(1)第一题相对比较简单 将URL栏最后的name=test修改成name=<script>alert(‘xss’)<sctipt> ,就可以弹出框了,需要攻击的时候,直接在当中插入攻击的恶意代码就行了。
(2)第二道题我们先输入 <script>alert(‘xss’)</script> 提交后显示不对,我们打开页面的源代码看看,看到我们输入的<>的地方并不是<> 而是其他的东西,这说明他将<>给屏蔽了,只要遇到<>到会变成其他的东西。可以使用on事件来运行xss,这里运用onclick。 在源代码中看到我们输入的东西是在value当中的,可以先使用一个 ” 来让这个value标签闭合,因为在value中的只会显示不会执行。闭合之后构造代码 οnclick=alert('xss’)。完整的代码为: “onclick =alert(‘xss’) ,点击提交,在店一下输入框(因为这是点击事件)就完成了。
(3)第三道题依旧先输入 <script>alert(‘xss’)</script> ,然后在源代码中看,我们发现<> “ 分别都被屏蔽了,所以不能用<script>了,我们尝试on事件,先构造一个value的闭合 ‘ (因为value开始的时候使用的是 ‘ ),然后使用onclick事件 ‘οnclick=alert(‘xss’),我们发现结尾多了一个,可以改成 ‘οnclick=’alert(‘xss’) ,因为结尾多了一个,前面加一个使他配对,再提交还是不对,看源代码也没有错。也许是浏览器的原因,我们将xss换成1,结果为: ‘οnclick=’alert(1) 点击提交,在点击输入框,就完成了。
(4)第四题依旧先输入 <script>alrt(‘xss’)</script> 来测试,然后看源码,发现屏蔽了 <> ,所以使用on事件,先构造以个value的闭合,然后先on事件 ,最后让结尾多出来的一个 “ 配对就行了。结果为: “οnclick=”alert(‘xss’) ,提交在点击输入框。
(5)依旧先输入<script>alert(‘xss’)</script> 发现屏蔽了<> ,我们换on事件来看看,οnclick=alert(‘xss’),结果发现他将on给屏蔽了,所以我们不能使用on事件了,但我还有其他的标签可以使用。我们这里使用 <a> 标签,先用 “> 来闭合input标签,然后用<a> 标签的href属性来构造弹框,结果为: “><a href=javascript:alert(‘xss’)>ss</a> ,点击提交,在点击屏幕上的ss,就完成了。