因此,我的网站成员可以发布主题,回复,评论,编辑它们等.我总是使用htmlspecialchars
和addslashes
输入html来保护我的网站免受XSS和SQL注入攻击.这还不够,还是有什么我想念的?
谢谢.
Web应用程序可能出现很多问题.除了XSS和SQLi之外,还有:
CSRF - 跨站请求伪造
LFI/RFI -本地文件包含/远程文件包含由include()
,require()
...
CRLF注入 mail()
全局变量命名空间Poising常见原因register_globals
,extract()
,import_request_variables()
目录遍历:fopen()
,file_get_contents()
,file_put_conents()
使用eval()
或preg_replace()
使用远程执行代码/e
远程执行代码passthru()
,exec()
,system()
和``
关于破碎身份验证和会话管理存在一系列漏洞,这是每个Web应用程序员必须阅读的OWASP Top 10的一部分.
"研究在血色"是一篇很好的黑皮书,它涵盖了我列出的许多漏洞.
但是,在Wordpress中也有像这样的奇怪漏洞.什么是漏洞的最终权威是CWE系统,它对HUNDREDS的漏洞进行分类,其中许多漏洞可能会影响Web应用程序.
您应该使用预准备语句(请参阅PDO)来防止SQL注入.输出内容时,htmlspecialchars()似乎足以阻止XSS.
另请查看这些链接,了解更多保护网站的方法:
http://phpsec.org/projects/guide/
http://cwe.mitre.org/top25/#Listing
http://www.owasp.org/index.php/Top_10_2010-Main