オープンソース・ソフトウェア(OSS)の開発を手がけるスイスのSonarSourceがこのほど、公式ブログ「PHP Supply Chain Attack on PEAR」において、PHPパッケージ管理ツールの「PEAR」に発見されたサプライチェーン攻撃につながる2件の脆弱性について伝えた。これらの脆弱性を悪用されると、ライブラリの開発者がアカウントを乗っ取られたり、PEARサーバーへのアクセス権利を奪取されたりする危険性があるという。
SonarSourceによれば、この2件はいずれも15年以上前から存在していたバグだという。1つ目のバグは、パスワードリセット機能において暗号的に安全でないmt_rand()関数が使用されていることに起因するもの。攻撃者に悪用されると、ライブラリ開発者のアカウントが乗っ取られ、意図しないうちに悪意のある改変を含んだリリースを公開される危険性がある。
2つ目は、CVE-2020-36193で追跡されているディレクトリトラバーザルの影響を受けるライブラリにpearwebが依存していることが原因の問題。攻撃者に悪用されると、対象のPEARサーバ上で任意のコードが実行され、結果的にPEARサーバに対する永続的なアクセスを取得される可能性があるという。
OSSのリポジトリに対するサプライチェーン攻撃は、そのリポジトリを利用する多くのユーザーや企業に甚大な被害をもたらす恐れがある。サプライチェーン攻撃による被害といえば、2020年に発生した、米SolarWindsのOrion Platformにバックドアが仕掛けられた事件が記憶に新しい。SolarWindsのケースでは、最終的に1万8000以上の組織が影響を受けたとされている。
PHP関連のニュースでは、2021年4月下旬に、PHPパッケージ管理ツールの「Composer」において、任意のコマンドを実行できる脆弱性が報告された。この脆弱性も、悪用されたら大規模なサプライチェーン攻撃につながる危険性があった。
近年ではPHPユーザーからの人気はPEARからComposerへ移っているものの、以前として人気のあるPEARパッケージでは月に数千回のダウンロードがあるとのこと。SonarSourceの記事では、PEARを使用しているユーザーに対して、よりコントリビューターコミュニティが活発なComposerへの移行を検討するように呼びかけている。