Package com.streamconverter.security
Class SecureXPathValidator
java.lang.Object
com.streamconverter.security.SecureXPathValidator
XPathインジェクション攻撃を防ぐためのバリデータークラス
このクラスは、XPath式の安全性を検証し、 悪意のあるXPath式を検出・ブロックします。
主な機能:
- XPathインジェクション攻撃パターンの検出
- 危険な関数の使用制限
- 特殊文字のエスケープ処理
- XPath式の構造的検証
- セキュリティ設定による動的制御
- Since:
- 1.0.0
-
Method Summary
Modifier and TypeMethodDescriptionstatic String[]許可されたXPath関数のリストを取得しますstatic booleanisXPathSafe(String xpath) XPath式が安全かどうかを判定します(例外を投げない版)static StringsanitizeXPath(String xpath) XPath式をサニタイズします(エスケープ処理)static voidvalidateXPath(String xpath) XPath式の安全性を検証します
-
Method Details
-
validateXPath
XPath式の安全性を検証します- Parameters:
xpath- 検証対象のXPath式- Throws:
SecurityException- XPath式が安全でない場合IllegalArgumentException- xpath引数がnullまたは空の場合
-
sanitizeXPath
XPath式をサニタイズします(エスケープ処理)- Parameters:
xpath- サニタイズ対象のXPath式- Returns:
- サニタイズされたXPath式
-
isXPathSafe
XPath式が安全かどうかを判定します(例外を投げない版)- Parameters:
xpath- 検証対象のXPath式- Returns:
- 安全な場合true、そうでない場合false
-
getAllowedXPathFunctions
許可されたXPath関数のリストを取得します- Returns:
- 許可された関数の配列
-