
open-webui における CSRF を介した低権限ユーザー向け RCE エクスプロイト
$${\color{red} THIS \space EXPLOIT \space MAY \space VIOLATE \space THE \space LAW.}$$ $${\color{red}\space YOU \space ARE \space RESPONSIBLE \space FOR \space YOUR \space ACTIONS.}$$ $${\color{red}DEMONSTRATION \space PURPOSE \space ONLY.}$$
open-webui における CSRF を介した非管理者ユーザーによる RCE により、攻撃者は組み込みの JavaScript を含む悪意のある HTML 文書を送信でき、リバースシェルを含むファイルをアップロードして実行することが可能になります。
メインステージの前に、スクリプトは multipart フォームデータ送信を行う HTML 文書を配信するための Web サーバーと netcat リスナーを起動します。次に、その文書を脆弱性のあるサイトにアップロードすると、ページの読み込みイベントで JavaScript が Python リバースシェルを含むファイルをアップロードします。すべてがうまくいけば、ターミナルでリバースシェルを受け取ることができます。また、ディレクトリリスティングが表示される場合は、ページにアクセスしてファイルのアップロード処理を手動で確認し、デバッグすることもできます。
git clone https://github.com/theUnknownSoul/CVE-2024-7806install.sh スクリプトの権限を変更し、root で実行して、必要なシステム依存関係と権限をすべてインストールします。serve.sh スクリプト内の Web サーバーと netcat リスナーのポートを変更します。non_suspicious_file.py 内のリバースシェル用の IP とサーバーポートを変更します。 pip install -r requirements.txt でインストールします。python CVE-2024-7806.py -u <target url>