The exploit can be ran manually using the provided python files. It can also be run using nix
This exploit runs on Python 3. The commands below may need to use python3
instead of python and pip3 instead of pip.
First the exact dependencies must be installed by running,
pip install -r requirements.txtNow the setup is complete,
python server.py # Launches the vulnerable Gradio server
python exploit.py <url> # To download the contents of the url onto the serverSome url responses are compressed so they are not readable without decompression.
To run the server with nix, there are two options.
nix run .#gradio-server # Runs the server standalone
nix run .#gradio-server-vm # Runs the server in a resource constrained vmThen to run the exploit,
nix run .#expoit -- <url> # Runs the exploit, downloading the contents of the
# url provided to the server