Linux: config: CRYPTO_USER_API_AEAD

最近内核的加密算法出现一个漏洞,大家讨论有没有必要把这个加密算法删除,两方面的原因:

  1. 因为应用层早就有相应的库来实现这个算法,而且内核这块功能的用户不多
  2. 主要原因是这个模块出现的问题很多,不只是当前这一个漏洞

然后看了一下RHEL的配置,这个配置设置的是y:

c 复制代码
(root@us-rhel9):/root
$ grep CRYPTO_USER_API_AEAD /boot/conf*
/boot/config-5.14.0-570.21.1.el9_6.x86_64:CONFIG_CRYPTO_USER_API_AEAD=y
/boot/config-5.14.0-570.52.1.el9_6.x86_64:CONFIG_CRYPTO_USER_API_AEAD=y

也就是这一部分代码默认就编译到了内核,不少一个单独的模块。

所以就这些个安全性的问题来说,这个配置需要设置成可load的module;方便管理员来管理。

而且模块的管理非常的方便,比如加一个配置文件,就可以禁用这个功能。

对于很多最终用户,可能都用不到这个功能,为什么要加载,可加载呢?

这样就可以大大减小attack surface。

说不定需要重新考虑这些配置的默认设定,RHEL9上大约是4900个配置,里面有2300个是默认y,这些需要仔细的再看看

c 复制代码
(root@us-rhel9):/root
$ grep "^CON" /boot/config-5.14.0-570.21.1.el9_6.x86_64 | wc
   4870    4884  121274
(root@us-rhel9):/root
$ grep "^CON" /boot/config-5.14.0-570.21.1.el9_6.x86_64 | grep "=y" | wc
   2307    2307   57880
(root@us-rhel9):/root
$ grep "^CON" /boot/config-5.14.0-570.21.1.el9_6.x86_64 | grep "=m" | wc
   2395    2395   57723

为什么 AF_ALG 模块漏洞频繁?

c 复制代码
这与其设计架构的固有复杂性密切相关:
异步操作管理复杂,AF_ALG 大量使用异步加密请求(aio),对象生命周期难以精确追踪,极易引发 Use-After-Free 问题
用户态与内核态的边界交互, 数据在用户空间和内核空间之间传递,边界验证不足会引入内存越界或信息泄露
并发与竞态条件, 多线程/多进程同时操作同一加密套接字时,锁机制若有疏漏,就会产生竞态漏洞
历史遗留代码, AF_ALG 自 Linux 2.6.38 引入,部分底层逻辑较老,安全审计覆盖不够全面
攻击面广, 该接口对普通用户开放(非 root),是提权漏洞的热门攻击目标,因此受到安全研究者的持续关注

echo "install af_alg /bin/true" >> /etc/modprobe.d/disable-af_alg.conf

相关推荐
wangjialelele1 小时前
【SystemV】基于建造者模式的信号量
linux·c语言·c++·算法·建造者模式
想你依然心痛1 小时前
HarmonyOS 6(API 23)实战:基于悬浮导航、沉浸光感与HMAF的“代码哨兵“——AI智能体代码安全审计平台
人工智能·安全·harmonyos·智能体
源远流长jerry2 小时前
Linux 网络虚拟化深度解析:从 veth 设备对到容器网络实战
linux·运维·服务器·网络·性能优化·php
ze^02 小时前
Day01 Web应用&架构搭建&域名源码&站库分离&MVC模型&解析受限&对应路径
安全·web安全·架构·mvc·安全架构
|_⊙2 小时前
Linux 深入理解文件(Ext2文件系统:上)
linux·运维·数据库
轻口味2 小时前
HarmonyOS 6.1 全栈实战录 - 09 极光底座:ArkWeb 6.1 性能、安全与视觉插帧全特性深度实战
pytorch·安全·harmonyos
kidwjb2 小时前
Linux共享内存
linux·服务器·进程间通信
红茶要加冰2 小时前
七、正则表达式
linux·运维·正则表达式·shell
Paranoid-up2 小时前
安全启动和安全固件更新(SBSFU)11:保护链:开发 / 量产 / SECURE_LOCK 三种模式
安全·iap·安全启动·安全升级·sbsfu