页面输出500错误时是否存在XSS风险?

时间:2013-03-29 18:19:08

标签: java xss

去年,我在中国的一个网站上工作过。该网站运行良好,但我刚收到中国网络安全局的电子邮件。

他们向我发送了一份附件以及一些网址。其中一个是

http://mydomain.com/servlets/pdf?var=xss<audio src = pksovf onerror = pksovf(qrx)&gt;

他们说上面的网址存在风险。我检查了网址,它一直抛出500错误,因为网址格式不正确。

如果页面抛出500错误,是否还存在风险?我不这么认为,但我只是想确认一下。

2 个答案:

答案 0 :(得分:2)

500大致类似于桌面软件中的崩溃。崩溃被认为是安全风险,因为它们可以被恶意输入利用,Web服务器也是如此。

500意味着“我们没想到的事情发生了,我们没有处理它。”这意味着那里有一些可以利用的东西 - 不能保证这一点,就像不能保证可以利用桌面软件中的崩溃一样,但将这两种情况视为潜在的安全漏洞是正确的。 p>

答案 1 :(得分:1)

潜在。这取决于发生错误的位置。

如果您的后端 在崩溃之前将此字符串插入某个数据库中,稍后可能会在您的某个视图中查询此字符串,这可能会非常危险,因为攻击者可能会在网页中插入任意HTML或Javascript,并重定向以使用户可以访问有害网站。

此外,如果在某个时刻使用此字符串查询数据库,这很容易导致SQL injection,因为它未被过滤。

总结一下,这取决于你对这个字符串做了什么, 你的代码崩溃了。

无论如何,您不应该遇到这类问题,应该始终检查用户输入的有效性。获取500 HTTP返回代码非常特殊,这意味着服务器端的某些内容错误。无论如何你必须解决这个问题。