CVE-2026-22609Fickling是一个Python pickle反编译器和静态分析工具。该工具用于检测恶意pickle文件中的不安全代码。然而在0.1.7版本之前,Fickling的unsafe_imports()方法存在安全漏洞,无法正确标记多个可用于任意代码执行的高风险Python模块。攻击者可以利用这个漏洞构造恶意pickle文件,导入这些被遗漏的危险模块,从而绕过Fickling的主要静态安全检查机制,执行任意代码。由于Fickling通常被用作Python应用的安全防护层,此漏洞可能导致依赖该工具进行安全检测的系统面临严重的代码执行风险。该漏洞已在0.1.7版本中得到修复。
Fickling的静态分析器通过unsafe_imports()方法检查pickle文件中导入的模块,识别潜在的危险操作。该方法维护了一个高风险模块列表,用于判断pickle是否包含恶意代码。在0.1.7之前的版本中,这个列表不完整,缺少了多个可用于代码执行的标准库模块。攻击者可以构造包含这些被遗漏模块的恶意pickle文件,例如使用subprocess、os、pty等模块来执行系统命令或启动交互式shell。由于这些模块未被标记为不安全,Fickling会将其判定为安全文件,从而绕过静态分析检查。恶意pickle可以通过钓鱼邮件、恶意文件上传或供应链攻击等途径传递给受害者。