CVE-2025-10158CVE-2025-10158是rsync软件中的一个安全漏洞,攻击者(恶意rsync客户端)可以在文件传输过程中触发堆缓冲区的越界读取。该漏洞的根本原因在于rsync在处理接收到的数据时使用了负数组索引,当恶意客户端精心构造特定的数据包时,可以导致程序在堆内存中进行负索引访问,从而读取不该访问的内存区域。攻击者需要至少拥有对远程rsync模块的读取权限才能利用此漏洞。虽然该漏洞的CVSS评分仅为4.3(中等严重程度),且主要影响机密性(低)和完整性(低),可用性不受影响,但越界读取仍可能导致敏感信息泄露,如内存中的密钥、配置信息或其他进程数据。此漏洞由Rapid7安全团队发现并报告。
该漏洞存在于rsync的文件传输接收逻辑中。当rsync作为服务器端(发送端)运行时,接收端客户端可以通过协议通信影响服务器端的数据处理流程。恶意客户端利用rsync协议中的特定字段或消息类型,通过精心构造的数据包触发rsync服务器端代码中的负数组索引操作。具体而言,当rsync处理文件列表或数据块映射时,如果客户端提供的索引值经过计算后变为负数,而代码未对该负值进行充分验证就直接用作数组下标,将导致访问堆缓冲区边界之前的内存区域。这种越界读取不会直接导致程序崩溃(因为只是读取),但可以泄露堆内存中的敏感数据。攻击成功的关键在于攻击者需要与目标rsync服务器建立有效的连接,并具有至少读取权限才能进行文件同步操作,从而触发漏洞代码路径。