我有一个从nodejs呈现的隐藏表单字段:
<input type="hidden" name="currentUrl" value={currentUrl} />
此字段用于禁用javascript时,我需要知道在发布表单后要返回哪个页面。
我正在使用csruf来尝试减轻任何问题。
我如何防止黑客滥用网址?
答案 0 :(得分:1)
在这种情况下,您应该担心开放重定向,这不是客户端问题。当您将此表单发送到服务器时,如果我理解正确,它将重定向到提供的URL。您需要确保(在服务器上)URL指向您的应用程序(或允许的其他域),然后再重定向到该应用程序。如果用户可以发送任意网址,然后重定向到该网址,则这是一个漏洞。验证网址的一种方法是使用URL处理并检查主机。
XSS也可能是一个问题,但是我认为应该通过编写{currentUrl}
的模板引擎来缓解这种情况。