漏洞概述 在APNG push-mode中,存在一个漏洞,允许攻击者通过忽略的chunk将受控数据 smuggle 到帧数据路径中。具体表现为,在调用 之前,没有先消耗chunk体和CRC字段,导致在后续调用 时,未消耗的chunk字节被重新解释为新的chunk头,从而允许攻击者控制的数据被 smuggle 到帧数据路径中。 影响范围 该漏洞影响使用libpng库处理APNG(动画PNG)文件的程序。攻击者可以利用此漏洞,通过构造特定的APNG文件,将恶意数据 smuggle 到帧数据路径中,可能导致信息泄露、代码执行等安全问题。 修复方案 修复方案是重构APNG push-mode中的discard paths,确保在调用 之前,先消耗chunk体和CRC字段。具体修改如下: 此修复确保了在处理APNG文件时,chunk体和CRC字段被正确消耗,防止了攻击者通过忽略的chunk smuggle 数据到帧数据路径中。