axiosのnpm侵害が波紋 悪意ある1.14.1と0.30.4は直ちに隔離対象

2026年3月31日、Hacker NewsではJavaScript ecosystem全体に影響し得るnpm supply-chain incidentが急速に共有された。StepSecurityがaxiosの悪意あるreleaseを公開した後、同日のHN threadは720 pointsと233 commentsを超え、広く使われるHTTP clientが標的になったことへの警戒が一気に高まった。

何が起きたのか

StepSecurityのincident reportによれば、問題のversionはaxios@1.14.1とaxios@0.30.4だ。報告では、lead maintainerの盗まれたnpm credentialsが使われ、通常のGitHub ActionsとOIDC Trusted Publisher経路を通らずに手動publishされたとされている。攻撃者はaccount emailもProtonMail addressへ変更したという。

悪意あるaxios packageにはplain-crypto-js@4.2.1というruntime dependencyが追加された。

このdependencyはaxios source codeではimportされておらず、postinstall scriptを動かすためだけに使われたとStepSecurityは見ている。

そのscriptはmacOS、Windows、Linuxを狙うcross-platform RAT dropperとして動作し、live C2 serverへ接続したと報告されている。

タイムラインも具体的だ。先に正常に見えるdecoy packageが公開され、その後に悪意あるplain-crypto-js@4.2.1、さらに39分差で2つのaxios releaseが投入された。その後npmは該当するaxios versionを削除し、dependencyをsecurity-holder stubへ置き換えた。StepSecurityの結論は明確で、axios@1.14.1またはaxios@0.30.4を入れたsystemは侵害済みとして扱うべきだとしている。

なぜ重要か

今回のincidentが厄介なのは、axios本体のsource codeに露骨な悪意ある変更を入れず、dependency graphとinstall時実行を悪用した点にある。つまりapplication codeのdiffだけでは見抜きにくく、registry provenance、trusted publishing、想定外のpostinstall挙動を合わせて確認しなければならない。

JavaScript dependencyをpinしたり監査したりするチームにとって、これは公開元metadataとCI発行経路の確認が不可欠だという再確認になる。原典はStepSecurity write-up、コミュニティ反応はHacker News threadで追える。