セキュリティ PR

初心者向けAIセキュリティ対策入門:攻撃も防御も“AI化”する時代のロードマップ

ai_security
記事内に商品プロモーションを含む場合があります

なぜ今「AIセキュリティ」か

AIは、守る側の脅威インテリジェンス検知・対応の自動化を強化する一方で、攻撃者にも高速かつ精巧な攻撃を可能にする“加速装置”になっています。たとえば、AIはインシデント対応の検知・封じ込めを自動化しますが、同じAIが攻撃側のフィッシングや偵察、誤情報工作も強化します。Splashtopの解説はこの「矛盾する二面性」を端的に示しています。splashtop.com+2splashtop.com+2

代表的なAI起因のリスク(まず全体像)

生成AI/LLMアプリに特有のリスク

  • プロンプトインジェクション(意図のすり替え)
  • 不適切な出力の取り扱い(モデル出力を無検証で実行)
  • データ/モデル汚染(学習・ベクトルDB・拡張コンテキストの毒入れ)
  • モデルDoS/コストDoS(高負荷要求で枯渇)
  • サプライチェーン(モデル/依存ライブラリ/ツール)
  • 機密情報の漏えい過剰な権限(エージェンシー)モデル盗難 など
    最新の OWASP Top 10 for LLMs が、発生しやすい失敗と対策を網羅しています。実装前に必読です。OWASP FoundationOWASP Gen AI Security Project

従来領域の強化版としてのリスク

  • スピアフィッシングの大量生成ディープフェイク音声・動画詐欺
  • 自動化された偵察と脆弱性探索パスワードスプレーの効率化
  • モデル抽出/逆コンパイル的手口対敵サンプル(Adversarial) など
    AI向けの脅威知識体系 MITRE ATLAS を活用すると、こうした攻撃をライフサイクルで整理できます。atlas.mitre.org

攻撃の“高度化”をもう少し具体化

  • 自動化ソーシャルエンジニアリング:企業の公開資料やSNSから文脈を吸い上げ、個別最適化した誘導文を量産。
  • ディープフェイク詐欺:決裁者の声/顔を偽造し送金承認を迫る。検知は「音声の不自然さ」より運用フローの二重確認で止めるのが現実的。
  • データ毒・モデル抽出:公開フォームやGitに仕込んだ“毒”でRAGや微調整を汚染、またはAPI応答からモデルの内部を推定する。
    こうしたテクニックはATLASやOWASPの脅威カテゴリに整理されています。atlas.mitre.orgOWASP Foundation

防御の“高度化”:AIを盾として使う

  • AI×脅威インテリジェンス/UEBA:ログや振る舞いを学習し、異常を早期検知。SIEM/XDRとAIの連携で初動を自動化。splashtop.com+1
  • ゼロトラストの強化:最小権限・継続検証を、AIの分析で細粒度に運用。たとえば権限上げやAPI濫用の兆候を自動隔離。splashtop.com
  • LLMアプリの多層防御:入力検査、出力検査、ツール実行ガード、外部コンテンツの検疫(RAG前処理)を段階的に足す。ガイダンスはOWASP LLM Top 10が実用的。OWASP Foundation
  • 脅威モデリング:AI特有の攻撃面(データ、モデル、パイプライン、RAG、プラグイン)をMITRE ATLASで洗い出し→対策マッピング。atlas.mitre.org

実務で使えるAIセキュリティ対策チェックリスト

スタートライン(個人・小規模)

  1. データ取り扱いの棚卸し:どのAIが何のデータに触れるか(個人情報・機密・公開)を分類。
  2. プロンプト/出力のログ化:監査可能にし、例外時の再現性を確保。
  3. 入力検査の導入:明示的な“指示上書き”やシステムプロンプト誘導を遮断。
  4. 出力検査の導入:コマンド・URL・ファイル操作など実行系は必ずバリデーション。
  5. 最小権限:LLMツールの外部権限(HTTP、ファイル、カレンダー等)を許可リストで限定。

チーム導入(内製アプリ/RAG運用)

  1. RAGの“検疫”:取り込む文書はマルウェア・毒データ・機微情報のフィルタを通す。
  2. ベクトルDBのガバナンス:メタデータで機密区分/アクセス制御。削除要求に応えるプロセス(忘れられる権利等)。
  3. コストDoS対策:入力長やツール回数、並列度、タイムアウトの上限を設定。
  4. 脅威モデリング+テーブルトップ演習:ATLASとOWASPの項目で“起きたら誰が何をするか”を決めておく。atlas.mitre.orgOWASP Foundation

企業・規制対応(高リスク/汎用AIの扱い)

  • NIST AI RMF 1.0と**Generative AIプロファイル(AI 600-1)**に沿って、リスク評価→管理→測定→ガバナンスのサイクルを運用。NISTNIST Publications
  • EU AI Act:ハイリスクAIは正確性・堅牢性・サイバーセキュリティが要求され、GPAI(汎用AI)の一部要件は2025年8月2日から適用。ガバナンス計画と技術文書、対敵試験、インシデント報告の備えを。ISACAEuropean ParliamentReuters+1Hunton Andrews Kurth

LLMアプリのガードレール実装例(TypeScript)

目的:入力検査出力検査ツール実行の制御コストDoS対策を最小コードで。

// 1) 入力検査:よくある“指示上書き”やシステム漏洩誘導をブロック
const injectionPatterns = [
  /ignore (all|previous) instructions/i,
  /reveal .*system prompt/i,
  /exfiltrate|leak .* secret/i,
  /run .*shell|execute .*command/i
];
export function isLikelyInjection(input: string): boolean {
  return injectionPatterns.some(rx => rx.test(input));
}

// 2) 出力検査:モデル出力を“そのまま実行”しない(JSON限定+スキーマ検証)
import { z } from "zod";
const ActionSchema = z.object({
  action: z.enum(["answer", "search", "book_meeting"]),
  query: z.string().max(200).optional()
});
export function safeParseAction(outputText: string) {
  try {
    const json = JSON.parse(outputText);
    return ActionSchema.safeParse(json); // success/failure で扱い分け
  } catch {
    return { success: false, error: "invalid-json" } as const;
  }
}

// 3) ツール実行の制御:許可リストで限定(例:HTTP先のドメイン)
const ALLOW_DOMAINS = new Set(["example.com", "api.example.com"]);
export async function safeFetch(urlStr: string) {
  const url = new URL(urlStr);
  if (!ALLOW_DOMAINS.has(url.hostname)) {
    throw new Error("domain-not-allowed");
  }
  const res = await fetch(url.toString(), { method: "GET" });
  return res;
}

// 4) コストDoS対策:トークン・回数・時間の上限
export const LLM_LIMITS = {
  maxInputChars: 4000,
  maxToolCalls: 3,
  timeoutMs: 8000
};

上記はOWASP LLM Top 10の「入力/出力の取り扱い」「過剰なエージェンシー」「モデルDoS」への基本対策を簡略化したものです。実運用では、プロンプト分離(システム・開発者・ユーザ)、外部コンテンツのサニタイズ、PII検出、機微出力のマスキング、アドバーサリアルテスト(赤チーム)まで拡張してください。OWASP FoundationEvidently AI

規格・法規制に沿った運用の要点

  • NIST AI RMF 1.0:設計から運用までのリスク管理プロセスの枠組み。経営層の責任(ガバナンス)と測定(指標)を明示。生成AI向けのプロファイル(AI 600-1)が補助線になります。NISTNIST Publications
  • EU AI Act:リスクベースの義務。高リスクはサイバーセキュリティ保全、レジリエンス、監視・ログ、データガバナンスなどが求められます。GPAIの追加要件(透明性・著作権配慮・安全性)は2025年以降段階適用。Ius LaborisDigital StrategyReuters

よくある落とし穴

  • 「AIだから大丈夫」問題:過信して出力を無検証で実行→出力検査人手の承認フローを入れる。OWASP Foundation
  • データガバナンス欠如:RAGに“毒”が混入→取り込み前の検疫削除リクエスト対応を制度化。OWASP Foundation
  • 対策が一度きりNIST AI RMFの循環で定期見直しを。NIST

今日から始める3アクション

  1. 入力/出力検査の雛形を入れる(上のTypeScriptをそのまま流用OK)。
  2. 最小権限の許可リストでツール実行を制御。
  3. NIST AI RMFの章立てで現状のリスクを棚卸しし、OWASP LLM Top 10で実装差分を埋める。NISTOWASP Foundation