在php脚本中使用error_reporting(0)是否可以通过不报告错误来防止使用SQLi或XSS进行黑客攻击?
答案 0 :(得分:3)
使用error_reporting(0)
很危险;你隐藏的警告可以为摇晃的编码提供重要的线索。同时它不会阻止SQL注入问题或xss。
我的建议:始终设置error_reporting(-1)
并使用error_log
记录所有错误,或使用set_error_handler()
编写custom error handler来处理错误,而不在页面上显示错误。在开发过程中,您应始终启用display_errors
。
请注意,除了良好的编码实践和正确的测试之外,其他任何内容都可以减少黑客攻击,但是完全阻止黑客行为需要更多。采用防御性编程或者请Bernstein来辅导你; - )
答案 1 :(得分:2)
通过执行error_reporting(0),您只能隐藏用户的错误。在某些情况下,最大限度地减少黑客攻击可能会有所帮助,而不是XSS攻击。