清理 GET 请求和扫描结果
Sanitizing GET Request and result of scan
我正在尝试清理我的 GET 变量,但 Accuntrix 出于某种原因仍在抱怨。
所以我访问了一个页面并且 URL 包含参数。我在页面之间传递这些参数。为此,我这样做
类似下面的内容
<a class="navbar-brand" href="https://someDomain/someFolder/someFile.php?WT.var1=<?php echo $_GET['WT_var1']; ?>&var2=<?php echo $_GET['var2']; ?>&var3=<?php echo $_GET['var3']; ?>&var4=<?php echo $_GET['var4']; ?>" title="logo"><img src="logo.png"></a>
我的页面上有很多这样的 link,当我第一次 运行 页面时,跨站点脚本很容易被破坏,因为
我没有清理 GET 请求。所以在页面的顶部,我放了
<?php
$_GET['WT_var1'] = htmlspecialchars($_GET['WT_var1']);
$_GET['var2'] = htmlspecialchars($_GET['var2']);
$_GET['var3'] = htmlspecialchars($_GET['var3']);
$_GET['var4'] = htmlspecialchars($_GET['var4']);
?>
最初,这似乎行得通。但是我最近 运行 进行了另一次扫描,并且像上面那样的每个 link 都显示为高值。
细节看起来像这样
URL encoded GET input WT.var1 was set to 1}body{acu:Expre/**/SSion(prompt(926954))}
The input is reflected inside a text element.
漏洞看起来像这样
/someFolder/someFile.php?WT.var1=1%7dbody%7bacu:Expre/**/SSion(prompt(941830))%7d&var2=&var3=&var4=
这不是显示经过消毒的 url 吗?这是我需要修复的东西还是 false/negative?
谢谢
htmlspecialchars()
将您的变量编码为 html 页面中的内容输出。如果您需要通过 url 传递变量,则需要 urlencode(()
.
例如:
...someFolder/someFile.php?WT.var1=<?php echo urlencode($_GET['WT_var1']); ?>&var2...
我正在尝试清理我的 GET 变量,但 Accuntrix 出于某种原因仍在抱怨。
所以我访问了一个页面并且 URL 包含参数。我在页面之间传递这些参数。为此,我这样做 类似下面的内容
<a class="navbar-brand" href="https://someDomain/someFolder/someFile.php?WT.var1=<?php echo $_GET['WT_var1']; ?>&var2=<?php echo $_GET['var2']; ?>&var3=<?php echo $_GET['var3']; ?>&var4=<?php echo $_GET['var4']; ?>" title="logo"><img src="logo.png"></a>
我的页面上有很多这样的 link,当我第一次 运行 页面时,跨站点脚本很容易被破坏,因为 我没有清理 GET 请求。所以在页面的顶部,我放了
<?php
$_GET['WT_var1'] = htmlspecialchars($_GET['WT_var1']);
$_GET['var2'] = htmlspecialchars($_GET['var2']);
$_GET['var3'] = htmlspecialchars($_GET['var3']);
$_GET['var4'] = htmlspecialchars($_GET['var4']);
?>
最初,这似乎行得通。但是我最近 运行 进行了另一次扫描,并且像上面那样的每个 link 都显示为高值。 细节看起来像这样
URL encoded GET input WT.var1 was set to 1}body{acu:Expre/**/SSion(prompt(926954))}
The input is reflected inside a text element.
漏洞看起来像这样
/someFolder/someFile.php?WT.var1=1%7dbody%7bacu:Expre/**/SSion(prompt(941830))%7d&var2=&var3=&var4=
这不是显示经过消毒的 url 吗?这是我需要修复的东西还是 false/negative?
谢谢
htmlspecialchars()
将您的变量编码为 html 页面中的内容输出。如果您需要通过 url 传递变量,则需要 urlencode(()
.
例如:
...someFolder/someFile.php?WT.var1=<?php echo urlencode($_GET['WT_var1']); ?>&var2...