Wallarmによる攻撃防止のベストプラクティス¶
本記事では、二重の防御を1つに統合したユニークなプラットフォームであるWallarmを攻撃防止に活用する方法を説明します。Wallarmは、他のツール(一般にWAAP)と同様にWebサイトを保護するだけでなく、システムのAPIも特化して防御し、オンライン環境の技術要素全体の安全を確保します。
オンラインには多くの脅威が存在するため、強力な盾が不可欠です。Wallarmは、SQLインジェクション、クロスサイトスクリプティング、リモートコード実行、パストラバーサルといった一般的な脅威を自動で阻止できます。ただし、DoS攻撃対策、アカウント乗っ取り、API乱用のような巧妙な脅威や特定のユースケースでは、いくつかの調整が必要になる場合があります。本記事では、それらの手順を順を追って説明し、可能な限り最良の保護を実現できるようにします。セキュリティの経験が豊富な方でも、サイバーセキュリティの取り組みを始めたばかりの方でも、本記事はセキュリティ戦略を強化するための有用な洞察を提供します。
複数アプリケーションとテナントの管理¶
組織で複数のアプリケーションや独立したテナントを運用している場合、Wallarmプラットフォームは容易な管理に役立ちます。各アプリケーションごとにイベントや統計を個別に表示でき、アプリケーションごとに固有のtriggersやルールを構成できます。必要に応じて、アクセス制御を分離した各テナントごとの環境を作成できます。
信頼ゾーンの確立¶
新しいセキュリティ対策を導入する際は、重要なビジネスアプリケーションの継続的な稼働を最優先にする必要があります。信頼できるリソースが不必要にWallarmプラットフォームで処理されないように、それらをIP allowlistに割り当てることができます。
allowlistに登録されたリソースからのトラフィックは、既定では分析もログ保存もされません。つまり、バイパスされたリクエストのデータは確認できません。そのため、利用は慎重に適用する必要があります。
無制限のトラフィックを必要とするURLや、手動で監視したいURLには、Wallarmノードをmonitoring modeに設定することを検討してください。これにより、これらのURLを狙った不正なアクティビティを捕捉してログに記録できます。その後、Wallarm Console UIでこれらのイベントを確認し、異常を監視し、必要に応じて特定のIPのブロックなどの手動対応を実施できます。
トラフィックフィルタリングモードと処理例外の制御¶
柔軟なフィルタリングモード管理とアプリケーションに合わせた処理のカスタマイズにより、セキュリティ対策を段階的に導入します。例えば、特定のノード、アプリケーション、またはアプリケーションの一部に対してmonitoring modeを有効化します。
必要に応じて、特定のリクエスト要素に合わせて検知器を除外します。
denylistの設定¶
信頼できない送信元をdenylistに追加することで、VPN、プロキシサーバー、Torネットワークなどの疑わしい地域や送信元からのトラフィックをブロックし、アプリケーションを保護できます。
多重攻撃の発信元をブロック¶
Wallarmがblocking modeのときは、不正なペイロードを含むすべてのリクエストを自動的にブロックし、正当なリクエストのみを通過させます。短時間に同一のIPアドレスから複数の悪意あるアクティビティが検出された場合は、攻撃者を完全にブロックすることを検討してください。
ブルートフォース攻撃の緩和を有効化¶
単一のIPアドレスから認証ページやパスワード再設定フォームへの試行回数を制限することで、ブルートフォース攻撃を緩和します。これは、特定のtriggerを構成することで実現できます。
強制ブラウジングの緩和を有効化¶
強制ブラウジングとは、攻撃者がディレクトリやアプリケーションに関する情報を含むファイルなどの隠しリソースを探し出して利用しようとする攻撃です。これらの隠しファイルは、他の種類の攻撃の実行に利用できる情報を攻撃者に与える可能性があります。特定のリソースへの到達に失敗した試行回数に上限を定義することで、特定のtriggerを通じてこのような不正行為を防止できます。
レート制限の設定¶
APIの利用頻度に適切な上限がないと、DoSやブルートフォース攻撃などのシステムを過負荷にする攻撃や、APIの過剰利用に晒される可能性があります。Advanced rate limitingルールを使用すると、特定のスコープに確立できる接続数の最大値を指定でき、受信リクエストが均等に分散されるようにもできます。
BOLA保護を有効化¶
Broken Object Level Authorization (BOLA)の脆弱性は、攻撃者がAPIリクエストでオブジェクトの識別子を用いてオブジェクトへアクセスし、認可メカニズムを回避してそのデータを読み取ったり変更したりできる問題です。BOLA攻撃を防止するには、脆弱なエンドポイントを手動で指定してそれらへの接続数に制限を設けるか、Wallarmに脆弱なエンドポイントを自動的に特定・保護させることができます。詳細
API Abuse Preventionの活用¶
API abuse profilesを設定して、アカウント乗っ取り、スクレイピング、セキュリティクローラー、その他APIを標的とする自動化された悪意ある行為を行うボットを検出・ブロックします。
クレデンシャルスタッフィング検知を有効化¶
クレデンシャルスタッフィング検知を有効化すると、侵害されたまたは弱い資格情報を使用してアプリケーションへアクセスしようとする試みをリアルタイムに把握でき、アプリケーションへのアクセスを許してしまうすべての侵害/弱い資格情報のダウンロード可能な一覧も得られます。
盗まれたまたは弱いパスワードを持つアカウントを把握することで、アカウント所有者への連絡、アカウントへのアクセスの一時停止など、これらのアカウントのデータを保護するための対策を開始できます。
カスタム攻撃検知ルールの作成¶
状況によっては、攻撃検知シグネチャを手動で追加したり、バーチャルパッチを作成したりすると有益な場合があります。Wallarmは攻撃検知に正規表現へ依存してはいませんが、正規表現に基づく追加のシグネチャをユーザーが含めることは可能です。
機密データのマスキング¶
Wallarmノードは攻撃情報をWallarm Cloudに送信します。認可情報(Cookie、トークン、パスワード)や個人データ、決済情報などの特定データは、処理が行われるサーバー内に留めるべきです。データマスキングルールを作成して、Wallarm Cloudに送信する前に特定のリクエストポイントの元の値をマスクし、機密データが信頼された環境内に留まるようにします。
ユーザーセッションの分析¶
AttacksやIncidentsセクションに表示される攻撃だけを扱っている場合、その完全なコンテキスト、すなわち攻撃が属する一連のリクエストの論理的な流れは把握できません。
WallarmのAPI Sessionsはこのコンテキストを提供し、アプリケーションがどのように攻撃されているかの一般的なパターンを明らかにするとともに、実施するセキュリティ対策によってどのビジネスロジックが影響を受けるのかを理解できるようにします。
ユーザーセッションを分析して、脅威アクターの行動ロジックの特定、攻撃や悪性ボットの検知精度の検証、リスクのあるシャドウ/ゾンビなどのエンドポイントの追跡、パフォーマンス問題の特定などを行います。
シームレスなSIEM/SOAR連携と重大イベントの即時アラート¶
Wallarmは、Sumo Logic、Splunkなどの各種SIEM/SOARシステムとシームレスに連携でき、すべての攻撃情報をSOCセンターへ容易にエクスポートして一元管理できます。
Wallarmの連携機能とtriggers機能を組み合わせることで、特定の攻撃、denylistに登録されたIP、進行中の攻撃量全体に関するレポートやリアルタイム通知を設定するための優れた手段が得られます。
多層防御戦略¶
アプリケーション向けの堅牢で信頼性の高いセキュリティ対策を構築するには、多層防御戦略を採用することが重要です。これは、相補的な保護手段のスイートを実装し、それらを組み合わせてレジリエントなディフェンスインデプスのセキュリティ体制を形成することを意味します。Wallarmセキュリティプラットフォームが提供する対策に加えて、以下のプラクティスを推奨します。
-
クラウドサービスプロバイダーが提供するL3 DDoS保護を活用します。L3のDDoS保護はネットワーク層で動作し、分散型サービス拒否攻撃の緩和に役立ちます。ほとんどのクラウドサービスプロバイダーはL3保護をサービスの一部として提供しています。
-
WebサーバーやAPIゲートウェイのセキュア設定の推奨事項に従います。例えば、NGINXやKongを使用している場合は、セキュア設定ガイドラインを確実に遵守してください。
WallarmのL7 DDoS保護対策とこれらの追加プラクティスを組み合わせることで、アプリケーション全体のセキュリティを大幅に強化できます。
OWASP API主要脅威のカバレッジを確認・強化¶
OWASP API Security Top 10は、APIにおけるセキュリティリスク評価の事実上の標準です。これらのAPI脅威に対するAPIのセキュリティ体制を測定できるよう、Wallarmは2023年版の主要脅威の緩和状況を可視化するダッシュボードを提供します。
これらのダッシュボードは、全体的なセキュリティ状態を評価し、適切なセキュリティコントロールを設定して検出されたセキュリティ問題に積極的に対処するのに役立ちます。
JA3フィンガープリンティングを有効化¶
次の機能の精度を高めるために推奨します:
-
API Sessionsの仕組みを利用するAPI Abuse Prevention
未認証トラフィックの識別精度を高めるため、JA3フィンガープリンティングを有効化することを推奨します。