ゼロデイ攻撃の定義
ゼロデイ攻撃またはゼロデイ悪用は、ハードウェアまたはソフトウェアの未知の脆弱性を利用している。ゼロデイと呼ばれるのは、悪用方法を発見された時点で、開発者が原因となった脆弱性の修正を実装する「ゼロ日」の猶予があるからだ。
ゼロデイ攻撃の経路
残念な事実だが、開発者は毎日、ゼロデイ脆弱性を不注意で導入している。しかも、このようなゼロデイ脆弱性は、必ずしも自社の開発者だけが自社のアプリケーションに持ち込むものではなく、コードにサードパーティのライブラリを使用している場合、サプライチェーン攻撃が増加している。一旦攻撃者がパッケージのコード(またはその管理)をコントロールすると、バックドアや暗号マイニングコードをパッケージに追加するなど、悪意のあるコードを導入することができる。さらに、何千ものウェブアプリケーションが自動的に最新バージョンのライブラリにアップデートされ、開発チームが知らないうちに、以前は信頼されていたライブラリの悪意のあるバージョンがインストールされる可能性さえある。
従来のWAF(ウェブ・アプリケーション・ファイアウォール)を使用する
WAFは、パブリックに向けのウェブアプリケーションに対する攻撃の数を大幅に減らすことができても、悪意のあるリクエストを送信することによってアプリケーションが悪用される可能性がある。下記3つの例を参考ください。
1.AutoSpear、既存WAF製品を自動的にバイパスするツール。7つクラウドベースのWAFすべてを、偽陰性率で測定して、ModSecurityの3%という低い値から、AWSとCloudflareのWAFの63%という高い値まで、さまざまな成功率で回避することに成功した。 [1] [2]
2.Claroty Team82は、業界をリードするWAFの汎用バイパスを開発した。このバイパスは、SQLインジェクションのペイロードにWAFが解析できないJSON構文を追加するものだ。 [3]
3.XSS攻撃 - AWS WAFバイパス。 [4]
先制的なゼロデイ攻撃の防止
従来の方法では検知も予防もできないゼロデイ攻撃についてはどうだろうか?CloudGuard WAF / open-appsec (以降はopen-appsecで表記) はWAFだが、先進なWAFに期待される標準的な機能と保護に加えて、機械学習ベースのセキュリティモデルを使用して、ゼロデイ攻撃を未然に検出し、防止できる。
open-appsecのContextual Machine Learning Engine [5] は、2つの異なる機械学習モデルを搭載している:
- オフラインで訓練され、悪意と良性のもの両方の何百万ものリクエストを供給された教師ありモデル。
- 2つ目のモデルは保護された環境でリアルタイムに学習・構築され、ウェブアプリケーションのコンテキストパターンを使用して、通常の安全な接続リクエストがどのように見えるべきかを学習する。このモデルは、この環境特有のトラフィックパターンを使用する教師なしモデル。
アプリケーションへのすべてのリクエストは3つの段階で処理される:
- まず、ペイロードがデコードされます。すべてのHTTPリクエストが解析され、JSONとXMLセクションが抽出され、IPレベルのアクセス制御が適用される。
- 次に、多数の変数が機械学習エンジンに供給される。これらの変数は、HTTPリクエストから直接抽出されるか、ペイロードのさまざまな部分からデコードされ、攻撃インジケータ、IPアドレス、ユーザーエージェント、フィンガープリント、および他の多くの考慮事項が含まれる。機械学習エンジンの教師ありモデルは、これらの変数を使用して、世界中で見られる多くの一般的な攻撃パターンとリクエストを比較する。
- リクエストが有効で正当なリクエストと識別された場合、リクエストは許可され、アプリケーションに転送される。しかし、リクエストが疑わしい、またはリスクが高いと判断された場合、特定の環境で学習された教師なしモデルによって評価される。このモデルはURLや関係するユーザーなどの情報を使って最終的な信頼度スコアを作成し、リクエストが許可されるべきかブロックされるべきかを最終判断する。
多くのWAFベンダーが新しい攻撃を検知するためにシグネチャを更新した後、攻撃者は新しい検知方法をバイパスしようと手口を変えつつある。機械学習エンジンのおかげで、open-appsecは正確な検知率と非常に低い誤検知率を実現している。下記の実績で証明されたように、まだシグネチャが存在しない攻撃を検出するのに十分強力である。
- open-appsecのMLを利用した検知は、新しい攻撃Log4Shellを先手を打って検知することができた。[6]
- open-appsec MLベースのWAFが先述した最新のSQLi AutoSpearバイパス・テクニックを防御 [7]
- open-appsecは、先述したClarotyのWAFバイパスを先制的にブロックする唯一の製品である [8]
- MOVEit CVE-2023-36934 に対するゼロデイ保護機能 [9]
- text4shell ゼロデイ攻撃(CVE-2022-42889)に対する open-appsecの先制的な保護 [10]
- オープンソースのwaf-comparison-projectを使って最高のバランス精度(97.28%)テスト結果となっている [11]
まとめ
「脆弱性の合間」、つまり脆弱性が最初に発見されてから(ゼロデイフェーズ)、ソフトウェアの更新やWAFシグネチャルールの更新などの是正措置が実施されるまでの期間を最小限に抑えることが極めて重要である。効果的なセキュリティ・ソリューションを導入することは、すべてのセキュリティ専門家の責任である。次回の監査でチェックマークを付けることだけに満足してはいけないだろう。
参考資料
[1] AutoSpear: Towards Automatically Bypassing and Inspecting Web Application Firewalls
[2] Transforming SQL Queries Bypasses WAF Security
[3] {JS-ON: Security-OFF}: Abusing JSON-Based SQL to Bypass WAF
[4] XSS ATTACK - AWS WAF BYPASS
[5] open-appsecのContextual Machine Learning Engine
[6] Log4Shell Preemptive Protection
[7] open-appsec ML-based WAF protects against modern SQLi AutoSpear evasion techniques
[8] open-appsec / CloudGuard AppSec is the only product known to pre-emptively block Claroty WAF bypass
[9] Zero-day protection for MOVEit CVE-2023-36934
[10] open-appsec/CloudGuard AppSec preemptive protection for text4shell zero-day attack (CVE-2022-42889)
[11] [CloudGuard open-appsec] セキュリティの考察 (CHECKMATES Japan)
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
CloudGuardのデモをご予約の上、実際にCloudGuardをご覧いただき、お客様の組織のクラウドセキュリティのニーズを満たすための専門家による個別ガイダンスをお受けください。
CloudGuard またはセキュアな移行のベスト・プラクティスに関する詳細な個別ワークショップをご希望の場合は、こちらのフォームにご記入ください。クラウド・セキュリティ・アーキテクトが連絡してお客様のニーズについて話し合い、次のステップをスケジュールします。
その他ご不明な点がございましたら、チェック・ポイントのアカウント担当者またはcontact usリンクを使ってチャネル・パートナーまでお問い合わせください。
X(旧 Twitter)、Facebook、LinkedIn、Instagram で、チェック・ポイントと CloudGuard に関する会話をフォローしてご参加ください。