CVE-2025-14931CVE-2025-14931是Hugging Face smolagents库中的一个严重安全漏洞,CVSS评分达到满分10.0。该漏洞存在于smolagents框架的Remote Python Executor组件中,允许未经认证的远程攻击者通过特制的pickle数据执行任意代码。smolagents是Hugging Face推出的轻量级AI代理框架,广泛应用于自动化任务和AI工作流中。漏洞的根本原因在于程序在解析pickle序列化数据时缺乏对用户输入的充分验证,导致攻击者可以构造恶意序列化对象并在反序列化过程中触发代码执行。这是一个典型的反序列化漏洞,攻击者无需任何权限或用户交互即可完成攻击,危及其网络范围内的所有使用该框架的系统。由于AI代理框架通常具有较高的系统权限,此漏洞可能导致服务器完全沦陷、数据泄露和服务中断等严重后果。
该漏洞位于Hugging Face smolagents的Remote Python Executor模块中,具体问题出在对pickle数据的解析处理上。Python的pickle模块用于对象序列化和反序列化,但默认情况下不安全,因为它可以执行任意代码。当Remote Python Executor接收到用户提供的pickle数据时,程序没有对其进行安全验证就直接进行反序列化操作。攻击者可以构造一个包含恶意__reduce__()方法的pickle对象,该方法在反序列化时会被自动调用,从而执行攻击者指定的系统命令。例如,攻击者可以在__reduce__()方法中嵌入执行shell命令的代码,如反弹shell或下载恶意payload。由于该Executor组件通常以服务账户权限运行,攻击成功后攻击者将获得该账户下的完整系统权限,能够进行文件读写、横向移动或进一步渗透。ZDI编号为ZDI-CAN-28312。