サーバー側のテンプレートインジェクション

high Web App Scanning プラグイン ID 112614

概要

サーバー側のテンプレートインジェクション

説明

Web アプリケーションは多くの場合、テンプレートエンジンに依存して、ユーザーに表示される HTML ページの動的生成を管理しています。

アプリケーションがサーバー側のテンプレートに安全でないユーザー制御の入力を埋め込み、評価する場合に、クライアント側のテンプレートインジェクション (SSTI) の脆弱性があります。

攻撃者は、アプリケーションが使用するテンプレートエンジンに依存する特定のペイロードを注入してこの脆弱性を利用し、機密情報にアクセスしたり、リモートでコードを実行したりする可能性があります。

ソリューション

悪意のあるインジェクションを防ぐために、開発者はサーバーテンプレートでのユーザー入力の使用を回避する必要があります。アプリケーションが依然としてこのタイプの入力を必要とする場合は、可能な場合はロジックのないテンプレートエンジンを使用して、テンプレートのコードのロジック部分を削除し、アタックサーフェスを減らす必要があります。最後に、別のソリューションは、言語機能または docker 分離コンテナを利用してサンドボックス環境を作成することです。

参考資料

https://medium.com/@adrien_jeanneau/how-i-was-able-to-list-some-internal-information-from-paypal-bugbounty-ca8d217a397c

https://owasp.org/www-project-web-security-testing-guide/stable/4-Web_Application_Security_Testing/07-Input_Validation_Testing/18-Testing_for_Server_Side_Template_Injection

https://research.securitum.com/server-side-template-injection-on-the-example-of-pebble/

https://www.okiok.com/server-side-template-injection-from-detection-to-remote-shell/

プラグインの詳細

深刻度: High

ID: 112614

タイプ: remote

ファミリー: Injection

公開日: 2020/10/19

更新日: 2024/2/8

スキャン テンプレート: api, full, pci, scan

リスク情報

VPR

リスクファクター: Medium

スコア: 5.4

CVSS v2

リスクファクター: High

基本値: 9

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:C/I:P/A:P

CVSS スコアのソース: Tenable

CVSS v3

リスクファクター: High

基本値: 8.6

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:L

CVSS スコアのソース: Tenable

参照情報

CWE: 1336

OWASP: 2010-A1, 2013-A1, 2017-A1, 2021-A3

WASC: Improper Input Handling

CAPEC: 10, 101, 108, 120, 13, 135, 14, 24, 250, 267, 273, 28, 3, 34, 42, 43, 45, 46, 47, 51, 52, 53, 6, 64, 67, 7, 71, 72, 76, 78, 79, 8, 80, 83, 84, 9

DISA STIG: APSC-DV-002560

HIPAA: 164.306(a)(1), 164.306(a)(2)

ISO: 27001-A.14.2.5

NIST: sp800_53-SI-10

OWASP API: 2019-API8

OWASP ASVS: 4.0.2-5.2.5

PCI-DSS: 3.2-6.5.1