CWE公布2019年最危险的25个软件错误

专门分类软件漏洞与缺陷的“通用缺陷列表”(Common Weakness Enumeration,CWE),在上个月列出了2019年最危险的25个软件错误:2019 CWE Top 25,名列第一的是在内存缓冲区界限内操作的不当限制。而这也是CWE最近8年来首度更新该列表。

CWE目前是由美国国土安全部旗下的科学暨技术局(S&T)负责管理,并交由非盈利的研发机构MITRE经营,上一次CWE公布该列表的时间是2011年。该列表主要是汇集整理了最常见也最严重的软件错误,可能导致软件出现重大安全漏洞,被视为改善网络安全弹性的重要工具。

名列第一的错误编号为CWE-119。根据CWE的说明,特定语言容许直接取得内存区域,但并未自动确保这些内存缓冲区是有效的,可能造成在这些区域中的读写操作牵连到其它的变量、数据结构或内部程序数据,使得读写行为超越缓冲区界线,而让黑客得以执行任意程序、变更控制流程、读取机密信息或导致系统宕机。

第二名的编号是CWE-79,是在网页生成的过程中,出现不当的中和输入(Improper Neutralization of Input During Web Page Generation),而可能衍生出各种跨站程序攻击漏洞(Cross-site scripting,XSS)。

第三名的CWE-20指的是不当的输入验证。当软件无法验证输入时,黑客就有机会以原本不被期待的形式输入,将得以改变控制流,任意控制资源,或是执行任意程序。

过去CWE是通过调查及访谈安全专家而制定了该列表,但今年CWE团队采用更客观的方式,他们分析了这两年来约2.5万个安全漏洞,根据漏洞形成的原因来制作列表,也更能反应现实世界的问题。

尽管制作方法不同,但仍有8个严重的软件错误同时出现在今年与2011年的CWE Top 25中,它们分别是CWE-79、CWE-89、CWE-352、CWE -22、CWE-78、CWE-732、CWE-434与CWE-798。