当前位置:网站首页>CWE4.8 -- 2022年危害最大的25种软件安全问题
CWE4.8 -- 2022年危害最大的25种软件安全问题
2022-07-31 12:14:00 【InfoQ】
1. CWE 4.8的变化
- 从汇总表可以看出:
- 新增1个弱点:Weakness-Base CWE-1386:Windows 连接点/挂载点上的不安全操作(Insecure Operation on Windows Junction / Mount Point);
- 新增1个分类:CWE CATEGORY: CWE-1388:物理访问问题(Physical Access Issues and Concerns)
- 新增1个视图:View CWE-1387:CWE Top 25 (2022)(Weaknesses in the 2022 CWE Top 25 Most Dangerous Software Weaknesses)。
1.1.
CWE-1386:Windows 连接点/挂载点上的不安全操作

- 连接点: 应用程序可以创建从一个目录到另一个目录的硬链接,称为连接点。
- 挂载点: 创建从目录到驱动器号的映射,称为挂载点。
1.2.
CWE-1388:物理访问问题

2.
CWE-1387:CWE Top 25 (2022)
- <b>今年的排行榜</b>
- 具体算法可参考《话说CWE 4.2的新视图》。
2.1. 排名变动情况
- 具体变动如下图:

- <b>上升最快的名单:</b>
- CWE-362:使用共享资源的并发执行不恰当同步问题(竞争条件): 从 33 上升到 22;
- CWE-94:对生成代码的控制不恰当(代码注入): 从 28 上升到 25;
- CWE-400:未加控制的资源消耗(资源穷尽): 从 27 上升到 23;
- CWE-77:在命令中使用的特殊元素转义处理不恰当(命令注入)): 从25 上升到 17;
- CWE-476:空指针解引用: 从 15 上升到 11。<br>
- <b>下降最快的名单:</b>
- CWE-306:关键功能的认证机制缺失: 从 11 下降到 18;
- CWE-200:信息泄露: 从 20 下降到 33;
- CWE-522:不充分的凭证保护机制: 从 21 下降到 38;
- CWE-732:关键资源的不正确权限授予: 从 22 下降到 30。<br>
- <b>新进前25的有:</b>
- CWE-362:使用共享资源的并发执行不恰当同步问题(竞争条件): 从 33 上升到 22;
- CWE-94:对生成代码的控制不恰当(代码注入): 从 28 上升到 25;
- CWE-400:未加控制的资源消耗(资源穷尽): 从 27 上升到 23;<br>
- <b>跌出前25的有:</b>
- CWE-200:信息泄露: 从 20 下降到 33;
- CWE-522:不充分的凭证保护机制: 从 21 下降到 38;
- CWE-732:关键资源的不正确权限授予: 从 22 下降到 30。
2.2. TOP 25的记分明细
2.3. 排名统计的改进
- Class/Pillar 从2020年的36%,降到现在的28%;
- Class 从2019年的43%,降到现在的16%;
- Base/Var/Comp 从2019年的 57%上升到84%;
- 对应到base类型的问题,从2019年的 50% 提升到现在的 76%。
- 注:CWE的枚举类型详见:《话说CWE 4.2的新视图》。
3. 结论
- 前十位的缺陷变动不大,主要还是内存读写造成的缓冲区溢出,以及外部输入校验所带来的各种注入问题;
- 内存安全问题是C语言指针的灵活性给我们带来的后遗症,也一直是困扰我们的主要安全问题。现在安全性已经成为软件开发的重要需求。新兴的Rust语言是否能够给在内存管理方面带来较大的改善,还需要时间的证明;或者在内存安全和编程灵活性的平衡上,寻找一种更容易被广大开发者接受的新语言;
- 外部输入引发的各种注入类问题,在今后相当长的一段时间会长期伴随者我们。零信任、供应链安全框架的提出,虽然在安全概念和设计指导上达到了一个新的高度,但在软件应用落地时,还取决于广大的开发人员对安全意识的逐步提高,从而在代码中有效的执行各种对外部输入的有效的检测,以及各种凭证的有效验证。当然凭证的校验可以通过使用安全模块来进一步降低开发中的安全风险;
- 在TOP 25的数据统计上,CWE在尽量将各种软件问题归结到更细力度的问题分类上。通过这些年新版本的快速发布,已经增加了相当多的细分类型(Base/Variant/Compound)。 从2017年3.0的714个增加到了现在4.8版本的927个,增加了将近30%。这也说明我们对问题的认知程度在细化和加深,这更加有利于我们在安全防范中,采取更精细的检查和更具针对性的防范措施,从而降低安全防御的成本。
4. 参考
- Differences between Version 4.7 and Version 4.8
- 2022 CWE Top 25 Most Dangerous Software Weaknesses
边栏推荐
- chroot命令
- JVS轻应用的组成与配置
- Use ODBC in Excel to read data from CDS view on SAP BTP platform
- Redis学习笔记-3.慢查询和其他高级数据结构
- 连续变量离散化教程
- 字符函数和字符串函数
- Caused by: 类找不到: org.apache.flink.table.planner.delegation.ParserFactory或者ExecutorFactory
- SAP 电商云 Spartacus UI 和 Accelerator UI 里的 ASM 模块
- Candence学习篇(11) allegro中设置规则,布局,走线,铺铜
- How MySQL's allowMultiQueries flag relates to JDBC and jOOQ
猜你喜欢

Android studio connects to MySQL and completes simple login and registration functions

Read through the interface to call the artifact RestTemplate

Candence学习篇(11) allegro中设置规则,布局,走线,铺铜

mysql根据多字段分组——group by带两个或多个参数

2022年最新重庆建筑安全员模拟题库及答案

Docker安装canal、mysql进行简单测试与实现redis和mysql缓存一致性

A Week of Wonderful Content Sharing (Issue 14)

Different lower_case_table_names settings for server ('1') and data dictionary ('0') solution

cesium-Web网页优化进阶

Selenium自动化测试之Selenium IDE
随机推荐
IDEA configure method annotation automatic parameters
log4j2的使用
R语言:文本(字符串)处理与正则表达式
Exploring Plain Vision Transformer Backbones for Object Detection 论文阅读笔记
多线程学习笔记-2.final关键字和不变性
vb.net 画曲线
PAT exam summary (exam experience)
VBA输出日志到工作簿demo
ESP8266-Arduino编程实例-PIR(被动红外)传感器驱动
imx6ull看门狗使用
立方体IV(暑假每日一题 10)
Use docker to build mysql master-slave
kubernetes之服务发现
Data Persistence Technology - MP
lotus-local-net 2k v1.17.0-rc4
Data Lake (19): SQL API reads Kafka data and writes it to Iceberg table in real time
音视频基础
荣耀手机参数写错,客服认为没错
Double non-one into bytes!!Pure dry goods sharing
Shengxin Weekly Issue 38