Defender CLIでMicrosoft Security Exposure ManagementのCodename MDASHを利用しているチームにとって、今回の更新は「従来プロファイルの置き換え」ではなく「新しい選択肢の追加」です。
新しいmai-augmented-profileでは、既存の必須モデルにサイバーセキュリティ特化モデルのMAI-Cyber-1-Flashが追加されます。一方、従来のモデル構成を使うgpt-general-profileも引き続き選択できます。機能はプライベートプレビューであるため、最初から全リポジトリを切り替えるのではなく、同一コードを2つのプロファイルでスキャンし、検出内容やトークン消費量を比較してから適用範囲を広げるのが現実的です。(Microsoft Learn)
Defender CLI向けMDASH更新で変わったこと
Codename MDASHは、複数のAIモデルと専門エージェントを組み合わせて、リポジトリ内の脆弱性を検出するエージェント型コードスキャナーです。一般的な静的解析だけに依存せず、リスクの高いファイルの優先付け、脆弱性クラス別の解析、検証、重複排除までを複数段階で実行します。(Microsoft Learn)
今回の更新により、Defender CLIからスキャンを実行するときに、次の2つのスキャンプロファイルを選択できるようになりました。
| プロファイル | 使用するモデル | 位置付け |
|---|---|---|
gpt-general-profile | GPT-5.4、GPT-5.3-Codex、GPT-5.4-Mini | 従来の汎用モデル構成を使うベースライン |
mai-augmented-profile | GPT-5.4、GPT-5.3-Codex、GPT-5.4-Mini、MAI-Cyber-1-Flash | ベースラインにサイバー特化モデルを追加したプレビュー構成 |
重要なのは、MAI-Cyber-1-Flashが既存モデルを置き換えるのではない点です。mai-augmented-profileは、従来の3モデルを維持したうえで、サイバーセキュリティに特化したモデルを追加する構成です。(Microsoft Learn)
MAI-Cyber-1-Flashを含むMDASHスキャンプロファイルの選び方
プロファイルを選ぶときは、単純に「新しい方がよい」と判断するのではなく、スキャンの目的と運用段階で使い分けます。
| 判断基準 | gpt-general-profile | mai-augmented-profile |
|---|---|---|
| 主な用途 | 従来構成での標準スキャン | サイバー特化モデルを加えた追加検証 |
| 過去結果との比較 | 比較しやすい | モデル構成が異なるため差分確認が必要 |
| Foundryのモデル準備 | 必須3モデル | 必須3モデルに加えてMAI-Cyber-1-Flashが必要 |
| 導入初期の位置付け | 比較基準として維持 | 一部リポジトリで試験導入 |
| CI/CDでの利用 | 既存運用を維持しやすい | 非ブロッキングから始めるのが安全 |
| 適したコード | 一般的なリポジトリ | 認証、権限、外部公開API、機密情報処理など重要度の高いコード |
gpt-general-profileを維持しやすいケース
既存のスキャン結果を基準に継続的な推移を確認したい場合は、gpt-general-profileを維持するのが適しています。
たとえば、検出件数を月次で比較している環境や、スキャン結果によってビルドを停止するCI/CDでは、モデル構成を急に変更すると結果の増減原因を判断しにくくなります。まずベースラインを残し、MAI-Augmentedの結果を別に評価すると、モデル変更による差分を把握しやすくなります。
mai-augmented-profileを試しやすいケース
次のようなリポジトリでは、MAI-Augmentedを優先的に検証する価値があります。
- インターネットから直接アクセスされるWebアプリケーション
- 認証、認可、セッション管理を実装しているコード
- 決済、個人情報、秘密情報を扱うサービス
- C、C++など、メモリ安全性の検証が重要なコード
- 過去に脆弱性やインシデントが発生したリポジトリ
- 静的解析だけでは判断しにくい複雑なデータフローを持つコード
ただし、プライベートプレビュー段階では、MAI-Augmentedの結果だけでマージやリリースを自動停止するより、最初は警告のみの非ブロッキング運用にする方が安全です。
迷ったら「置き換え」ではなく「比較」で判断する
実務では、gpt-general-profileを対照群、mai-augmented-profileを評価対象として扱います。
同じコミット、同じブランチ、同じスキャン対象を使って両方を実行し、MAI-Augmentedで追加された検出のうち、実際に修正が必要なものがどれだけあるかを確認します。この比較を行わずに全面移行すると、検出件数が増えた理由が、性能向上なのか誤検知増加なのか判断できません。
MAI-Augmentedを使う前に確認すべき前提条件
mai-augmented-profileは、CLIオプションを指定するだけでは利用できません。Microsoft Foundry側のモデルデプロイや、MDASHへの接続設定が必要です。
| 確認項目 | 必要な対応 |
|---|---|
| プレビュー利用資格 | 対象テナントでCodename MDASHのプライベートプレビューを利用できることを確認する |
| Microsoft Foundry | MDASH専用のFoundryリソースまたはエンドポイントを用意する |
| ベースモデル | GPT-5.4、GPT-5.3-Codex、GPT-5.4-Miniをそれぞれデプロイする |
| MAIモデル | MAI-Cyber-1-Flashを追加でデプロイする |
| TPM設定 | ベース3モデルについて、各デプロイメントを100万TPM以上に設定する |
| コンテンツフィルター | MDASH向けのフィルター設定をモデルデプロイメントに関連付ける |
| Defender RBAC | スキャン実行と結果アップロードに必要な権限を割り当てる |
| CLI認証 | ローカル利用では対話型認証、CI/CDではアプリベース認証を構成する |
公式ドキュメントでは、MDASHがセキュリティ関連コードを解析するときに、通常のコンテンツフィルターで処理が止まる可能性があるため、専用のFoundryエンドポイントを用意するよう案内されています。フィルター設定が意図的に緩和されるため、一般的な生成AIアプリケーションと同じエンドポイントを共有しないことが重要です。(Microsoft Learn)
Defender unified RBACでは、少なくともスキャン実行用のRun scan (Manage)と、CLIから結果を送信するためのUpload results (Manage)を確認します。結果をMicrosoft Defenderポータルで閲覧する担当者には、Scan results (Read)も必要です。CI/CDでアプリ認証を使う場合は、Microsoft Entraアプリ側でAIScan.enabledやAIScan.Uploadなどの権限を設定します。(Microsoft Learn)
プレビュー中は実テナントの表示を優先する
公式のWhat’s Newでは、MAI-AugmentedがDefender CLIに加えてMicrosoft Defenderポータルのオンデマンドスキャンにも拡張されたと案内されています。一方、Foundry設定ページには、MAI-Cyber-1-FlashをCLIスキャン向けとする記述が残っている箇所があります。プレビュー文書の更新タイミングに差があると考えられるため、実際の利用可否は、テナントの「Manage scans」画面とDefender CLIのプロファイル一覧で確認するのが確実です。(Microsoft Learn)
Defender CLIでプロファイルを確認してスキャンする手順
利用可能なプロファイルを確認する
最初に、現在利用できるプロファイルと既定値を確認します。
defender scan profile model list
defender scan profile model show-default
プライベートプレビューでは、テナントやCLIバージョンによって利用可能な機能が変わる可能性があります。mai-augmented-profileを指定する前に、必ず一覧へ表示されることを確認してください。
また、CI/CDでは既定プロファイルに依存せず、使用するプロファイル名を明示する方が再現性を保ちやすくなります。
GPT-Generalでスキャンする
現在のディレクトリを、従来のモデル構成でスキャンする例です。
defender scan ai-scan submit . --model-profile gpt-general-profile
この結果をMAI-Augmentedとの比較基準として保存します。
MAI-Augmentedでスキャンする
同じディレクトリをMAI-Cyber-1-Flashを含む構成でスキャンします。
defender scan ai-scan submit . --model-profile mai-augmented-profile
--model-profileの指定は、そのスキャンだけに適用され、既定プロファイルを恒久的に変更するものではありません。Windowsでバイナリをdefender.exeとして保存している場合は、コマンド先頭をdefender.exeに置き換えます。(Microsoft Learn)
2つのプロファイルを比較するときに見るべき指標
単純な検出件数だけでは、MAI-Augmentedの有効性を正しく判断できません。次の指標を組み合わせて確認します。
| 評価軸 | 確認する内容 | 判断のポイント |
|---|---|---|
| 新規検出 | MAI-Augmentedだけが検出した項目 | 実際に攻撃経路として成立するか |
| 重大度 | Critical、Highの件数 | 重大な追加検出があるか |
| AI検証結果 | Validated by AI scanner | 優先して人が確認すべき項目 |
| 要調査項目 | Flagged for review | AIだけで確定できなかった高重大度項目 |
| 誤検知 | 人が確認して問題なしと判断した割合 | レビュー負荷が許容範囲か |
| トークン消費 | 各スキャンで消費したトークン | 検出価値とコストが見合うか |
| 実行時間 | 完了までの時間や失敗率 | CI/CDの待ち時間に影響しないか |
| 再現性 | 再スキャン時の検出差 | 安定した運用が可能か |
MDASHのイニシアチブ画面では、検出結果が「Validated by AI scanner」「Flagged for review」「Low priority」に分類されます。また、CLIスキャンとリモートスキャンの区別、実行状態、消費トークンも確認できます。(Microsoft Learn)
比較検証は、次の順番で進めると判断しやすくなります。
- 比較対象のコミットIDを固定する
gpt-general-profileでスキャンする- 同じコードを
mai-augmented-profileでスキャンする - MAI-Augmentedで増えたCritical、Highの項目を人が確認する
- 誤検知、トークン消費、実行時間を記録する
- 重要リポジトリから段階的に適用範囲を広げる
プロファイルの評価中にコードを変更すると、モデル差とコード差を切り分けられません。必ず同一コミットで比較することが重要です。
Microsoft公表の性能とコストをどう読むか
Microsoftは、MDASHとMAI-Cyber-1-Flashを組み合わせた構成について、CyberGymベンチマークで約96%を記録し、従来のGPT-5.4、GPT-5.4-Mini、GPT-5.3-Codex構成と比べて約50%のコスト削減になったと説明しています。MAI-Cyber-1-Flashは、MAI-Thinking-1系列から派生した、コードとセキュリティ処理に重点を置くコンパクトなモデルとされています。(Microsoft AI)
ただし、この数字はMicrosoftが公表した特定のベンチマークと構成に基づく結果です。自社リポジトリで検出率が必ず同じ割合で上がる、あるいはスキャン費用が必ず半分になることを意味しません。
実際の効果は、リポジトリの規模、言語、コードの複雑さ、脆弱性の種類、スキャン対象範囲などによって変わります。導入判断には、公表値だけでなく、自社環境でのトークン消費と有効な追加検出数を使うべきです。
MAI-Augmented運用で失敗しやすいポイント
MAI-Cyber-1-Flashが自動で追加されると思い込む
プロファイルが一覧に表示されても、Foundry側に必要なモデルが正しくデプロイされていなければスキャンは実行できません。
既存の3モデルだけをデプロイした環境では、gpt-general-profileは利用できても、mai-augmented-profileは利用できない可能性があります。モデル名、デプロイ状態、エンドポイントへの関連付けを確認してください。(Microsoft Learn)
CI/CDで既定プロファイルだけに依存する
CI/CDのコマンドにプロファイル名を書かず、既定値だけに依存すると、プレビュー中の設定変更によってスキャン条件が変わる可能性があります。
比較可能な結果を残したい場合は、次のように明示します。
defender scan ai-scan submit . --model-profile gpt-general-profile
または、
defender scan ai-scan submit . --model-profile mai-augmented-profile
プロファイル変更は、コード変更と同様にレビュー対象として管理するのが安全です。
検出件数の多さだけで性能を判断する
検出件数が増えても、その多くが誤検知なら、セキュリティ担当者と開発者の確認負荷が増えるだけです。
「追加で何件見つかったか」ではなく、「追加検出のうち何件が修正対象になったか」を記録してください。特にFlagged for reviewは、AIが完全に検証できなかった高重大度項目であるため、人による調査が必要です。(Microsoft Learn)
大量のリポジトリを一度にスキャンする
評価前に全リポジトリへ展開すると、トークン消費やレビュー対象が急増する可能性があります。
また、実行中のスキャンをキャンセルしても、それまでに消費されたトークンは返還されません。最初は代表的な1~3リポジトリに限定し、1回当たりの消費量を確認してから拡大してください。(Microsoft Learn)
まずは1リポジトリで段階導入する
今回の更新により、Defender CLIのMDASHスキャンでは、従来のgpt-general-profileを維持しながら、MAI-Cyber-1-Flashを含むmai-augmented-profileを選べるようになりました。
導入時は、次の順序で進めます。
- テナントでプライベートプレビューとプロファイル一覧を確認する
- FoundryにMAI-Cyber-1-Flashを追加し、必要な権限とフィルターを設定する
- 同じコミットを2つのプロファイルでスキャンする
- 有効な追加検出、誤検知、トークン消費、実行時間を比較する
- 効果が確認できたリポジトリから段階的に展開する
既存プロファイルを残したまま比較できる点が、今回の更新の大きな利点です。まずはセキュリティ上の重要度が高い1リポジトリを選び、--model-profileを明示した比較スキャンから始めるとよいでしょう。

コメント