源代码审计综述.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

源代码审计综述--第1页

近年来,应用软件随着信息系统的发展,功能随之增大,相应的,程序源代码的规模也

加大了,容易被利用的安全漏洞和代码后门也不再局限于以往,这就使得用传统软件测试方

法来检测源代码中的安全漏洞非常困难。所以从源代码审计的角度,对源代码进行检测和分

析,从而从根本上保护软件和信息系统的安全,杜绝了代码后门又能够避免潜在的漏洞安全

威胁,进一步保障了信息安全。

在对应用软件和信息系统进行安全评估的时候,很多问题都是出现在软件的编码阶段,

如SQL注入、XML实体攻击、XSS跨站脚本攻击等。这些问题都需要通过修改软件的源代码来

解决。因此,对于应用软件和信息系统的安全问题必须从底层的源代码抓起,在其上做到最

佳防范。

本文阐述了源代码审计原则,概述了源代码审计的方法和技术,对比了源代码审计工具,

表明了源代码审计的价值和意义,最后对源代码审计技术的发展趋势做出预估。

2源代码审计原则

代码审计的过程如下,首先阅读目标系统(被审计)源代码,然后检査保证代码正确安

全的控制是否设置在了关键的逻辑流位置上。它的主要目的是使得安全的开发技术被研发人

员和编码人员严格遵循。通常来讲,如果被审计的目标系统经过一次完整的源代码安全审计

之后,能够规避大部分的应用程序的源代码漏洞,提高模拟渗透测试的精度。

2.1所有的输入均不可信

在源代码程序中有很多的输入,包括系统内外部,由于用户的输入被应用程序处理,然

后分析,进而展示,那每一个有可能被恶意利用或者造成代码纰漏的输入都是可疑的。据统

计,在漏洞里面,由输入数据引起的安全问题高达90%,所以,对于程序代码中数据输入的

格式与内容进行严格限定,能起到一定的安全控制作用。

2.2遵循安全编码规范

CERT是美国软件工程研究所(SEI)的计算机安全应急响应组,它编制了多种语言的安全

编码规范,其中,Java安全编码标准已经于2011年9月14曰出版发行(Addison-Wesley

出版社)。该安全编码标准着重于Java程序中最容易出错、产生代码安全问题的环节,详细

制定了编码层保障安全的规则,同时也提供了规避产生类似错误的最佳操作指南。

RobertC.Seacord(CERT标准主编)提道,CERTJava安全编码标准是作为SEI安全编码项

目的一部分。之前,CERT安全编码团队已经编制过很多的安全编码规则或标准,其中最著名

的是CERTC安全编码标准(Addison-Wesley出版社2005)和CERTC++安全编码标准

(Addison-Wesley出版社2008)。它们分别提供了C和C++编程语言中对于安全编码的指导

方针和最佳操作指南,其目的是避免不安全的编码操作和可能会被利用的代码后门导致的潜

在安全风险。

遵循安全的编码规范在代码开发阶段很有必要,软件系统因为编码规范、安全,会更健

壮,抵抗恶意攻击的能力也越强。源代码审计制定了相应技术的源代码安全规范,并在审査

的过程中检査应用程序是否严格遵从现有的安全编码规范。若是没有遵循安全编码规范,但

无造成漏洞风险,这样的源代码仍然存在安全风险,需要在最后的审计报告中明确指出。

2.3漏洞与安全编码内在关系

现有的代码安全审计主要是査找传统或者已知代码的安全漏洞,这些安全漏洞主要是一

些国际权威组织比如OWASP、CWE、CVE、SANS公布的代码安全漏洞,这些漏洞都是基于不同

的安全漏洞模型来査找的,主要使用了数据流、控制流等技术査找恶意数据的入口点和恶意

数据可能被利用的点(出口点),利用人工分析从入口点到出口点是否有风险来判断问题是否

真实存在,并且所有的入口点及出口点都

文档评论(0)

159****5101 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档