コンテンツまでスキップ
日本語
  • 検索フィールドが空なので、候補はありません。

【AI活用ガイド】複合プロンプトと分割プロンプトの挙動比較と推奨ベストプラクティス

本記事では、AIエージェントへの問い合わせを使用する際、プロンプトの構成方法によって回答の精度や挙動がどのように変化するかを解説します。

概要

本記事では、AIエージェントへの問い合わせを使用する際、プロンプトの構成方法によって回答の精度や挙動がどのように変化するかを解説します。

具体的には、「一度に複数の指示を出す場合(複合プロンプト)」と「段階的に質問する場合(分割質問)」の違いを分析し、正確性が求められるテクニカル業務における推奨アプローチを定義します。

1.プロンプト構成による挙動の違い

FortiGateの脆弱性調査を例に、2つのアプローチの違いを比較します。

例1:複合プロンプト(一つのプロンプトに複数要求)

Fortinet社FortiGate 80F FortiOS v7.2.10を使用しています。当該バージョンに関連する脆弱性情報および影響範囲について詳しく説明してください。また、脆弱性対策済みの推奨ファームウェアバージョンがありましたら、リスト化して報告してください。 なお、回答を作成する際に参照した主な出典ドキュメント名と、可能であれば該当章・セクションを列挙してください。 また、リスク低減策としては、影響するSSL-VPN機能を一時的に無効化する方法を詳しく説明してください。

アプローチ:

「脆弱性情報」「推奨ファームウェア」「出典」「回避策(SSL-VPN無効化)」など、すべての要求を1つのプロンプトに詰め込む方法。

AIの挙動とリスク:

  • 注意配分の分散: LLM(大規模言語モデル)は、確率的に「文章のどこに重点を置くか」を決定します。複数のタスクが混在すると、ある回では「脆弱性の説明」が詳細になる一方で「出典」が疎かになるなど、出力の優先順位が都度変動します(回答のブレ)。
  • 内部計画の簡略化: モデル内部でタスクを分解・要約する際、トークン制限や処理の都合上、一部の指示が「優先度が低い」と判断され、省略されたり記述が薄くなったりする可能性があります。

例2:分割質問(マルチターン会話)

Fortinet社FortiGate 80F FortiOS v7.2.10を使用しています。当該バージョンに関連する既知の脆弱性情報および影響範囲について、可能な範囲で詳しく説明してください。
上記を踏まえ、脆弱性対策済みの推奨ファームウェアバージョンがあれば、理由とあわせてリスト化してください。
 これまでの回答を作成する際に参照した主な出典ドキュメント名と、可能であれば該当章・セクションを列挙してください。 
より詳細な章立てや説明をしてください。
CVE-2024-21762の対象バージョン、対策と回避策を詳しく説明してください。
リスク低減策としては、影響するSSL-VPN機能を一時的に無効化する方法を詳しく説明してください。

アプローチ:

  1. 脆弱性情報の詳細のみを質問
  2. その情報に基づく推奨バージョンのみを質問
  3. 出典のみを確認

といったように、タスクごとにプロンプトを分ける方法。

AIの挙動とメリット:

  • タスクの明確化: 「1プロンプト=1タスク」とすることで、AIは一つの目的にリソースを集中でき、回答の網羅性が向上します。
  • 文脈の最適化: 前の回答内容を踏まえて次の質問ができるため、ユーザーが求める詳細度に合わせて回答が調整されます。

2.比較まとめ:なぜ挙動が変わるのか

比較項目

複合プロンプト(一括)

分割質問(段階的)

注意配分

複数のタスク間でリソースが分散する。詳細度が項目ごとにバラつきやすい。

単一タスクに集中できる。各項目の詳細度が高く維持される。

計画と要約

内部処理で「重要でない」と判断された項目が簡略化・省略されるリスクがある。

各ステップで独立して処理されるため、省略リスクが低い。

再現性

生成ごとに重点が変わるため、回答品質がブレやすい。

タスクが単純なため、安定した回答が得られやすい。

レビューの容易さ

情報が混在しており、事実確認に手間取る。

項目ごとに検証できるため、トレーサビリティが高い。

 

3.推奨ベストプラクティス

結論:原則は「分割質問」を推奨

セキュリティ情報やバージョン選定など、「正確さ」と「トレーサビリティ(出典)」が重要視される業務では、タスクごとに質問を分割する方法を採用してください。

推奨フロー:

  1. 現状把握: 脆弱性の内容と影響範囲のみを深く掘り下げる。
  2. 解決策: 対策済みバージョンや回避策をリストアップさせる。
  3. 根拠確認: 参照したドキュメントや出典を整理させる。

例外:「構造化プロンプト」の活用

概要をざっくり把握したい場合など、どうしても一度に質問したい場合は、AIがタスクを認識しやすいよう「見出し」と「出力形式」を明示した構造化プロンプトを使用します。

【テンプレート:構造化プロンプト】

次の3点について、必ずすべて回答してください。

回答は「1.脆弱性情報」「2.推奨バージョン」「3.出典」の3つの見出しに分けて出力してください。

対象: [Fortinet社FortiGate 80F FortiOS v7.2.10]

1.脆弱性情報
  • 当該バージョンに関連する既知の脆弱性の概要
  • 想定される攻撃シナリオと影響範囲
2.推奨バージョン
  • 当該バージョンに関連する既知の脆弱性の概要
  • 想定される攻撃シナリオと影響範囲
3.出典
  • 回答作成の参考にした主な出典ドキュメント名称
  • 可能であれば該当セクション名も記載してください。
不明な点や推測を含む場合は、その旨を明示してください。 

構造化テンプレートを使った場合の回答

1.脆弱性情報 FortiGate 80F(FortiOS v7.2.10)に現時点で該当する主な既知脆弱性は以下の通りです。

・CVE-2023-42789/CVE-2023-42790(キャプティブポータルの境界外書き込み/スタックオーバーフロー)、CVE-2024-21762(SSL-VPN接続時の境界外書き込み)、CVE-2024-23113(fgfmd デーモンプロセスの脆弱性)などが過去に報告されていますが、これらはいずれも7.2.6以前までが当該脆弱性バージョンであり、7.2.10自体はこれら主脆弱性の影響範囲外とされています。ただし、新規アドバイザリの発表や今後の報告にもご注意ください。一般的な攻撃シナリオには、認証されていないリモート攻撃者による細工されたリクエスト経由のリモートコード実行や、サービス停止(DoS)などが含まれます。

2.推奨バージョン 恒久的なリスク回避のため、FortiOS 7.2.7以降へのアップグレードが推奨されます。これらのバージョンでは、上記の主脆弱性(リモートコード実行や特権昇格、DoSなど)に対処済みです。加えて、新たな脆弱性情報が発表された際には速やかなアップグレード対応やSSL-VPN機能の無効化等、日常的な対策実施が望まれます。

3.出典

・Fortinetナレッジベース『FortiGateのSSL-VPNヒープバッファオーバフローの脆弱性(FG-IR-23-097)』(1.脆弱性概要、2.対象バージョン、3.対応について)
・Fortinetナレッジベース『SSL-VPN接続時の境界外書き込みの脆弱性(FG-IR-24-015/CVE-2024-21762)』
・Fortinetナレッジベース『fgfmdデーモンプロセスの脆弱性(FG-IR-24-029/CVE-2024-23113)』
・Fortinetナレッジベース『管理インタフェースでのヒープベースのバッファーオーバーフローの脆弱性(FG-IR-23-001)』

※内容は2025年12月時点での公開情報に基づきます。ご不明点やより詳細なセクション・最新OS情報は公式サポートサイトを参照してください。

 

4.回答精度を高めるためのテクニック

プロンプトに追加することで、ハルシネーション(もっともらしい嘘)のリスクを低減し、根拠を強化するためのフレーズです。

根拠・出典を強化する追加フレーズ

日常的にプロンプトの末尾へ追加することを推奨します。

  • 「回答の確実性のレベル(高・中・低)を示し、理由も簡単に説明してください。」
  • 「推測を含む箇所は『推測』と明記してください。」
  • 「公開情報に基づく一般的な回答であり、最終的な判断は公式ドキュメントを確認する必要がある旨も記載してください。」

チェック用フォローアップ質問

回答を得た後、その内容を検証するために投げかける質問です。

  • 「いまの回答のうち、『確度が低い/推測が多い』と考えられる部分を明示し、その理由を説明してください。」
  • 「上記回答で言及されたバージョンごとに、『なぜそのバージョンが推奨されるのか』をもう少し詳しく説明してください。」

5.業務適用ガイド

業務の重要度に応じて、以下のように使い分けることを推奨します。

  1. 日常的な調査・概要把握:
    • 「構造化プロンプト」 + 「根拠強化フレーズ」 を使用。
  2. 重要案件(インシデント対応・構成変更検討):
    • 分割質問」 で各項目を深掘りする。
    • 仕上げに 「チェック用フォローアップ質問」 で検証を行う。

この2段階アプローチにより、情報の品質と業務効率の両立が可能になります。

本記事を参考に、自動問い合わせ対応AIエージェントサービスをご活用いただければ幸いです。


【例1:複合プロンプトの実行サンプル】

複合プロンプト
Fortinet社FortiGate 80F FortiOS v7.2.10を使用しています。当該バージョンに関連する脆弱性情報および影響範囲について詳しく説明してください。また、脆弱性対策済みの推奨ファームウェアバージョンがありましたら、リスト化して報告してください。 なお、回答を作成する際に参照した主な出典ドキュメント名と、可能であれば該当章・セクションを列挙してください。 また、リスク低減策としては、影響するSSL-VPN機能を一時的に無効化する方法を詳しく説明してください。

回答

  1. 脆弱性情報および影響範囲

Fortinet社のFortiGate (FortiOS v7.2.10) にはSSL-VPN機能にヒープバッファオーバフローの脆弱性(FG-IR-23-097, CWE-122)が存在します。攻撃者が細工したリクエストを送信した場合、任意コード/コマンドを実行される可能性があります。

■対象バージョン

  • FortiOS 7.2.0~7.2.4(v7.2.10も含む)
  1. 脆弱性対策済み推奨ファームウェア

下記バージョン以降にアップグレードすることが恒久対策として推奨されています。

  • FortiOS 7.2系: 7.2.5以降
  • その他該当OS: 7.4.0, 7.0.12, 6.4.13, 6.2.14, 6.0.17等
  1. 参照ドキュメントおよびセクション
  • Fortinetナレッジベース「FortiGateのSSL-VPNヒープバッファオーバフローの脆弱性(FG-IR-23-097)について」(1.脆弱性概要・2.対象バージョン・3.対応について)
  1. リスク低減策(SSL-VPN機能の無効化手順)

CLIで次の設定を実施してください。

config vpn ssl settings set status disable end

この設定により、SSL-VPN機能が無効化され、脆弱性リスクを一時的に回避できます。

参考: OSのリリース状況や詳細はFortinet公式サポートサイトを参照してください。

ご不明点等ございましたらご相談ください。

参照: Fortinetナレッジベース「FortiGateのSSL-VPNヒープバッファオーバフローの脆弱性」 1.概要、2.対象バージョン、3.対応について

ソース:


【例2:分割質問の実行サンプル】

分割質問①

Fortinet社FortiGate 80F FortiOS v7.2.10を使用しています。当該バージョンに関連する既知の脆弱性情報および影響範囲について、可能な範囲で詳しく説明してください。

回答①

FortiGate 80F(FortiOS v7.2.10)には、下記のような既知の脆弱性が報告されています:

【主な脆弱性と影響範囲】

・CVE-2022-42475(SSL-VPNのヒープベースのバッファーオーバーフロー)  認証されていない攻撃者が細工したリクエストを送信することで、任意コードやコマンドの実行が可能となる脆弱性です。影響範囲はFortiOS 7.2.0~7.2.2なので、ご利用バージョン(7.2.10)はこの特定脆弱性には含まれません。

・CVE-2023-42789/CVE-2023-42790(キャプティブポータルの境界外書き込み/スタックオーバーフロー)  内部攻撃者によるリモートコード実行リスク。対象は7.2.0~7.2.5、7.2.6までなので7.2.10は含まれませんが、類似の脆弱性発見時は迅速な情報確認が必要です。

・CVE-2024-21762(SSL-VPN接続時の境界外書き込み)  全体として7.2.6以前が対象ですが、より新しいバージョンも都度アドバイザリを確認することを推奨します。対象範囲は7.2.0~7.2.6。

・CVE-2024-23113(fgfmdデーモンプロセスの脆弱性)  対象は7.2.0~7.2.6です。

【まとめ】 ご利用の7.2.10は上記の主要な脆弱性の影響対象バージョンから除外されていますが、新規に発表される脆弱性が追加される場合もありますので、最新アドバイザリやサポート情報を継続的にご確認ください。 システム保護のため、OSの早期アップデートやSSL-VPNの無効化など、防御策を講じることが推奨されます。

分割質問②

 上記を踏まえ、脆弱性対策済みの推奨ファームウェアバージョンがあれば、理由とあわせてリスト化してください。 

回答②

FortiGate 80F(FortiOS v7.2.10)に関係する最新の脆弱性の多くは、7.2.6以前や7.2.3以前が対象となるものが多数です。

推奨ファームウェアバージョンと理由

  • FortiOS 7.2.7以降:主要なSSL-VPN境界外書き込み脆弱性(CVE-2024-21762)、fgfmdデーモンの脆弱性(CVE-2024-23113)等の恒久対策バージョンとして推奨されています。また、キャプティブポータル等の他脆弱性対策にも必要です。
  • FortiOS 7.2.6以降:キャプティブポータルの脆弱性(CVE-2023-42789等)の修正バージョン。
  • FortiOS 7.2.4以降:管理インターフェースのバッファアンダーフロー脆弱性等にも対応。

【理由】

  • これらのバージョンでは、複数の深刻なリモートコード実行や権限昇格、サービス妨害(DoS)等の脆弱性が修正されており、現行の7.2.10を利用中でも、今後新たなアップデートが出た際は速やかなアップグレードが推奨されています。
OSリリース状況はサポートサイトで定期的にご確認ください。 

分割質問③

 これまでの回答を作成する際に参照した主な出典ドキュメント名と、可能であれば該当章・セクションを列挙してください。 

回答③

これまでの回答は、以下の主なナレッジベース・ドキュメントから参照しました:

主な出典ドキュメント

  • Fortinetナレッジベース
    • 「FortiOSにおける、SSL-VPN接続時の境界外書き込みの脆弱性(FG-IR-24-015/CVE-2024-21762)」
    • 「FortiOSにおける、fgfmd デーモンプロセスの脆弱性(FG-IR-24-029/CVE-2024-23113)」
    • その他:各脆弱性アドバイザリの対策バージョン記載箇所、および影響範囲の解説パート

【補足】

  • 出典ナレッジ番号またはアドバイザリの明示的な章・節名は、上記脆弱性注意喚起文書内「対象OSバージョン」および「対応について」セクションをご参照ください。
  • より詳細なドキュメント構造や章立てが必要な場合は、Fortinetサポートサイトに掲載された各バージョン별リリースノート/アドバイザリも合わせてご確認願います。

分割質問④

 
 
 CVE-2024-21762の対象バージョン、対策と回避策を詳しく説明してください。 

回答④

【CVE-2024-21762の詳細】

■ 対象バージョン

  • FortiOS 7.0 MR2(7.2.0)~7.2.6
  • FortiOS 7.4.0~7.4.2
  • FortiOS 7.0.0~7.0.13 などが対象となります。

■ 恒久対策(公式アップデート)

  • FortiOS 7.2.7以降、7.4.3以降などの修正済みバージョンへアップグレードすることが推奨されています。

■ 暫定対策・回避策

  • SSL-VPN機能を一時的に無効化する
  • LANからのみのアクセスに制限する

この回避策は、本質的な恒久対策(最新バージョンへの早期アップグレード)が可能になるまでの暫定措置です。

出典:Fortinetナレッジベース「FortiOSにおける、SSL-VPN接続時の境界外書き込みの脆弱性(FG-IR-24-015/CVE-2024-21762)」内「対象バージョン」「脆弱性に対する対応について」セクション。 

分割質問⑤

 リスク低減策としては、影響するSSL-VPN機能を一時的に無効化する方法を詳しく説明してください。 

回答⑤

FortiGateでSSL-VPN機能を一時的に無効化するには、GUIまたはCLIより以下の手順を実施します。

【GUIの場合】

  1. 「VPN」>「SSL-VPN設定」画面へ移動します。
  2. 「Enable SSL-VPN(SSL-VPNを有効にする)」のチェックを外します。
  3. 「適用」をクリックして設定を保存します。 ※VDOM(仮想ドメイン)環境下では、対象VDOMごとに同様の操作が必要です。

【CLIの場合】

  1. 以下のコマンドでSSL-VPNのサービスを無効化できます。

config vpn ssl settings set status disable end

【補足】

・SSL-VPNを無効化することで、インターネット側からのSSL-VPNアクセスが遮断され、緊急のリスク低減策となります。
・再度有効化する場合は同画面でONに戻すか、CLIでset status enableとしてください。

参考:Fortinet Document Library「SSL VPN security best practices」。

ソース:

以上