Openssl Infinite Loop 漏洞(CVE-2022-0778)

Openssl Infinite Loop 漏洞(CVE-2022-0778)

1. 漏洞详情

在该漏洞中由于证书解析时使用的 BN_mod_sqrt() 函数存在一个错误,它会导致在非质数的情况下永远循环。可通过生成包含无效的显式曲线参数的证书来触发无限循环。由于证书解析是在验证证书签名之前进行的,因此任何解析外部提供的证书的程序都可能受到拒绝服务攻击。此外,当解析特制的私钥时(包含显式椭圆曲线参数),也可以触发无限循环。

任何使用BN_mod_sqrt()的其他应用程序,如果可以控制参数值,也会受到此漏洞影响。需要注意的是,任何需要证书中公钥的操作都会触发无限循环,特别是自签名的证书,在验证证书签名时会触发循环。

2. 漏洞复现

启动相应的docker容器

docker-compose up -d

我们根据这个项目来构建和运行存在恶意的服务器,如果没有 Golang 编译器,只需使用 Docker 镜像:

docker run -it --rm -p 12345:12345 yywing/cve-2022-0778 --addr 0.0.0.0:12345

我们的思路是实现DDos攻击即看CPU负载程度是怎么样的,所以我们得先监控内部CPU利用率

docker-compose exec curl top

因为该漏洞可以在解析证书的时候调用有问题的函数BN所以我们可以通过cURL来实现漏洞

进入容器内部,使用cURL启动上面建立的服务器

docker-compose exec curl bash

curl -k https://host.docker.internal:12345

此时,curl就会陷入死循环中,查看CPU会看到被全部占用。

相关推荐
百结2148 小时前
Nginx安全防护与HTTPS部署实战笔记
nginx·安全·https
_下雨天.8 小时前
Nginx安全防护与HTTPS部署实战笔记
nginx·安全·https
上海云盾-小余11 小时前
等保 2.0 全攻略:企业合规建设与安全防护一站式指南
安全
萌兰三太子12 小时前
企业级 AI 智能体平台安全沙箱在 E2B 中的实现
人工智能·安全
卢傢蕊12 小时前
Nginx安全防护与HTTPS部署实战
nginx·安全·https
胖头鱼的鱼缸(尹海文)13 小时前
数据库管理-第411期 OpenClaw进阶实战:升级+网关安全+飞书对接一次性搞定(20260315)
安全·飞书·openclaw
yhdata14 小时前
年复合增速11.5%!智慧安全巡检机器人,锚定未来六年高成长新航向
人工智能·安全·机器人
CodeCraft Studio14 小时前
Parasoft C/C++嵌入式软件测试解决方案:安全、可靠且符合标准
开发语言·c++·安全·单元测试·代码规范·parasoft·嵌入式软件测试
KKKlucifer14 小时前
数据资产化背景下的分类分级技术架构设计
人工智能·安全·重构
cramer_50h15 小时前
网络安全技术研究:渗透测试环境和APP安全测试教程(二)
安全·web安全