
Apache Tika 3.2.1を使用した意図的に脆弱なSpring Bootアプリケーション。悪意のあるPDFアップロードを介したCVE-2025-54988 XXE悪用のテスト用。
これは、Apache Tika 3.2.1 を使用して文書処理とテキスト抽出を行う Spring Boot アプリケーションです。
Docker を用意してください。
./start-app.sh
または docker compose up -d
悪意のある PDF (https://github.com/mgthuramoemyint/POC-CVE-2025-54988) を抽出対象のエンドポイントにアップロードしてください。
curl -X POST -F "[email protected]" http://127.0.0.1:8080/api/extract-text
curl -X POST -F "[email protected]" http://127.0.0.1:8080/api/detect-type
curl -X POST -F "[email protected]" http://127.0.0.1:8080/api/extract-pdf
Tika はファイルタイプの識別に使用できます。この機能は脆弱性を引き起こさないようです。
Tika を使用してデータを抽出すると、XXE がトリガーされます。これは、tika オブジェクトの .parseToString メソッドまたは PDFParser オブジェクトの .parse メソッドのいずれかを介して発生します。おそらく他にもメソッドがあります。XXE がパーサーの抽出メソッドでのみ実行されるのは理にかなっています。
CVE-2025-54988 CVE-2025-66516