CWESANS评出25种最危险及编程错误.docVIP

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

CWE/SANS评出25种最危险的编程错误 it技术 2010-04-16 14:23:37 阅读30 评论0 ??字号:大中小?订阅 一般弱点列举(Common Weakness Enumeration CWE)是由美国国家安全局首先倡议的战略行动,该行动的组织最近发布了《2010年CWE/SANS最危险的程序设计错误 (PDF)》一文,其中列举了作者认为最严重的25种代码错误,同时也是软件最容易受到攻击的点。 曾在InfoQ中发布过OWASP Top 10列表,它所关注的是web应用程序的安全风险,而CWE的Top 25的覆盖范围更广,包括著名的缓冲区溢出缺陷。CWE还为程序员提供了编写更安全的代码所需要的更详细的内容。 这个列表是SANS学院、MITRE以及“美国和欧洲很多顶级软件安全专家” 共同合作的成果。在CWE站点上列有800多个编程、设计和架构上的错误,CWE文档首先列举的是针对程序员最重要的25项,从而帮助他们编写更安全的代码。同时文档还适用于软件设计师、架构师、甚至CIO,他们应该了解这些可能出现的弱点,并采取恰当的措施。 根据CWE的列表,跨平台脚本攻击(XSS)和SQL注入被认为是软件最薄弱的环节,而位于第三位的是缓冲区溢出: 排名 名称 1 网页架构保持失败 (跨平台脚本攻击) 2 对SQL命令中使用的特定元素处理不当(SQL注入) 3 在没有检测输入大小的情况下就对缓冲区进行复制(经典的缓冲区溢出) 4 跨站点伪造请求(CSRF) 5 不当的访问控制(授权) 6 在安全决策中信赖不被信任的输入 7 不当地将路径名限制为受限的目录(路径穿透) 8 对危险类型文件的上载不加限制 9 对OS命令中使用的特定元素处理不当 10 缺少对敏感数据的加密 11 使用硬编码的证书 12 使用不正确的长度值访问缓冲区 13 在PHP程序中,对Include/Require声明的文件名控制不当(PHP文件包含漏洞) 14 对数组索引验证不当 15 对非正常或异常的条件检查不当 16 通过错误消息透漏信息 17 整型溢出和环绕 18 对缓冲区大小计算错误 19 缺少对重要功能的授权 20 下载代码却不做完整性检查 21 对重要的资源赋权不当 22 分配资源,却不做限制和调节 23 重定向到不受信任站点的URL(开放重定向) 24 使用被破解或者有风险的加密算法 25 竞争条件 作者并不认为这个列表是放之四海而皆准的,他建议每个组织都应该基于自身的标准来创建自己的列表。文档提出了大量“关注热点”,其中之一是 “语言的弱点”: C/C++ Java PHP Perl CWE 条目 高 一般 高 高 CWE-22: 不当地将路径名限制为受限的目录(路径穿透) 与语言无关,但是一般是在模拟环境中存在 高 一般 高 高 CWE-78: 对OS命令中使用的特定元素处理不当(操作系统命令注入) 一般 高 高 高 CWE-79: 网页架构保持失败 (跨平台脚本攻击) 高 高 高 高 CWE-89: 对SQL命令中使用的特定元素处理不当(SQL注入) 高 CWE-98: 在PHP程序中,对Include/Require声明的文件名控制不当(PHP文件包含漏洞) 从技术上来说这种问题会在大多数解释型语言中发生,但似乎在PHP中最为流行 高 有限 有限 有限 CWE-120: 在没有检测输入大小的情况下就对缓冲区进行复制(经典的缓冲区溢出) 解释器和本地代码通常是使用C/C++创建的,当我们可以使用更高级别的语言对其进行操作时,就很容易受到缓冲区溢出的影响,否则就显得比较“安全”。 高 有限 有限 有限 CWE-129: 对数组索引验证不当 从技术上来说,这在很多不同的语言中都会发生,但是在C/C++程序中最容易导致安全问题。 高 有限 有限 有限 CWE-131: 对缓冲区大小计算错误 当更简单的缓冲区溢出情况被排除的时候,这个问题就会出现。解释器和本地代码通常是使用C/C++创建的,当我们可以使用更高级别的语言对其进行操作时,就很容易受到缓冲区溢出的影响,否则就显得比较“安全”。 高 有限 有限 有限 CWE-190: 整型溢出和环绕 从技术上来说这可能会在多种不同语言中出现,但是在C/C++程序中最容易导致安全问题。 高 高 高 一般 CWE-209: 通过错误消息透漏信息 这与语言无关,但经常会出现在基于Web的环境,或是出现在在外部自动执行错误报告的语言中。 高 高 高 高 CWE-285: 不当的访问控制(授权) 一般 一般 一般 一般 CWE-306: 对重要的资源赋权不当 在基于Web的环境中比较流行。 高 高

文档评论(0)

liwenhua00 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档