XSS via HTTP Headers

XSS via HTTP Headers

​ 在看到BRUTE XSS有一个通过HTTP Headers进行XSS的练习,觉得蛮有意思的,也特别适合当作XSS的入门练习题,我来记录下,有需要的童鞋可以来围观下!

​ 先来说下HTTP Headers XSS,一般在某些情况下,对来自应用程序的某个HTTP头部中的数据未做一些正确的过滤处理,从而就会产生XSS的情况。

​ 我们来看下源码:

1
2
3
4
5
6
7
8
9
10
11
12
13
<!DOCTYPE html>
<body>
<?php
$name = $_COOKIE["name"];
if ($name) {
echo "<p>welcome,$name!</p>";
}
else {
echo "<p>welcome guest!</p>";
}
?>
</body>
</html>

​ 通过分析源码,我们可以看到PHP代码未对HTTP cookie做任何的过滤或者处理,直接将cookie中的name字段echo到页面,那么此处就会存在XSS。

我们先跑起来环境,如下图

正常情况下,我们访问到的页面如上图所示,我们也可以通过curl来访问;

接下来,我们通过curl 向HTTP Header的cookie注入XSS

我们已经看到,XSS脚步已经通过cookie注入显示到页面了,已经可以完美XSS了,对!弹框必须有