CVE-2022-34918漏洞流程图

本文探讨了在代码中使用memcpy时可能导致的内存安全问题。具体而言,当ext长度不由set->dlen决定,而是依赖于用户可控的ctx中的desc初始化时,可能产生desc_len不等于set->len的情况,从而引发溢出。博客强调了对内存操作进行详尽检查的重要性,尤其是在跨越多个函数或模块的代码中,因为这类情况更容易导致溢出漏洞。
摘要由CSDN通过智能技术生成

在这里插入图片描述
如上图中memcpy处,ext的长度可以不是set->dlen的长度。
在这里插入图片描述
ext部分内存长度有tmpl中的dlen决定,tmpl由desc中的决定,desc在nft_data_init中初始化ctx中用户态可以控制的部分。当然这里的长度都是部分受限的,并不能随意设定。
而且最终的结果就是desc_len 可以不等于set->len造成溢出。

这个漏洞最大的启发其实是对内存的详细检测,有部分代码由于跨度很大,还是很容易造成溢出的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值