PHP安全信息?

Sho*_*hoe 2 php security

假设我有一个网站

  • PHP 5.3已安装
  • 每个输出都是htmlspecialchars()ed.
  • PDO和预准备语句是与数据库交互的唯一方式
  • error_reporting() 已关闭
  • 每个请求都传递给index.php(前端控制器),除了index.php via之外,不允许直接文件访问 .htaccess
  • 每个输入都被正确转义(我为什么要使用Prepared语句,用户输入怎么会搞乱我的代码?)
  • 没有用 evil()

它被认为是安全的吗?还有哪些其他方法可以修复以提高安全性?你怎么能攻击它?哈哈呢?PHP/Server端可以提高安全性吗?

Flo*_*ine 5

查看此页面:PHP安全指南.大多数攻击都有记录.如果在实施这些安全检查后,您仍然被黑客入侵,那么问题很可能不是来自您的PHP应用程序.

顺便说一下,正如@Jacco所说,我链接的文章有一些错误的东西.

  1. 使用预处理语句而不是mysql_real_escape_string(),但是你已经这样做了.
  2. 关于盐析,请改为关注此答案:https://stackoverflow.com/a/401684/851498
  3. 最后,检查['type'](用于文件上传)是不安全的,因为恶意用户可以更改此值.相反,请参阅此链接的建议解决方案:http://www.acunetix.com/websitesecurity/upload-forms-threat.htm

  • 我花时间阅读您链接指南中列出的建议.列出的风险是真实的,值得关注.然而,提出的防止风险的解决方案充其量只是微不足道的.(糟糕的建议示例:'验证'上传mimetype与客户端提供的`['type']`值,推荐`mysql_real_escape_string()`,但不提及准备好的语句,建议使用用户哈希值,但提供一个带键控哈希的示例. ) (2认同)