如何解决我是否容易受到sql注入和跨站点脚本以及其他的攻击?该怎么办?
|解决方法
我不确定为什么您发布的HTML / JavaScript并不是问题所在。 XSS和SQL注入是服务器端的问题,如果需要帮助,则应发布PHP代码。(将基于DOM的XSS放在一旁,因为它是如此罕见)。
对于SQL注入,您应该始终使用参数化的查询。 PDO和ADOB都是很好的库。
跨站点脚本编写的防御要复杂得多。您不能只在输出的每个变量中都加上ѭ0并期望是安全的。这是一个好习惯,但也应确保对所有内容进行测试。我建议使用像Sitewatch这样的免费服务,它将测试xss,sql注入等等。或者,您可以使用Acunetix的免费xss扫描仪。
就CSV文件而言,那只是缓慢而繁琐。您应该为此使用数据库。如果您需要提供csv文件,则可以选择所需的文件并使用PHP打印。
,验证您在服务器中的输入是您应该做的。由于您正在写入CSV文件,因此您的PHP代码应查找逗号和换行符,并可能用空格替换它们或向用户发出错误消息。另外,请考虑可以接受作为输入的最大长度。
收集输入后,如果将收集的数据作为输出显示在页面中,则应该对其进行HTML编码。
不过,这只是冰山一角。安全性永远不会解决,您只是在提高潜在攻击者的门槛。
,您的代码不容易受到跨站点脚本的攻击,并且您不使用SQL,仅使用纯文本。
但是,请注意另一个名为“跨站点请求伪造”的漏洞。您必须以以下形式添加令牌值:
$ _SESSION [\'token \'] = md5(rand());
if($ _ SESSION [\'token \']!= $ _POST [\'token \']){
回显“无效请求!”;
}
其他{
//有效的请求!
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。