目次

リモートでのコマンド実行

攻撃者は、リモートでコマンドを実行して不正なコードを実行し、システムを制御できます。Application Security は、各要求に対する潜在的なリモートコマンド実行攻撃をブロックするアルゴリズムを実行することでアプリケーションを保護します。

Remote Command Executionポリシーを設定する

  1. グループを選択します。
  2. 左側のペインのメニューで、グループポリシーアイコンをクリックします。
  3. Remote Command Execution が有効になっていることを確認します。
  4. 状態を Reportに設定します。これにより、要求をブロックせずにイベントがトリガされます。これにより、アプリケーションを実行して、Remote Command Executionイベントをトリガする予期される動作を確認できます。
  5. 右側のペインで、ポリシーの設定アイコンをクリックします。
  6. 要求ごとに次のアルゴリズムを実行するように選択できます。
    • HTTP Params: Application Security は、リクエスト中に実行されたコードの場所でリモートコマンドの実行を逐語的に行うHTTPGETまたはPOSTパラメータを検出します。
    • Exec Control:作成したexecコントロールルールと比較して、グループ内の各COMMAND EXECUTIONで実行されるアルゴリズム。
  7. Exec Controls は正規表現として記述されたルールのリストです。画面の左側にある青色のトグルを選択して、各ルールを許可するかブロックするかを選択できます。ボタンが灰色になり、オフになっていることを示します。画面の左側にある灰色のボタンを選択して、ルールを編集、削除、または再編成することもできます。安全であると判断され、アプリケーションの通常の使用の一部であるコマンドは、ウィンドウの右側にあるプラスボタンを選択することで信頼できます。詳細については、「新しいRemote Command Executionルールの追加」を参照してください。 スクリーンショット
  8. [ Save Changes ]を選択してウィンドウを閉じます。

    初期設定では、Webサーバによって実行されるすべてのexec制御コマンドがブロックされます。

  9. アプリケーションに移動して、処理するように設計されたさまざまなシナリオで使用します。

  10. Application Security ダッシュボードの Events画面 で Remote Command Execution イベントを確認します。トリガされた場合は、Remote Command Executionイベントの管理の手順に従います。
  11. ポリシーの設定に問題がなく、予期した動作によってイベントがトリガされなくなった場合は、 Your Group > Policies > Remote Command Executionに移動します。
  12. Remote Command Executionの右側で、状態を Mitigateに設定します。ルールが実行されると、試行がブロックされ、Remote Command Executionイベントがダッシュボードに表示されます。

新しいRemote Command Executionルールを追加する

  1. [ Remote Command Execution Configuration ]ウィンドウの右側にある[ Add new rule ]ボタンを選択します。
  2. [ Enter a pattern to match ]で、検索パターンに一致する正規表現パターンを入力します。
  3. [ Enter text to preview match ] で、保護する検索パターンを入力します。上記で入力した検索パターンが正しいパターンであり、その検索を含む場合、検索は[ Results ]の下で緑色で強調表示されます。ファイル名がグレーの場合は、パターンを修正してください。
  4. [ Submit ]を選択してルールを保存します。

    スクリーンショット

Remote Command Executionルールを削除する

  1. 削除するルールを含む行で、 X アイコンを選択します。
    スクリーンショット
  2. [ Save Changes ]を選択してウィンドウを閉じます。

Remote Command Executionイベント

Remote Command Executionイベントは、 Events のダッシュボードまたは各グループのダッシュボードに表示されます。

すべてのイベントには、そのイベントに関する一般的な情報を示す Request Details パネルがあります。詳細については、「 イベントの管理」を参照してください。

[ Remote Command Execution Details]に、次の情報が表示されます。

  • Trigger:イベントをトリガしたルール。HTTPパラメータまたはEXECコントロール。
  • Exec Method:コマンドの実行に使用された基本API。
  • Command:最終的に実行された、またはAPIによって実行されるプログラムまたはコマンド。
  • Matched Rule:一致してイベントをトリガした実行制御ルール。

[ Triggered Policy Details]に、次の情報が表示されます。

  • イベントをトリガしたルール。HTTPパラメータまたはEXECコントロール。
  • Matched_rule:一致してイベントをトリガした実行制御ルール。
  • Suppression_rule:このイベントが再度トリガされないようにするルール。

    スクリーンショット

Remote Command Executionイベントの管理

Application Security がRemote Command Executionイベントをレポートしている場合:

  • [イベントの詳細]パネルの右上隅で、[ View Stack ]を選択して、コード内で攻撃が利用された場所を確認します。リモートコマンド実行攻撃が今後利用されないようにコードを変更してください。
  • アプリケーションの予期される動作によってイベントがトリガされ、コードを変更せずにその動作を許可する場合は、[ Click to Manage Policy]を選択します。[アラート]セクションで、どのポリシールールがトリガされたかを確認できます。アプリケーションでこの動作を許可する場合は、ルールを追加して[ Allow]を選択します。

    スクリーンショット