xss-labs关卡记录15-20关

十五关

随便传一个参数,然后右击查看源码发现,这里有一个陌生的东西,就是ng-include。这里就是:

ng-include指令就是文件包涵的意思,用来包涵外部的html文件,如果包涵的内容是地址,需要加引号。

因此我们试试包含第一关,构造payload为:?src='/level1.php'

果然可以加载,接着我们试试,闭合原本的标签,构造payload为:

?src="> <a href=javascript:alert(1)> <"

发现这里估计是用了一个htmlspecialchars($str)进行html的实体转化。

然后就用之前第一关的解吧,我们加载第一关,然后借助第一关的传参来绕过:

构造payload为:?src='./level1.php?name=<img src=1 οnmοuseοver=alert()>'

右击查看源代码:

虽然这里也是使用了htmlspecialchars($str)进行html的实体转化,但是但是由于该符号被解析后传递到了level1.php的name参数中,因此我们可以成功突破。

检查源代码:

果然就是和我们猜想的一样。

十六关

还是先上传我们的常用关键字试试:

?keyword=" ' sRc DaTa OnFocus OnMouseDoWn P <sCriPt> <a hReF=javascript:alert()>

然后右击查看源代码:

发现我们的语句是在center里面,而且进行了小写转换,并把script替换成空格,最后将空格给实体化,这里空格可以用什么替换?试试斜杠

payload为:?keyword=<img/src=1/οnmοuseοver=alert(1)>

斜杠也被实体化了,只能使用回车试试了,回车的url编码是%0a,我们用这个替换空格:

?keyword=<img%0Asrc=1%0Aοnmοusedοwn=alert(2)>

果然成功了:

查看源码:

17-20关

这里后面的涉及flash插件,浏览器不支持,就没有再看。贴一个大佬的通关记录:

xss-labs靶场实战全通关详细过程(xss靶场详解)-CSDN博客

相关推荐
辛迪聊物业数字化11 小时前
智慧社区物业管理软件新手部署与实操指南
大数据·php
DevUp14 小时前
部署与运维:选完怎么把站跑起来?(番外六)
php·cms
TechLee14 小时前
一行代码防水平越权:用 PHP-Casbin 终结业务里的数据级 if-else
后端·php
catchadmin15 小时前
PHP Trait 为何可能成为语言的关键特性
php
JaguarJack15 小时前
Whim 是什么?一门把 PHP 被否决的设想真跑起来的实验语言
后端·php·服务端
草莓熊Lotso16 小时前
【Redis 进阶】主从复制深度解析:从配置落地到 PSYNC 同步原理
linux·开发语言·网络·数据库·redis·缓存·php
右耳朵猫AI17 小时前
PHP周刊2026W37 | Symfony 三维护版齐发、Laravel AI SDK 0.11、LSP 服务器上线
后端·php·laravel
三84418 小时前
云安全 · 02 · 容器与 Docker 安全基础
web安全·docker·云安全
BingoGo19 小时前
Whim 是什么?一门把 PHP 被否决的设想真跑起来的实验语言
后端·php
aixingpan19 小时前
aixingpan.cn API开发文档:api_docs_trichart_natal_marx_transit2接口指南
前端·php