本报讯(记者胡珉琦)近日,中科院软件研究所(以下简称软件所)智能软件研究中心团队(以下简称团队)基于开源软件供应链重大基础设施,实现面向全网针对开源生态“投毒”攻击现象的持续监测。团队在开源软件存储库恶意扩展包检测中,发现Python官方扩展包仓库被恶意上传了8个恶意包及707个被成功“投毒”的开源项目。
所谓开源生态“投毒”,指的是攻击者利用软件供应商与最终用户之间的信任关系,在合法软件的开发、传播和升级过程中进行劫持或篡改,从而达到非法目的的攻击。
当前,有超过99%的商业软件包含开源软件,一旦具有大规模用户基础的开源软件存在安全漏洞,势必会影响整个软件产业甚至其他重要行业的供应链安全。因此,针对开源软件生产、分发、使用全过程的风险管理尤为重要。
“开源生态下,软件数量非常庞大,同时单个软件的代码规模也很大。这就使得过去基于规则的检测工具面临沉重的运行负担。而且,这些工具的检测目标比较宽泛,难以针对‘投毒’攻击进行精准打击。”软件所研究员、开源软件供应链重大基础设施技术负责人吴敬征解释道。
为此,团队自主研发了一种新型的恶意包分析工具。在Python恶意包的检测中,他们发现Python官方扩展包仓库被上传了8个恶意包,其中包含了恶意代码,存在巨大的安全隐患,比如窃取隐私信息、“种植”持久化后门、远程控制等一系列攻击活动。团队已经把8个恶意包上报给官方。
此外,团队还发现了707个被“投毒”成功的开源项目,其中85个发布在Python官方扩展包仓库,622个发布在公共代码托管平台。目前,团队已将这707个开源项目反馈给安全漏洞管理机构,其中17个漏洞已获得正式编号。