【#も読】新卒セキュリティ育成の現場/Next.js侵害インシデント/AIによるマルウェア解析自動化/タスクインジェクション攻撃(@yousukezan)のトップ画像

【#も読】新卒セキュリティ育成の現場/Next.js侵害インシデント/AIによるマルウェア解析自動化/タスクインジェクション攻撃(@yousukezan)

投稿日時:
東内 裕二のアイコン

三井物産セキュアディレクション株式会社 / セキュリティエンジニア

東内 裕二

Xアカウントリンク

「あの人も読んでる」略して「も読」。さまざまな寄稿者が最近気になった情報や話題をシェアする企画です。他のテックな人たちがどんな情報を追っているのか、ちょっと覗いてみませんか?


こんにちは。東内(@yousukezan)です。
相変わらず引きこもってAIとセキュリティの記事を中心に読んでいます。昨年末はAdvent Calendarのおかげでたくさんの良質な日本語記事が投稿されました。読む側としてはありがたい限りです。
それでは、最近読んで良かったコンテンツの一部を紹介します。

セキュリティ未経験の新卒が2ヶ月でセキュリティスキルの基礎を身につけた話

若手のスキルアップに携わる機会がたまにあるのですが、体系的で効率的な学習方法はどうすればいいのかといったことを考えることも多いです。本記事は、セキュリティ未経験で入社した新卒エンジニアが、わずか2ヶ月間の「BootUP研修」を通じてセキュリティスキルの基礎を身につけた経験を振り返った記録です。配属当初、プログラミング経験こそあったものの、セキュリティの実践的知識はほぼゼロの状態だった筆者が、認証・認可という重要な業務を担うに当たり、セキュリティ知識の必要性から研修に参加した記録です。

研修はITやネットワークの基礎から始まり、脆弱性診断、セキュアコーディング、インシデント対応、ハードニング演習など、座学とハンズオンを組み合わせた実践的な内容で構成されています。特に印象的だったのは、SQLインジェクションなどの脆弱性を攻撃者視点で検証し、その後防御策を実装するという、攻撃と防御の両面から学べた点だということです。

また、研修ではPython/Flaskを用いたWebアプリケーション開発演習も行い、パスワード管理やXSS対策など、セキュリティ要件を意識した実装を経験しています。これにより、書籍知識にとどまらず「実際にどう実装するか」を理解できたということです。さらに、実際のサイバー攻撃を想定したインシデントレスポンス演習では、ログ分析や封じ込め対応をチームで行い、現場に近い緊張感を体験しています。

これらの研修を通じて、筆者はセキュリティエンジニアとしての共通言語や考え方を習得し、実務理解度が大きく向上したと述べています。加えて、情報処理安全確保支援士試験においても、実体験に基づいて問題に取り組めた点が大きな成果だったとしています。未経験からでも、適切な環境があれば短期間で実践的なセキュリティスキルを身につけられることが分かります。

セキュリティに初心者のエンジニアだけでなく、新卒・若手育成に関わる立場の人にとっても、学習設計や期待値の置き方を考えるヒントが詰まった一編といえるでしょう。

Next.jsの脆弱性を数日放置したら暗号通貨マイナーを仕込まれた話

12月に公表されたNext.jsクリティカルなリモートコード実行(RCE)脆弱性 (CVE-2025-55182)は「React2Shell」と名付けられ、さまざまなところからたくさんの攻撃が行われています。この記事ではこの脆弱性を放置していたら、運用中のNext.jsアプリが実際に侵害され、暗号通貨マイナーやバックドアが仕込まれてしまったという実例がつづられています。Webアプリケーション運用者にとって、まさに他人事ではないインシデントレポート記事です。

発端は、CVE-2025-55182が公開された後わずか2日間だけ放置してしまったことでした。ある日、アプリの動作が極端に遅くなり、CPU使用率が100%超に張り付いていることに気づき調査したところ、Moneroマイナーが実行されていることが判明します。幸いPM2のログが残っており、攻撃の痕跡を追うことができました。

調査の結果、攻撃は段階的に行われていたことが分かります。まずCVE公開前から偵察が始まり、.git/configや.envなどの探索が大量に実行されていました。その後、CVE-2025-55182を悪用してコード実行に成功し、複数のマルウェアやバックドアがダウンロード・展開されます。マルウェアは正規プロセス名を装い、crontabの@rebootを使って永続化され、さらに他の攻撃者のマイナーを排除する仕組みまで備えていました。全体の被害としては、合計12ファイル・約100MB超のマルウェアが確認され、すべて削除したが、RCEによりサーバー内部の認証情報が漏えいした可能性が否定できず、鍵やトークンはすべてローテーションしたということです。

記事の後半では、これを踏まえた今回の被害を防ぐための実践的な対策も具体的に提案されています。即時の脆弱性対応、WAFやRate Limitingの導入、ログ監視の自動化といった基本的な防御策から、侵害発見後のチェックリストまで、現場運用者がすぐに役立てられる内容です。さらに、侵害後に内部認証情報のローテーションや不要ファイルの除去などの復旧手順も整理されています。

脆弱性公開を情報として受け止めるだけでなく、迅速に対処することの重要性を痛感させる記事といえます。

VirusTotal API + Geminiでマルウェア解析レポートを自動生成させてみる

セキュリティの世界でもさまざまなことが生成AIによって代行されるようになっており、筆者の関わっている脆弱性診断の分野でも診断からレポートの作成までさまざまな箇所でAIに代行させる試みが行われています。

本記事では、どちらも無料のVirusTotalのPublic APIとGoogleの生成AIであるGemini(Gemini 2.5 Flash)を組み合わせて、コストを掛けずにマルウェア解析レポートを自動生成する仕組みの検証結果が紹介されています。VirusTotal APIで取得できるJSONデータは情報量が多く、人が一つひとつ読み解くのは手間がかかります。そこで、その解析作業をAIに任せ、レポートとして整形させることで、効率的な検体調査ができないかを試みています。

実装では、Discord Botをインターフェースとして採用し、ハッシュ値を入力するとVirusTotal APIから検体情報を取得し、それをGeminiに渡して解析レポートを生成します。レポートの構成はプロンプトで細かく指定されており、ファイルの基本情報、VirusTotalでの検出状況、サンドボックスの解析結果、C2情報、さらにはEDR製品で利用可能な脅威ハンティングクエリまで含める設計となっています。Discordの文字数制限を考慮し、AIの出力を分割送信する工夫も行われています。

検証では、実際のマルウェア(Qilinランサムウェア)、PUA(PC App Store)、正規のインストーラ(Discord)といった複数の検体を対象に評価が行われました。マルウェアファミリの特定や静的情報の要約については精度が高く、特に検体の概要を把握する用途では十分に実用的であることが確認されています。一方で、Public APIではサンドボックスの詳細な挙動情報が取得できないため、動的解析や脅威ハンティングクエリの精度には限界がある点も明らかになりました。

この仕組みは「大量の検体を短時間で俯瞰的に把握したい」という場面に向いており、初動トリアージや情報収集の効率化に有効だと評価されています。Premium APIや外部のサンドボックス情報を組み合わせることで、さらに実務レベルに近いレポート生成が期待できる点も示唆されており、AIを活用したマルウェア解析の可能性を感じさせる内容となっています。

Task Injection – Exploiting agency of autonomous AI agents

近年のAIはWebページを操作したり、ログイン後の画面で作業したりする「自律的なエージェント」へと進化しています。こうしたAIは私たちの作業を大きく効率化する一方で、新しいタイプのセキュリティリスクも生み出しています。本記事は、そうした新しい課題の一つである「タスクインジェクション攻撃」について詳しく解説した記事です。筆者の小勝さんは有名なバグハンターで、現在はAIセキュリティの攻撃手法について研究されています。

本記事では、従来から知られている「プロンプトインジェクション」との違いを明確にしながら、より高度で発見が難しい「タスクインジェクション」の危険性を紹介しています。プロンプトインジェクションは、AIに与えられるデータの中に不正な指示を埋め込み、本来の指示を上書きさせる攻撃手法です。一方、タスクインジェクションは、AIエージェントがタスクを遂行する過程で「一見正当そうに見えるサブタスク」を実行させ、その結果として不正行為や情報漏えいを引き起こします。

特にこの攻撃手法が問題となるのは、AIが自律的に判断し、複数の手順を踏んでタスクを完了させるエージェント型システムです。記事では、OpenAIのAIエージェント「Operator」で実際に見つかった事例が紹介されています。Webページの要約を依頼しただけにもかかわらず、ページ内に仕込まれた擬似的なCAPTCHAやエラーレポート指示を実行してしまい、ユーザーのメールアドレスやOAuthコードといった機密情報を漏えいさせる可能性があることが具体的に説明されています。

また、こうした攻撃は、既存のプロンプトインジェクション対策をすり抜けやすい点も指摘されています。テキストとしては自然で、タスクの流れとしても不自然ではないため、AIの安全チェックやアクション整合性の検証を回避できてしまうのです。特に「不具合の再現」や「CTF問題の解決」など、もともと不正な環境に触れることが前提のタスクは、タスクインジェクションと非常に相性が良いとされています。

記事の結論では、モデルレベルの安全対策だけでは不十分であり、実行時のポリシー制御や人間による確認プロセスなど、より決定論的かつ多層的な防御が不可欠であると述べられています。AIエージェントが今後さらに高機能化・個人化していく中で、タスクインジェクションは無視できない脅威となるでしょう。

東内さんの「も読」過去記事