当前位置: 首页 > news >正文

cURL变量管理中的缓冲区越界读取漏洞分析

漏洞概述

在cURL的addvariable()函数(由setvariable()调用)中,代码为p->name分配内存时未为NUL终止符预留空间,直接复制nlen字节。随后,varcontent()等函数对此名称调用strlen(),假设其为NUL终止,这可能导致越界内存读取,造成程序崩溃(DoS)或潜在信息泄露。

源代码分析

问题代码位置https://github.com/curl/curl/blob/master/src/var.c

p = calloc(1, sizeof(struct tool_var) + nlen);
if(p) {memcpy(p->name, name, nlen);
}

数据结构定义

struct tool_var {struct tool_var *next;const char *content;size_t clen; /* content长度 */char name[1]; /* 作为结构体的一部分分配 */
};

复现步骤

  1. 克隆仓库并进入目录

    git clone https://github.com/curl/curl.git
    cd curl
    CFLAGS="-fsanitize=address,undefined -g -O1" ./configure
    make -j$(nproc)
    
  2. 通过setvariable()添加变量(例如:"TESTVAR=value")

  3. 使用varcontent()或varexpand()查找变量

  4. 通过ASAN/UBSAN日志观察崩溃或越界读取

影响评估

addvariable()未能对存储的变量名进行NUL终止,因此后续对strlen()的调用可能读取超出分配缓冲区的内存,导致程序立即崩溃。这会产生可用性影响(如果代码路径可访问,容易造成DoS),且越界读取可能暴露相邻内存,造成潜在的机密性问题。

项目方回应

cURL开发团队指出代码实际上是安全的,因为:

  • name[1]大小为1字节
  • 使用calloc分配结构体大小加上名称长度时,分配的最后一个字节在memcpy后保持为零

开发团队已添加注释以帮助后续代码阅读者理解:https://github.com/curl/curl/pull/19287

报告状态

  • 状态:不适用(Not Applicable)
  • 严重性:无评级
  • CVE ID:无
  • 赏金:无
  • 披露时间:2025年10月31日 11:35 UTC

报告最终被认定为非安全问题,但按照项目透明度政策被公开披露。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)

公众号二维码

公众号二维码

http://www.zskr.cn/news/52037.html

相关文章:

  • work 5
  • iOS 免费抓包工具怎么选?从基础代理到多协议分析的完整指南
  • Vmware17虚拟网络使用
  • 2025年33BL无刷电机批发厂家权威推荐榜单:110BLF无刷电机/57BLF无刷电机/42BLF无刷电机源头厂家精选
  • 2025 最新集成平台公司权威推荐榜:高性价比解决方案重磅发布,含老百姓大药房合作经验与国际测评认可
  • 2025敏感肌面霜选购指南,从泛红到维稳全搞定!5大温和修护品牌实测
  • 2025杭州好的留学机构有哪些
  • 2025成都最好的留学中介机构有哪些公司
  • 2025年电动护理床批发厂家权威推荐榜单:医院办公家具/医用医疗床/候诊椅源头厂家精选
  • 2025年新中式高定服装五大品牌权威推荐,诚信的新中式高定服装品牌色麦新中式层层把关品质优
  • OpenEuler安装Java + Mysql环境
  • 2025 年 11 月真空上料机厂家推荐排行榜,电动真空上料机,气动真空上料机,全自动真空上料机公司推荐
  • dubbo 版本 alibaba 和apache 对比
  • 2025杭州好的留学中介机构有哪些
  • 2025出国留学机构哪家好一点
  • 新手小白Typora中Markdown语法详解
  • 递归算法的复杂度分析
  • AI视频翻译
  • Gilab CICD使用ssh executor
  • 启点教育 —— 2015年11月17日 中午会议
  • ABC432 解题报告
  • 开发了一个电脑端剪切板管理器
  • 2025 年 11 月不锈钢球厂家推荐排行榜,316/304/420/440C/316L医用/304食品级/2Cr13/9Cr18Mo/实心/耐磨/抗酸碱/磁性/醒酒用不锈钢球公司推荐
  • 酵母展示抗体库:真核系统赋能的高效抗体发现与优化平台
  • MasterTheorem
  • Kairoa v1.1.0 发布,跨平台桌面开发者工具
  • 03.命题逻辑推理理论
  • 2025哪个澳洲留学机构好
  • 2025成都好的留学机构有哪些
  • 2.命题逻辑等值演算