文档详情

代码审计服务技术白皮书v1.1剖析.docx

发布:2017-03-13约5.93千字共16页下载文档
文本预览下载声明
专业服务技术白皮书代码审计服务■版本变更记录时间版本说明修改人2012/5/21V1.0文档创建、丰富内容专业服务部目录一. 概述11.1基本概念11.2代码审计与模糊测试11.3服务的必要性11.4客户收益2二. 服务的实施标准和原则22.1政策文件或标准22.2服务原则2三. xxxx代码审计服务33.1服务范围33.2服务分类33.2.1整体代码审计和功能点人工代码审计33.2.2单次服务和年度服务43.3服务流程43.4服务特点53.5服务报告63.6服务注意事项6四. 代码审计方法论74.1代码检查技术74.1.1源代码设计74.1.2错误处理不当74.1.3直接对象引用84.1.4资源滥用84.1.5 API滥用84.2应用代码关注要素94.2.1跨站脚本漏洞94.2.2跨站请求伪装漏洞94.2.3 SQL注入漏洞94.2.4命令执行漏洞94.2.5日志伪造漏洞94.2.6参数篡改104.2.7密码明文存储104.2.8配置文件缺陷104.2.9路径操作错误104.2.10资源管理104.2.11不安全的Ajax调用104.2.12系统信息泄露114.2.13调试程序残留11五. 相关工具115.1信息收集工具115.2静态分析工具115.3源码提取工具12六. 为什么选择xxxx12概述基本概念代码审计(Code Review)是由具备丰富编码经验并对安全编码原则及应用安全具有深刻理解的安全服务人员对系统的源代码和软件架构的安全性、可靠性进行全面的安全检查。代码审计服务的目的在于充分挖掘当前代码中存在的安全缺陷以及规范性缺陷,从而让开发人员了解其开发的应用系统可能会面临的威胁,并指导开发人员正确修复程序缺陷。代码审计与模糊测试在漏洞挖掘过程中有两种重要的漏洞挖掘技术,分别是代码审计和模糊测试(Fuzzing)。代码审计是通过静态分析程序源代码,找出代码中存在的安全性问题;而模糊测试则需要将测试代码执行起来,然后通过构造各种类型的数据来判断代码对数据的处理是否正常,以发现代码中存在的安全性问题。由于采用的分析方法不同,这两项技术的应用场所也有所不同。代码审计常用于由安全厂商或企业的安全部门发起的代码安全性检查工作;模糊测试则普遍用于软件开发和测试部门的程序测试。服务的必要性实践证明,程序的安全性是否有保障很大程度上取决于程序代码的质量,而保证代码质量最快捷有效的手段就是代码审计。在风险评估过程中,代码审计是一般脆弱性评估的一种很好的补充,xxxx代码审计服务的代码覆盖率为100%,能够找到一些安全测试所无法发现的安全漏洞。同时,由于主持代码审计的安全服务人员一般都具备丰富的安全编码经验和技能,所以其针对性比常见的脆弱性评估手段会更强、粒度也会更为细致。客户收益对于客户而言,代码审计可以带来以下收益:明确安全隐患点代码审计能够对整个信息系统的所有源代码进行检查,从整套源代码切入最终明至某个威胁点并加以验证,以此明确整体系统中的安全隐患点。提高安全意识如上所述,任何的隐患在代码审计服务中都可能造成“千里之堤溃于蚁穴”的效果,因此代码审计服务可有效督促管理人员杜绝任何一处小的缺陷,从而降低整体风险。提高开发人员安全技能在代码审计服务人员与用户开发人员的交互过程中,可提升开发人员的技能。另外,通过专业的代码审计报告,能为用户开发人员提供安全问题的解决方案,完善代码安全开发规范。服务的实施标准和原则政策文件或标准xxxx代码审计服务将参考下列规范进行工作。OWASP TOP 10CWE/SANS TOP 25ASP/ASP.NET/PHP/JSP安全编码规范xxxx代码审计最佳实践xxxx安全服务工作规范、代码审计实施规范……服务原则xxxx在提供代码审计服务中,将遵循下列原则。保密性原则保密性原则是代码审计服务中最重要的原则,它是鼓励客户实施代码审计服务的心理基础,同时也是对客户的人格及隐私权的最大尊重。代码审计的保密范围,包括客户提供源代码和相关技术文档的保密性以及输出成果的保密性。对服务过程中获知的任何客户系统及源代码的信息均属秘密信息,不得泄露给第三方单位或个人,不得利用这些信息进行任何侵害客户的行为;对服务的报告提交不得扩散给未经授权的第三方单位或个人。规范性原则xxxx代码审计服务将按照安全服务工作规范、代码审计实施规范进行严格落实。实施必须由专业的安全服务人员依照规范的操作流程进行,对操作过程和结果要有相应的记录,提供完整的服务报告。xxxx代码审计服务服务范围xxxx代码审计服务的范围包括使用ASP、ASP.NET(VB/C#)、JSP(JAVA)、PHP等主流语言开发的B/S应用系统、使用C++、JAVA、C#、VB等主流语言开发的C/S应用系统,以及使用XML语言编写的文件、SQL语言和数据库存储过程等。
显示全部
相似文档