
Next cloud
このリポジトリは、教育および研究目的のために、管理されたDockerラボ環境で公開されパッチ済みの脆弱性を再現します。
この環境は意図的に脆弱性を含んでおり、必ず分離されたテスト環境でのみ展開してください。明示的な許可なくシステムを悪用しようとしないでください。
このプロジェクトの目的は、脆弱性分析、悪用手順、および緩和策を実証することです。
このラボは、Nextcloud Server の Missing Scope Validation 脆弱性である CVE-2023-26482 を再現します。この脆弱性により、認証済みユーザーが悪意のあるワークフローを作成でき、「Workflow Script」アプリがインストールされている場合、リモートコード実行(RCE)につながります。
requests ライブラリ環境を起動します:
docker-compose up -d
インスタンスを構成します(自動):
セットアップスクリプトを実行して、脆弱性のある workflow_script アプリをインストールし、テストユーザーを作成します。
bash setup.sh
注:Nextcloud が完全に初期化されるのを待つため、数分かかる場合があります。
Python の依存関係をインストールします:
pip install -r requirements.txt
エクスプロイトを実行します:
python exploit.py
このスクリプトは次のことを行います:
attacker としてログインします。text/plain のファイルに対してコマンド(touch /tmp/pwned)を実行する、グローバル/管理者ワークフロールール(本来は禁止されるべき)を作成します。RCE をトリガーします:
attacker / AttackerPassword123! で http://localhost:8080 にログインします。test.txt)をアップロードします。コンテナ内にファイル /tmp/pwned が存在するか確認します:
docker-compose exec app ls -l /tmp/pwned
まず、管理者権限なしでラボ用に作成されたユーザー資格情報から始めましょう:
ここでわかるように、attacker ユーザーには管理者権限がありません:

exploit.py ファイルを実行してみましょう:
ここでわかるように、ランダムな .txt ファイルをアップロードするだけです。
それでは実行します! :
https://nvd.nist.gov/vuln/detail/cve-2023-26482? https://app.opencve.io/cve/CVE-2023-26482?
この脆弱性(CVE-2023-26482)は、Nextcloud Server を修正版(≥ 24.0.10 または ≥ 25.0.4)にアップグレードすることで修正できます。