跨站脚本攻击(Cross Site Script),为避免与(Cascading Style Sheet,CSS)重名,安全领域我们称为”XSS”。
XSS练习
第十一关(构造REFERER
头部进行XSS
)
1 | <?php |
分析一下,与上关差不多,既然传的参数keyword
和t_sort
都被htmlspecialchars
过滤了,考虑到HTTP_REFERER
的HTTP
请求头,我们可以尝试能否在HTTP_REFERER
构造一个参数。
1 | REFERER : xss" onmousemove = "alert(/xss/)" type="text" |
通过BurpSuite
抓包添加REFERER
头部
1 | GET /xss/level11.php?keyword=good%20job! HTTP/1.1 |
第十二关(构造User_Agent
头部进行XSS
)
看到源代码就差不多知道是通过读取User-Agent
的头部数据,所以直接构造
1 | User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.2; zh-CN; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 (.NET CLR 3.5.30729) " onmousemove="alert(/xss/)" type="text" |
通过,那么看看源代码猜测下,发现的确如此
1 | <?php |
第十三关(构造Set-Cookie
头部进行XSS
)
看到这里,故伎重演下,尝试更改Set-Cookies
头部,成功进入第十四关
1 | Set-Cookie: " onmousemove="alert(/xss/)" type="text" |
接着我们看下源码
1 | <?php |
第十四关(略过)
初步没看出什么花样
查看下源代码
1 | <html> |
需要fq
,那就直接15
关吧
第十五关
源代码
1 | <html ng-app> |
初次遇到ng-include
,先度一下
AngularJS ng-include
指令,注意,该指令默认情况下,包含的文件需要包含同一个域名下,说来说句就是一个包含文件的命令。
放个链接,后面的有点看不懂,先记录至此。
第关
第关
第关
第关