ASP.NET 開発者を狙う悪意の NuGet パッケージ:JIT フックでバックドアを設置

Malicious NuGet Packages Attacking ASP.NET Developers to Steal Login Credentials

2026/02/24 CyberSecurityNews — ASP.NET 開発者を標的とする、サプライ・チェーン攻撃が確認された。Web アプリケーション内に永続的バックドアを設置する目的で構築された、4 つの悪意の NuGet パッケージがログイン資格情報を窃取している。それらのパッケージは、NCryptYo/DOMOAuth 2 _/IRAOAuth 2.0/SimpleWriter _ であり、”hamzazaheer” と名乗る脅威アクターにより 2024年8月12日から 8月21日にかけて公開され、累計で 4,500 件超がダウンロードされている。

攻撃は意図的な欺瞞から始まる。”NCryptYo” は広く使用されている NCrypto パッケージをタイポ・スクワッティングし、暗号ライブラリを装う。DLL のファイル名 “NCrypt.dll” は Windows のネイティブ CNG 暗号プロバイダを模倣し、ネームスペースも Microsoft の暗号 API を模倣している。

最も重要な点は、アセンブリがロードされた瞬間に、静的コンストラクタが実行されるところにある。それは開発者がメソッドを呼び出す前に起動し、localhost のポート 7152 に隠しプロキシを展開し、攻撃者が制御する外部サーバへのトラフィックを中継する。

Socket.dev の研究者たちは、4 つのパッケージ間で共有されるインフラを追跡することで、このキャンペーン全体を特定した。その他の 3 パッケージである “DOMOAuth 2 _”、 “IRAOAuth 2.0″、”SimpleWriter _” においても、GZip 圧縮および独自の Base64 置換によりエンコードされた、バイト単位で同一のハードコード認証トークンが含まれている。この共通性が、同一のオペレーターにより構築された証拠となる。

VirusTotal analysis showing only 1 of 72 security vendors detecting NCrypt.dll, highlighting the challenges of detecting heavily obfuscated .NET malware (Source - Socket.dev)
VirusTotal analysis showing only 1 of 72 security vendors detecting NCrypt.dll, highlighting the challenges of detecting heavily obfuscated .NET malware (Source – Socket.dev)

VirusTotal の分析では、72 社のセキュリティ・ベンダー中わずか 1 社のみが “NCrypt.dll” を検知した。標準的な検知ツールからマルウェアを効果的に隠蔽する、高度な難読化技術の実態が明らかになった。

侵入が成功した後に、”DOMOAuth 2 _” および “IRAOAuth 2.0” は ASP.NET Identity データを静かに収集する。具体的には、ユーザー・アカウント ID/ロール割り当て/権限マッピングを取得し、ローカル・プロキシ経由で攻撃者サーバへ送信する。

その一方で、”SimpleWriter _” は PDF 変換ツールを装い、脅威アクターが制御するファイルをディスクへ書き込み、隠蔽プロセスを可視化されることなく実行する。この攻撃の標的は、開発者のワークステーションだけではなく、最終的にエンドユーザーに展開される、すべての本番アプリケーションへと広がっていく。

JIT フック:中核感染メカニズム

“NCryptYo” は、JIT コンパイラ・ハイジャック技術を用いる。通常、.NET ランタイムは、メソッド実行直前にコンパイルを行うが、そのプロセスに “NCryptYo” が独自フックを挿入する。その結果として、悪意のコードは実行時にのみ復号され、静的解析では不可視となり、セキュリティ・スキャナーに対して実際の挙動を隠蔽する。

前述の悪意の DLL は、.NET Reactor 難読化による保護を受け、14 日間の有効期限タイマーおよびアンチ・デバッグ・チェックを実装し、内部には 5 つの暗号化リソースを埋め込んでいる。最大のものは、攻撃者が管理するサーバへの隠しプロキシ・トンネル構築を担う 126 KB のペイロードである。

開発者にとって必要なことは、サードパーティ・ライブラリを導入する前に、パッケージ名/作者 ID/ダウンロード履歴を検証することだ。また、異常な localhost ポート通信の監視も必要である。セキュリティ・チームは、自動化された CI/CD パイプライン・スキャンを有効化し、難読化マーカー/スタティック・コンストラクタ悪用/暗号化ペイロード埋め込みを検査し、本番ビルドへ取り込む前に検出することが推奨される。