ブログ

Threat Stack が追加のランタイム攻撃検出を導入

F5 サムネイル
F5
2020年8月10日更新

Threat Stack は現在、 F5 Distributed Cloud App Infrastructure Protection (AIP) です。 今すぐチームで Distributed Cloud AIP を使い始めましょう。

より多くの種類のアプリケーション攻撃からの保護

Threat Stack アプリケーション セキュリティ モニタリングは、コード内の脆弱性を検出し、ライブ攻撃をリアルタイムでブロックします。 ほとんどのアプリケーション セキュリティ ソリューションでは、最も一般的なランタイム攻撃 (SQL インジェクションや XSS など) について説明していますが、最新の Web アプリケーション言語とフレームワークには、悪用される可能性のある正当な機能もいくつか含まれており、それらと同等 (またはそれ以上) の大きな影響を与える攻撃が発生する可能性があります。 Threat Stack アプリケーション セキュリティ モニタリングは、SQLi および XSS から保護します。さらに、Web アプリケーション、マイクロサービス、API ワークロードをパスまたはディレクトリ トラバーサル攻撃やリモート コード実行からさらに保護するために、追加のランタイム攻撃検出を導入しています。 

リモートコード実行 (RCE)

リモート コード実行 (RCE、任意コード実行または ACE とも呼ばれる) により、攻撃者はアプリケーションが実行されているサーバー上で任意のコードを実行できるようになります。 これはインジェクション攻撃です。攻撃者は、独自のオペレーティング システム コマンドを実行する関数に文字列を渡す可能性があります。 Javascript でこれがどのように機能するかについては、Wanago.io ブログ ( https://wanago.io/2018/11/19/how-does-eval-work-and-how-is-it-evil-javascript-eval/ ) でわかりやすく説明されています。 この例では、関数 eval は文字列を受け取り、それをアプリケーションの他の部分と同じ権限を持つコードとして実行します。 攻撃者がサイトのサインアップ フォームにユーザー名として次の情報を送信するとします。

'ジョン"); exec("rm -rf ./*"); console.log("'

そのユーザー名の値が eval 関数で使用されている場合、あまり良い日にはならないでしょう。

Threat Stack は、ビルド時と実行時の 2 つの方法で RCE から保護します。 ビルド時に、AppSec マイクロエージェントは、Node.js のeval()や Python のos.forkなど、RCE 攻撃に対して脆弱な関数呼び出しを識別します。 これらの関数は正当かつ安全に使用できる可能性があるため、開発者に対して「リスク」としてフラグを立てます。 当社では、なぜリスクがあるかを説明し、より安全な代替案を提案する eLearning コンテンツを提供しています。 ただし、実行時には、実際に脆弱性を悪用しようとする試みを特定します。 たとえば、危険な関数の 1 つが、シェル コマンドのエクスプロイトを含む Web から取得したコンテンツで呼び出されていることが判明した場合、それを攻撃としてフラグ付けし、直ちにお客様のチームに通知します。 一般的なコマンドエクスプロイトには、kill、disable、stop、fdisk などのコマンドが含まれる場合があります。 

パスまたはディレクトリのトラバーサル 

パスまたはディレクトリ トラバーサル攻撃により、攻撃者はアプリケーションが実行されているサーバー上の任意のファイル (Web アプリケーションが存在するフォルダー外のファイル) を読み取る (場合によっては書き込む) ことができます。 これには、アプリケーションのソース コード、資格情報、または貴重なオペレーティング システム ファイルが含まれる可能性があります。 これは、変数内で相対ファイル パスを使用する一般的な手法 (一般に「ドット ドット スラッシュ (../)」シーケンスと呼ばれる) を利用して機能します。 たとえば、シーケンス ../ は、ディレクトリ構造の 1 つ上のレベルを参照します。 これらのシーケンスをいくつか連結すると、他のファイルやディレクトリにアクセスできるファイルシステムのルートを参照できます。 

ドット・ドット・スラッシュのシーケンスには正当な使用法がたくさんあるため、それらの使用がリスクとしてフラグ付けされると迷惑になります (SAST ツールからわかるように)。 代わりに、Threat Stack AppSec Monitoring は、それを使用する関数と、実行時に関数に渡されるペイロードの両方を分析します。 たとえば、 fs.open/read/write/etc.などのコマンドを使用する Node.js アプリケーションでは、関数に渡されるペイロードで、ディレクトリ パスのエンコードや機密性の高い OS ファイルへの参照をチェックできます。 悪意のあるペイロードを含む危険な関数は攻撃としてフラグが立てられ、チームに直ちに通知されます。

フルスタックセキュリティ監視ソリューションの一部

攻撃者は階層について考えません。アプリケーションだけに焦点を当て、それが実行されるコンテナやそれがホストされるクラウド サービスを無視することはありません。 たとえば、RCE 攻撃により、ホスト上で不正なプロセスが実行される場合があります。 または、パス トラバーサル攻撃によって、機密性の高いクラウド ホストの資格情報ファイルが侵害される可能性があります。 これらの攻撃やその他のランタイム アプリケーション攻撃を検出できることは重要ですが、攻撃の複雑さやインフラストラクチャの変化に関係なく、すべての攻撃対象領域にわたってセキュリティの観測可能性を有効にすることが極めて重要です。 これが、完全な Threat Stack Cloud Security Platform® の一部である AppSec Monitoring の威力です。   

アプリケーション セキュリティ機能を含む Threat Stack Cloud Security Platform について詳しく知りたい場合は、お気軽にデモにご登録ください。 弊社のセキュリティおよびコンプライアンスの専門家が、お客様の組織の要件について喜んでご相談に応じます。

 

Threat Stack は現在、 F5 Distributed Cloud App Infrastructure Protection (AIP) です。 今すぐチームで Distributed Cloud AIP を使い始めましょう。