
Docker化されたSpring4Shell (CVE-2022-22965) PoCアプリケーションとエクスプロイト
これは、Spring4Shellの脆弱性(CVE-2022-22965)に対して脆弱なDocker化されたアプリケーションです。WARの完全なJavaソースが提供されており、変更可能です。DockerイメージがビルドされるたびにWARが再ビルドされます。ビルドされたWARはTomcatによってロードされます。このアプリケーションは特別なものではなく、Springチュートリアルに基づいたシンプルなHello Worldです。
詳細: https://www.lunasec.io/docs/blog/spring-rce-vulnerabilities
PoCに問題がありますか? LunaSecのフォークを確認してください: https://github.com/lunasec-io/Spring4Shell-POC(こちらはより積極的にメンテナンスされています)。
docker build . -t spring4shell && docker run -p 8080:8080 spring4shell
python exploit.py --url "http://localhost:8080/helloworld/greeting"
cmd GETパラメータを変更します(デフォルトはhttp://localhost:8080/shell.jsp)
修正済み! この記事を書いている時点では、エクスプロイトのたびにコンテナ(おそらくTomcatのみ)を再起動する必要があります。この問題を積極的に解決しようとしています。
エクスプロイトを再実行すると、{old_filename}_.jsp という追加のアーティファクトファイルが作成されます。
改善のためのPRやDM @Rezn0k を歓迎します!