
CVE-2022-44900に脆弱なデモWebアプリ
CVE-2022-44900 に対して脆弱なデモ Web アプリケーション。
CVE-2022-44900 は、Python ライブラリ py7zr バージョン 0.20.0 以前の SevenZipFile.extractall() 関数におけるディレクトリトラバーサルの脆弱性であり、悪意のある 7z ファイルの抽出を介して攻撃者がローカルマシン上の任意のファイルを読み書きできるようにします。
CVE-2022-44900 の脆弱性を悪用するには、攻撃者は任意のファイル読み取りを実現するためのシンボリックリンクと、パストラバーサルペイロードを名前に含むファイル(任意のファイル書き込みを実現するため)を含む悪意のある 7z アーカイブを作成する必要があります。
詳細: https://lessonsec.com/cve/cve-2022-44900/
悪意のあるアーカイブを生成するには slip を使用してください: https://github.com/0xless/slip
脆弱な Web アプリケーションを実行するには、docker コンテナを作成するか、サーバーのみを実行するかのいずれかです。
サーバーのみを実行する場合は、以下を実行する必要があります:
pip3 install py7zr==0.20.0
脆弱なバージョンの py7zr をインストールします。
次に、次のコマンドでアプリケーションを実行します:
python3 slipper.py
Web アプリケーションは localhost:9999 でアクセス可能になります。
コンテナを作成するには、dockerfile を使用して slipper イメージを作成します。
次に、host ネットワークを使用し、ポート 9999 を公開するコンテナを作成します。他のインストール方法と同様に、これにより localhost:9999 で Web アプリケーションにアクセスできるようになります。
Web サイトは次のように表示されます:

これでファイルを抽出し、このラボの悪用を試すことができます。
この Web アプリケーションは一般公開を意図しておらず、おそらく他の脆弱性も抱えており、通常の Web サイトのようにすべてのエラーを適切に処理するわけではありません。 このソフトウェアを安全に使用するようにしてください。
このプロジェクトは GPL-3.0 ライセンスの下で提供されています ライセンス。