
Apache Dubbo CVE-2020-1948 脆弱性テスト環境、動作確認済みです。
この脆弱性の出現当初、その危険性を検証するために、私たちはインターネット上で多くの人がまとめた例を調べましたが、この脆弱性をスムーズに検証できるものは一つも見つかりませんでした。そこで、独自に作成したものをここに置いておきます。皆さんの参考になれば幸いです。ご意見をお待ちしています!
本環境は Apache Dubbo 公式サンプル環境をベースに改造したもので、公式サンプルプログラムのコンパイル時にエラーとなる箇所を修正しています。例えば:
cd src
mvn package
コンパイルが成功すると、src/target ディレクトリに dubbo.jar ファイルが生成されます。
java -jar target/dubbo.jar
実行が成功すると、12345 ポートをリッスンします。telnet コマンドで接続してテストできます。
telnet x.x.x.x 12345
# dubbo> ls -l
# PROVIDER:
# org.apache.dubbo.spring.boot.sample.consumer.DemoService:1.0.0 -> published: N
# 构建
docker build -t dsolab/dubbo:cve-2020-1948 .
# 运行
docker run -p 12345:12345 dsolab/dubbo:cve-2020-1948 -d
或
docker-compose up -d
# 访问
telnet x.x.x.x 12345
環境をすぐに使いたい(コンパイル環境を用意するのが面倒な)方は、以下のコマンドで当方が提供するイメージ環境を起動できます:
# 需要安装 Docker 和 docker-compose
docker-compose up -d
Apache Dubbo CVE-2020-1948 逆シリアル化脆弱性の検証方法 を参照してください。