CHARLIE SAYS

查理如是说
DATE 2026-08-24
THEME
SERIES / SECURITY / P-019 · 开发安全

开发安全 001:开发安全相关知识体系详解

开发安全是极为重要的一个话题。本系列按四步展开:先了解业内趋势和常见漏洞,再逐个吃透重点攻击方式,然后上手实践,最后理解渗透测试全流程。

第一步:业内趋势和常见漏洞

学习安全需要总体了解安全趋势和常见的 Web 漏洞,首推了解 OWASP,因为它代表着业内 Web 安全漏洞的趋势。

  • OWASP Top 10 —— OWASP(开放式 Web 应用程序安全项目)最有名的就是”十大安全隐患列表”:不但总结了 Web 应用程序最可能、最常见、最危险的十大安全隐患,还包括如何消除这些隐患的建议;此外还有辅助项目和指南帮助 IT 公司和开发团队规范开发与测试流程。这个”十大”差不多每隔三年更新一次

第二步:重点攻击方式详解

  • 注入攻击详解 —— 最常见的攻击方式,作为开发必须完全避免。常见形式包括 SQL 注入、XPath 注入、命令注入、LDAP 注入、CRLF 注入、Host 头注入、Email 头注入等——本质其实一样,防御措施也大同小异
  • CSRF 详解 —— Cross-site request forgery 跨站请求伪造,也被称为”one click attack”或 session riding,是一种对网站的恶意利用
  • XSS 详解 —— 跨站脚本攻击(Cross Site Scripting,为与层叠样式表 CSS 区分故缩写为 XSS)。恶意攻击者往 Web 页面里插入恶意 Script 代码,当用户浏览该页时,嵌入其中的脚本会被执行,从而达到攻击用户的目的
  • 点击劫持详解 —— 一种视觉上的欺骗手段:攻击者将一个透明的、不可见的 iframe 覆盖在网页上,通过调整 iframe 页面位置诱使用户点击,在不知情的情况下点到 iframe 页面上的功能按钮
  • DDoS 详解 —— 分布式拒绝服务攻击:处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器同时实施攻击

第三步:学习和实践

一个比较好的学习常见 Web 漏洞的平台——DVWA:

  • Web 安全测试平台 DVWA —— Damn Vulnerable Web Application 是一个用来进行安全脆弱性鉴定的 PHP/MySQL Web 应用,为安全专业人员测试专业技能和工具提供合法环境,帮助 Web 开发者更好地理解 Web 应用安全防范的过程

第四步:渗透测试

用渗透测试的整体流程,理解项目发布时安全团队如何做渗透测试来尽量避免漏洞:

  • 渗透测试流程示例 —— 在应用程序上线之前,都会进行多次内部或外部的渗透测试。对开发而言,有必要了解整体流程,从而知己知彼,避免开发中的问题

延伸:安全算法

密码学基础与工程实践配套,见本系列后半部分:加密算法 · 摘要算法 · 国密算法

← 网络协议 001:网络协议和工具知识体系详解 目录 开发工具 001:常用开发库知识体系详解 →
← 返回文章列表