Citrix ADC

HTML コマンドインジェクション保護チェック

HTML コマンドインジェクションチェックは、着信トラフィックに、システムセキュリティを侵害したり、システムを変更したりする権限のないコマンドがあるかどうかを検査します。検出時にトラフィックに悪意のあるコマンドがある場合、アプライアンスは要求をブロックするか、設定済みのアクションを実行します。

Citrix Web App Firewall プロファイルが、コマンドインジェクション攻撃の新しいセキュリティチェックで強化されました。コマンドインジェクションセキュリティチェックによってトラフィックが検査され、悪意のあるコマンドが検出されると、アプライアンスは要求をブロックするか、設定済みのアクションを実行します。

コマンドインジェクション攻撃では、攻撃者はCitrix ADCオペレーティングシステム上で不正なコマンドを実行することを目指しています。これを達成するために、攻撃者は脆弱なアプリケーションを使用してオペレーティングシステムのコマンドを注入します。アプリケーションが安全でないデータ(フォーム、Cookie、またはヘッダー)をシステムシェルに渡した場合、Citrix ADCアプライアンスはインジェクション攻撃に対して脆弱です。

コマンドインジェクション保護のしくみ

  1. 着信要求の場合、WAF はトラフィックにキーワードまたは特殊文字があるかどうか調べます。着信要求に、拒否されたキーワードまたは特殊文字のいずれにも一致するパターンがない場合、要求は許可されます。それ以外の場合、要求は設定されたアクションに基づいてブロック、ドロップ、またはリダイレクトされます。

  2. リストからキーワードまたは特殊文字を除外する場合は、緩和ルールを適用して、特定の条件下でセキュリティチェックをバイパスできます。
  3. ログ記録を有効にして、ログメッセージを生成できます。ログを監視して、正当な要求に対する応答がブロックされているかどうかを判断できます。ログメッセージの数が大幅に増加すると、攻撃を開始しようとした可能性があります。
  4. また、統計機能を有効にして、違反およびログに関する統計データを収集することもできます。stats カウンタの予期しない急増は、アプリケーションが攻撃を受けていることを示している可能性があります。正当な要求がブロックされている場合は、構成を再確認して、新しい緩和ルールを構成するか、既存の緩和ルールを変更する必要があるかどうかを確認する必要があります。

コマンドインジェクションチェックで拒否されたキーワードと特殊文字

コマンドインジェクション攻撃を検出してブロックするために、アプライアンスはデフォルトのシグネチャファイルに定義された一連のパターン(キーワードと特殊文字)を持っています。次に、コマンドインジェクション検出中にブロックされたキーワードのリストを示します。

    <commandinjection>
      <keyword type="LITERAL" builtin="ON">7z</keyword>
      <keyword type="LITERAL" builtin="ON">7za</keyword>
      <keyword type="LITERAL" builtin="ON">7zr</keyword>
…
</commandinjection>

シグニチャファイルに定義される特殊文字は次のとおりです。 | ; & $ > < ' \ ! >> #

CLI を使用したコマンドインジェクションチェックの設定

コマンドラインインターフェイスでは、set ザ profile コマンドまたは add ザ profile コマンドを使用して、コマンドインジェクション設定を構成できます。ブロック、ログ、および統計アクションを有効にすることができます。また、ペイロードで検出するキーワードと文字列文字も設定する必要があります。

コマンドプロンプトで、次のように入力します。

set appfw profile <profile-name> –cmdInjectionAction <action-name> -CMDInjectionType <CMDInjectionType>]

注:

デフォルトでは、コマンドインジェクションアクションは「なし」に設定されています。また、デフォルトのコマンドインジェクションタイプはCmdSplCharANDKeyWordとして設定されています。

例:

set appfw profile profile1 -cmdInjectionAction block -CMDInjectionType CmdSplChar

ここで、使用可能なコマンドインジェクションアクションは次のとおりです。

  • なし-コマンドインジェクション保護を無効にします。
  • Log:セキュリティ・チェックのコマンド・インジェクション違反をログに記録します。
  • Block-コマンドインジェクションのセキュリティチェックに違反するトラフィックをブロックします。
  • Stats-コマンドインジェクションのセキュリティ違反の統計情報を生成します。

ここで、使用可能なコマンド射出タイプは次のとおりです。

  • Cmd SplChar. 特殊文字をチェックする
  • cmdKeyword コマンドインジェクションキーワードをチェックします
  • cmdsplcharandキーワードです。特殊文字とコマンドインジェクションをチェックします。キーワードとブロックは、両方が存在する場合のみ。
  • cmdsplCharorKeyword。特殊文字とコマンドインジェクションをチェックし、それらのいずれかが見つかった場合はブロックします。

コマンドインジェクション保護チェックのリラクゼーションルールの設定

アプリケーションで、ペイロード内の特定の ELEMment または attribute に対するコマンドインジェクション検査をバイパスする必要がある場合は、緩和規則を設定できます。

射出検査緩和規則コマンドの構文は次のとおりです。

bind appfw profile <profile name> –cmdInjection <string> <URL> -isregex <REGEX/NOTREGEX>

ヘッダーの正規表現の緩和ルールの例

bind appfw profile sample -CMDInjection hdr "http://10.10.10.10/" -location heaDER -valueType Keyword '[a-z]+grep' -isvalueRegex REGEX

その結果、インジェクションはコマンドインジェクションチェックを免除し、「grep” のバリアントを含むヘッダー ‘hdr’を許可します。

クッキー内の正規表現としてvalueTypeを持つリラクゼーションルールの例

bind appfw profile sample -CMDInjection ck_login "http://10.10.10.10/" -location cookie -valueType Keyword 'pkg[a-z]+' -isvalueRegex REGEX

Citrix ADC GUIを使用したコマンドインジェクションチェックの構成

コマンドインジェクションチェックを設定するには、次の手順を実行します。

  1. セキュリティ]> Citrix Web App Firewall とプロファイル]に移動します。
  2. [プロファイル] ページで、プロファイルを選択し、[編集] をクリックします。
  3. Citrix Web App Firewall プロファイル ページで、[詳細設定]セクションに移動し、[セキュリティチェック]をクリックします。

コマンドインジェクションチェックオプションの選択

  1. セキュリティチェック 」セクションで、「 HTML コマンドインジェクション 」を選択し、「 アクション 設定」をクリックします。
  2. [HTML コマンドインジェクション設定] ページで、次のパラメータを設定します。

    1. アクション。コマンドインジェクションセキュリティチェックに対して実行するアクションを 1 つ以上選択します。
    2. 次の内容を含むリクエストをチェックします。コマンドインジェクションパターンを選択して、着信要求にパターンがあるかどうかを確認します。
  3. [OK] をクリックします。

コマンドインジェクションチェック設定の構成

コマンドインジェクショントラフィックおよび違反統計情報の表示

Citrix Web App Firewall 統計 ページには、セキュリティトラフィックとセキュリティ違反の詳細が表形式またはグラフ形式で表示されます。

コマンドインターフェイスを使用してセキュリティの統計情報を表示するには。

コマンドプロンプトで、次のように入力します。

stat appfw profile profile1

Appfw プロファイルトラフィック統計 レート (/s) 合計
Requests 0 0
要求バイト数 0 0
応答 0 0
送信バイト数 0 0
中止します 0 0
リダイレクトします 0 0
長期平均応答時間(ミリ秒) 0
最近の平均応答時間(ミリ秒) 0

| HTML/XML/JSON違反の統計 | レート (/s) | 合計 | |—|—|—| | 開始URL | 0 | 0 | | URL を拒否する | 0 | 0 | | リファラヘッダー | 0 | 0 | | バッファオーバーフロー | 0 | 0 | | クッキーの整合性 | 0 | 0 | | クッキーのハイジャック | 0 | 0 | | CSRFフォームタグ | 0 | 0 | | HTML クロスサイトスクリプティング | 0 | 0 | | HTML SQL インジェクション | 0 | 0 | | フィールドの書式 | 0 | 0 | | フィールドの一貫性 | 0 | 0 | | クレジットカード | 0 | 0 | | セーフオブジェクト | 0 | 0 | | 署名の違反 | 0 | 0 | | コンテンツの種類 | 0 | 0 | | JSON サービス拒否攻撃 | 0 | 0 | | JSON SQL injection | 0 | 0 | | JSON Cross-Site Scripting | 0 | 0 | | ファイルのアップロードの種類 | 0 | 0 | | Infer Content Type XML Payload | 0 0 | | HTML CMD Injection | 0 | 0 | | XML Format | 0 | 0 | | XML Denial of Service (XDoS) | 0 | 0 | | XML Message Validation | 0 | 0 | | Web Services Interoperability | 0 | 0 | | XML SQL Injection | 0 | 0 | | XML Cross-Site Scripting | 0 | 0 | | XML Attachment | 0 | 0 | | SOAP Fault Violations | 0 | 0 | | XML Generic Violations | 0 | 0| | Total Violations | 0 | 0|

HTML/XML/JSONログ統計情報 レート (/s) 合計
開始URLログ 0 0
URL ログを拒否する 0 0
リファラーヘッダーログ 0 0
バッファオーバーフローログ 0 0
クッキーの整合性ログ 0 0
クッキーのハイジャックログ 0 0
CSRF フォームタグログ 0 0
HTML XSS ログ 0 0
HTML XSS 変換ログ 0 0
HTML SQL インジェクションのログ 0 0
HTML SQL 変換ログ 0 0
フィールド形式のログ 0 0
フィールド整合性ログ 0 0
クレジットカード 0 0
クレジットカード変換ログ 0 0
セーフオブジェクトログ 0 0
シグニチャログ 0 0
コンテンツタイプログ 0 0
JSON サービス拒否ログ 0 0
JSON SQL インジェクションログ 0 0
JSON クロスサイトスクリプティングログ 0 0
ファイルアップロードタイプのログ 0 0
コンテンツタイプ XML ペイロード L を推測する 0 0
HTML コマンドインジェクションログ 0 0
XML 形式のログ 0 0
XML サービス拒否 (XDoS) ログ 0 0
XML メッセージ検証ログ 0 0
WSI ログ 0 0
XML SQL インジェクションログ 0 0
XML XSS ログ 0 0
XML 添付ファイルログ 0 0
SOAP 障害ログ 0 0
XML 汎用ログ 0 0
ログメッセージの合計 0 0

サーバエラー応答統計率 (/s) | 合計 | |—|–|–| HTTP クライアントエラー (4xx Resp) | 0 | 0| HTTP サーバエラー (5xx Resp) | 0 |

Citrix ADC GUIを使用したHTMLコマンドインジェクション統計の表示

コマンドインジェクションの統計情報を表示するには、次の手順を実行します。

  1. セキュリティ]>[Citrix Web App Firewall]>[プロファイル]に移動します。
  2. 詳細ペインで、Web App Firewall プロファイルを選択し、[統計] をクリックします。
  3. Citrix Web App Firewall 統計 ページには、HTMLコマンドインジェクショントラフィックと違反の詳細が表示されます。
  4. [表形式ビュー] を選択するか、[グラフィカルビュー] に切り替えて、データを表形式またはグラフィック形式で表示できます。

HTML コマンドインジェクショントラフィックの統計情報

コマンドインジェクショントラフィック統計情報の GUI セクション

HTML コマンドインジェクション違反の統計

コマンドインジェクショントラフィック統計情報の GUI セクション