ウェブアプリケーションに対する攻撃を検出して防御するために、ウェブアプリケーションファイアウォール(ModSecurity)は、御社のウェブサーバへのすべての要求およびサーバからの関連する応答をルールセットに対してチェックします。チェックが成功すると、コンテンツを取得するために HTTP 要求がウェブサイトに渡されます。チェックが失敗すると、定義済みのアクションが実行されます。

ModSecurity は Plesk for Linux と Plesk for Windows の両方でサポートされ、ウェブサーバ(Apache または IIS)のモジュールとして機能します。

ModSecurity を有効にする

ウェブアプリケーションファイアウォールを有効にするには:

  1. Go to Tools & Settings > Web Application Firewall (ModSecurity) (under "Security").

    このリンクが表示されない場合、[ツールと設定] > [アップデート] > [コンポーネントを追加/削除] > [Web hosting]グループから ModSecurity コンポーネントをインストールします。

    image 78702

  2. ウェブアプリケーションファイアウォールモードを[オン]または[検出のみ]に設定します。それぞれの受信 HTTP 要求および関連する応答がルールセットに対してチェックされます。チェックが成功すると、コンテンツを取得するために HTTP 要求がウェブサイトに渡されます。チェックが失敗すると、イベントがログに記録されます。[検出のみ]モードの場合、それ以外のアクションは行われません。[オン]モードの場合、HTTP 応答にエラーコードが割り当てられます。

    注釈: ウェブアプリケーションファイアウォールは、サーバレベルでもドメインレベルでも設定可能です。ただし、サーバレベルより高いモードをドメインレベルで設定することはできません。たとえば、ウェブアプリケーションファイアウォールがサーバレベルで[検出のみ]モードに設定されている場合、ドメインレベルで[オン]に設定することはできず、[オフ]および[検出のみ]モードのみが表示されます。

  3. Go to the "Settings" tab and then select the set of rules that will be checked by the web application firewall engine for each incoming HTTP request, or upload a custom rule set. You can select the following rule sets:

    • Atomic Standard (free, can be upgraded to Atomic Advanced). A free starter version of the Atomic ModSecurity rules, bundled with Plesk. It contains important security features and bug fixes released on a monthly basis. For rules included in this rule set, see Atomic ModSecurity Rule Sets.

    • OWASP (free). The OWASP ModSecurity Core Rule Set (CRS) provides generic protection from unknown vulnerabilities often found in web applications. This rule set is shipped for free. It is known as a very restrictive rule set; it requires additional tuning for production use. When this rule set is selected, WordPress partly does not work, webmail and file sharing do not work either. You can use Atomic or Comodo rule sets instead.

    • (Plesk for Linux) Comodo (free). A free, simple-to-use, customizable, rules-based traffic control system that protects your web-based applications and prevents newly emerging hacking techniques with the use of a frequently updated rules database. Unlike the "Comodo (free subscription)" rule set, you do not need a subscription on the Comodo website to select "Comodo (free)".

    • Atomic Advanced. The latest version of the rules, with all the performance enhancements, new security features and bug fixes released by Atomicorp GotRoot on a daily basis. This is a commercial rule set that is fully supported and recommended for production use. Plesk provides the Security Core Complete by Atomicorp extra feature that allows you to enable this rule set in Plesk. You can get this extra feature by the following ways:

      • Plesk オンラインストア で Advanced ModSecurity Rules by Atomicorp を購入する。
      • If you already have a Plesk license, you can add the extra feature via the Plesk Partner Central UI or via the Partner API (for details, refer to the Partner Central User's Guide or Partner API 3.0 reference).
      • Plesk ライセンスを既にお持ちのお客様が Plesk Partner Central へのアクセス権をお持ちでない場合には、プロバイダまでお問い合わせください。

      既に Atomic サイトのアカウントをお持ちの場合、ユーザ名とパスワードを指定してこのルールセットを有効にすることができます。

      注釈: If you get this extra feature, the Plesk interface will display Atomic Advanced instead of Atomic Standard (free, can be upgraded to Atomic Advanced), and this actually means the complete Atomic Advanced ModSecurity rule set.

      このルールセットに含まれるルールについては、「Atomic ModSecurity ルールセット」を参照してください。

      ご用心: (Plesk for Linux) If you select the Atomic ruleset, perform the following procedure to ensure that ModSecurity works fine. Run the aum -u command on the server. The Plesk modsecurity package will be replaced by that from the Atomic repository. Then run the following commands:

      • plesk sbin modsecurity_ctl --disable
      • plesk sbin modsecurity_ctl --enable
      • service httpd restart
    • (Plesk for Linux) Comodo (free subscription). This is a simple-to-use, customizable rules-based traffic control system that protects your web-based applications and prevents newly emerging hacking techniques with the use of a frequently updated rules database. This rule set is shipped for free. To enable this rule set in Plesk, register on the Comodo site and provide your username and password from this site.

      注釈: By default, Plesk does not show the "Comodo (free subscription)" rule set. To make the rule set visible in the Plesk interface, add the following lines to the panel.ini file:

      [modSecurity]
      ruleSet.comodo = 1
      
    • Custom rule set. You can upload a custom web application firewall rule set, for example, a trial package from Atomic or a free package from Comodo. Supported formats: zip, tar.gz, tgz, tar.bz2, conf.

    image 78703

  4. 特定のルールセットを自動更新にするには、[ルールセットを更新]チェックボックスをオンにして、更新周期を選択します。

  5. 定義済みのパラメータセットを選択するか、カスタム ModSecurity ディレクティブを指定します。以下の定義済みのパラメータセットを選択することができます。

    • 高速:HTTP 要求の URI およびヘッダ部分を解析する場合。このモードでは、CPU の消費が最少になります。

    • トレードオフ:HTTP 要求の URI、ヘッダ、および要求の POST データを解析する場合。このモードは、品質とパフォーマンスのバランスに優れています。

    • 完全:HTTP 要求のヘッダ全体、要求の POST データ、および HTTP 応答の本文を解析する場合。このモードは、CPU リソースの消費が最大になりますが、特別なセキュリティ対策を必要とするサイトに対して推奨されます。たとえば、カード払いが可能なオンラインショップが該当します。

      注釈: パフォーマンスを最大化するために、ウェブアプリケーションファイアウォールは、要求キャッシュが有効なローカル DNS サーバを必要とします。これがないと、ウェブアプリケーションファイアウォールがオンになっている場合にウェブサイトの読み込みに時間がかかります。

      image 76906

ログファイル(Linux)

Linux で、ModSecurity がログの保存に使用するのは次の 2 つの場所です。

  • ModSecurity 監査ログ(/var/log/modsec_audit.log)は、非常に詳細な情報を記録し、Plesk サーバ全体に使用されます。ModSecurity が何らかのイベントの発生を検知すると、監査ログファイルにエントリが生成されます。ModSecurity 監査ログを表示するには、[ツールと設定] >[ウェブアプリケーションファイアウォール(ModSecurity)]を選択し、[ModSecurity 監査ログ]セクションの[ログアーカイブ]リンクをクリックします。ここで、ModSecurity ログファイルとその変更日付を表示したり、ログファイルをダウンロードしたりすることができます。
  • ドメインの Apacheエラーログ(/var/www/vhosts/DOMAIN.TLD/logs/error_log)には、ウェブサイトエラーに関する簡潔な情報だけが記録されます。特定のウェブサイトのエラーログを表示するには、顧客パネルで[ウェブサイトとドメイン] > <ドメイン名> > [ログ]に進み、右上で[すべてのログ]ではなく[Apache エラー][nginx エラー]のみを選択してください。

ログファイル(Windows)

On Windows, ModSecurity audit logs are domain-specific and located in %plesk_dir%ModSecurity\vhosts\<domain's GUID>\logs (where %plesk_dir% is the default installation directory for Plesk).

ルールをオフにする

ウェブアプリケーションファイアウォールモードを[オフ]または[検出のみ]から[オン]に変更した後で、ウェブサイトの機能が停止することがあります。ウェブサイトエラーログで、403404500 などのエラーコードが見つかりますが、ウェブアプリケーションファイアウォールモードを[検出のみ]または[オフ]に変更すると、こうしたエラーコードは表示されなくなります。この場合、ModSecurity 監査ログを参照し、何が起こっているのかを確認してください。厳格すぎるセキュリティルールをオフにしたり、ウェブサイトを調整することができます。

あるウェブサイトに対し、HTTP リクエストが完了しない理由を確認するには:

  1. ウェブサイトの監査ログファイルを表示します。

    Plesk for Linux では、Plesk の UI からログを表示できます。[ツールと設定] > [ウェブアプリケーションファイアウォール(ModSecurity)]にアクセスし、[ModSecurity ログファイル]リンクをクリックして監査ログをダウンロードし、新しいブラウザウィンドウで開きます。

  2. 検索機能(大半のブラウザでは Ctrl+F)を使用して、問題が発生したウェブサイト(ドメイン名)のイベントを探します。たとえば、your_domain.tld を探します。ブラウザで HOST:your_domain.tld のようなエントリがハイライトされます。ハイライトされたエントリの 3 行上に「--eece5138-B--」のようなエントリがあります。ハイフンの間の 8 文字(この例では「eece5138」)は、HTTP 要求でトリガされたイベントの ID です。

  3. さらに、同じイベント ID を持つエントリを探します。イベント ID の後に H という文字が付いたエントリ(この例では eece5138-H--)を探します。このエントリには、HTTP 要求のチェック時にトリガされたセキュリティルールの ID と説明が含まれています。セキュリティルール ID とは、引用符に囲まれた 3 から始まる整数であり、プレフィックス id 付きで角括弧に囲まれています(例: [id "340003"])。

  4. [id "3 という文字列の一部を使用して、イベント内でセキュリティルール ID を探します。この ID は、ルールをオフにするときに使用できます。

ルールをオフにする:

  1. [ツールと設定] > [ウェブアプリケーションファイアウォール(ModSecurity)]に進みます。
  2. [セキュリティルールをオフにする]セクションで、ID(340003 など)、タグ(CVE-2011-4898 など)、または正規表現(XSS など)に基づいてセキュリティルールを選択して、[OK]をクリックします。

nginx および ModSecurity についての注記(Linux)

Linux では、ModSecurity は Apache のモジュールです。従って、チェックが可能なのは Apache が受信した HTTP 要求のみです。Apache は、別のウェブサーバ nginx で補完できます。ウェブサイトの動的コンテンツのために nginx ウェブサーバの[PHP を nginx で処理]オプションをオンにすると(ウェブサイトの Apache と nginx の設定)、Apache が HTTP 要求を受信しないため、ウェブアプリケーションファイアウォールで HTTP 要求をチェックすることはできません。静的コンテンツについては、[静的ファイルを nginx で直接処理]オプションがオンになっている場合、Apache がHTTP 要求を受信しないため、ModSecurity によってチェックされません。