需要帮助纠正我的代码中的XSS漏洞

时间:2013-08-22 13:24:10

标签: javascript security xss

我注意到我的图像弹出代码受到XSS攻击。我理解这个问题,但由于PHP不是我的专业领域,我不知道如何纠正它..我已经在这里做了一些搜索,但仍然不清楚如何修复我的代码。

以下是有问题的代码:

<?php
  echo '<a href="javascript:window.close()">' . zen_image($_GET['products_image_large_additional'], $products_values->fields['products_name'] . ' ' . TEXT_CLOSE_WINDOW) . '</a>';
?>

如何更正此代码以更正其中的XSS漏洞?

2 个答案:

答案 0 :(得分:0)

您显然是在服务器端获取产品数据 ($products_values->fields['products_name']),为什么不以相同的方式获取图片而不是通过$_GET?这应该可以解决你的问题。

答案 1 :(得分:0)

我不确定zen_image期望/做什么,但你可以在将它们传递给函数之前转义GET变量。

<?php
    echo '<a href="javascript:window.close()">' . zen_image(strip_tags($_GET['products_image_large_additional']), $products_values->fields['products_name'] . ' ' . TEXT_CLOSE_WINDOW) . '</a>';
?>

我使用函数strip_tags删除任何HTML标记。