观察 Stack Overflow 上线对我来说是一次很有教育意义的经历。我想列出一个清单,包括针对网站使用的各种漏洞和攻击方式,以及可以用来防御它们的编程技巧。
- 哪些类型的漏洞?
- 使网站崩溃
- 入侵服务器
- 入侵其他人的登录信息
- 垃圾邮件
- 假冒他人身份,利用现实中关系进行欺诈
- 等等...
- 有哪些防御性编程技巧?
- 等等...
观察 Stack Overflow 上线对我来说是一次很有教育意义的经历。我想列出一个清单,包括针对网站使用的各种漏洞和攻击方式,以及可以用来防御它们的编程技巧。
前十大漏洞如下:
显然要测试每个领域的漏洞:
mysql_real_escape_string
)搜索无限循环(唯一间接的事情(如果很多人意外发现它),可能会使服务器崩溃)。
一些防范技术:
XSS
如果您从用户那里获取任何参数/输入,并且计划将其输出,无论是在日志还是网页中,请对其进行清洗(去除/转义任何类似于HTML、引号、JavaScript的内容……)。即使是在页面内打印当前URI,也要进行清洗!例如,即使打印PHP_SELF也不安全。 进行清洗! 反射型XSS主要来自未经过滤的页面参数。
如果您从用户那里获取任何输入并保存或打印,请在检测到任何危险/无效内容时向他们发出警告并让他们重新输入。使用IDS进行检测(如PHPIDS)。然后在存储/打印之前对其进行清洗。然后,当您从存储/数据库打印某些内容时,请再次进行清洗! 输入-> IDS /清洗->存储->清洗->输出
在开发过程中使用代码扫描器来帮助发现潜在的易受攻击的代码。
XSRF
SQL注入
SQL注入
你好,
一个很好的安全静态分析工具是FlawFinder,由David Wheeler编写。它可以很好地查找各种安全漏洞,
然而,它并不能替代有经验的人阅读您的代码。正如David在他的网页上所说,“一个傻瓜使用工具仍然是个傻瓜!”
希望对你有帮助。
祝好, Rob