如何修复PHP输出字符串中“网页中与脚本相关的HTML标记的不正当中和(基本XSS)”

时间:2017-07-13 08:55:07

标签: php xss veracode

我有以下php代码

<?php 
$Output = '<table><thead><tr>';
$Output .= '<th>Display</th></tr></thead><tbody>'; 
for ($k = 0; $k < count($ColumnsInSQL); $k++) { 
    $Output .= '<tr><td>'.$KS_ResultSet_level[$k][strtoupper(trim($ColumnsInSQL[$k]))].'</td></tr>';
}
$Output .= '</tbody></table>';
echo $Output;
?>

最近我在Veracode中运行代码,我遇到"echo $Output;"的问题。

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

使用htmlentities()对变量数据中的特殊字符进行编码。

$Output .= '<tr><td>'.htmlentities($KS_ResultSet_level[$k][strtoupper(trim($ColumnsInSQL[$k]))]).'</td></tr>';