当前位置:   article > 正文

XSS Challenge 通关思路(更新中)_xsschange关卡

xsschange关卡

目录

XSS(cross site scripts)简介:

XSS练习:XSS Challenges

XSS打靶思路()

Stage #1

​编辑

Stage #2

Stage #3

Stage #4


XSS(cross site scripts)简介:

XSS(CSS):全称叫“跨站脚本(js)攻击”。指攻击者在网站页面注入恶意脚本,使其在用户浏览页面时执行

XSS危害:1.盗取cookie(用户的身份认证)2.非法转账 3.钓鱼等

XSS分类:

反射型:插入的恶意js代码没有放在数据库中

存储型:插入的恶意js代码存放在数据库中

XSS练习:XSS Challenges

https://xss-quiz.int21h.jp/

XSS打靶思路()

1.先输入一般变量,F12侦查找变量(可控的)或者burp抓包找变量

2.敌情分析,变量周围的环境,弹窗的符号是否被过滤,弹窗关键词

3.分析敌情构造poc(js)

Stage #1



 

第一关是最简单的,我们就开始侦查,随便输入个变量,这边输入pptx再点击Search,可以看到

我们再按F12查看网页源代码,可以看到pptx值是被<b>标签包含

这个标签对该值没有什么限制和影响,因此我们之间注入js代码,即可攻击成功

<script>alert(document.domain);</script>

Stage #2

我们还是按照XSS的打靶思路来,输入pptx,再F12看值周围的环境

我们可以看到该值,在value中被引号包含,那我们再试试第一关的js代码

我们把两次结果拿出来比较下

<input type="text" value="pptx" size="50" name="p1">
<input type="text" value="<script>alert(document.domain);</script>" size="50" name="p1">

我们输入的js代码已经被引号包含,就是value的值了,我们是要将js代码执行,所以我们要构造闭合

<input type="text" value=""><script>alert(document.domain);</script>"> size="50" name="p1">

我们需要输入的部分为

"><script>alert(document.domain);</script>">

然后可攻击成功

Stage #3

也是先输入pptx,再f12查看

可以看到值也是b标签包裹,我们再试试,

js代码:

<script>alert(document.domain);</script>

看下有没有打靶思路中提到的符号过滤,然后发现也是没有变化原样输出

这会联系到一个防御函数:htmlspcialchars()

这函数的意思是把预定义的字符转换为HTML实体:其中预定义字符包括:

&,",',<,>。所以这种打法行不通。我们只能另寻方向,然后我们看到除了第一个输入框还有第二下拉框,但下拉框做不了任何修改,这时我们就要用到burpsuit进行抓包,我们打开抓包拦截,输入pptx,右侧可看到拦截的信息。

这时我们就可以对p2进行修改为Stage#1的js代码

然后我们点击Forward放行,即可攻击成功

Stage #4

步骤和第三关一样,先输入一般变量,f12看周围环境

可以看出pptx是<b>标签围起的,同时可以发现比上一关多了一个隐藏的p3

再看看有没有符号被过滤,可以发现<还是被过滤了

我们再进行抓包

我们再把<script>alert(document.domain);</script>放入p3看有没有什么变化

可以查看到,闭合方式为双引号

所以做出和第二关一样的调整:

"><script>alert(document.domain);</script>

在放行,即攻击成功

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/712973
推荐阅读
相关标签
  

闽ICP备14008679号