我开发了一个网站,可以通过 https://ublostandfound.000wewebhostapp.com 访问。一些用户试图通过在HTML表单输入中使用标记来使我的网站重定向到其他网站。我不完全确定他是如何做到这一点的,但是有一些方法我可以阻止用户首先在表单中输入标签吗?

答案 0 :(得分:-1)
在您存储表单输入之前,请检查每个字段中的HTML标记并将其删除或拒绝该帖子。 (寻找<后跟>)
答案 1 :(得分:-2)
转义您的HTML实体,以便<
变为<
等。请确保您在服务器上而不是在客户端上执行此操作,否则恶意客户端可以绕过它。
答案 2 :(得分:-2)
最佳做法是在服务器上清理用户输入,但在服务器较少的环境中,任何人都可以简单地绕过它。
无论哪种方式,您都可以通过调用此函数进行清理(只是意味着通过脚本使数据无法运行)
function sanitize(s) {
return s.replace(/&/g, '&').replace(/</g, '<').replace(/"/g, '"');
}