Skip to main content

Fuzzy matching HTTP file server with autocomplete and fallback

Project description

🔥 fuzzy-httpserver

A lightweight, zero-dependency Python HTTP file server with fuzzy filename matching and automatic fallback directory listing. Serve files easily without requiring users to know exact filenames — great for red teams, internal tooling, and lazy typing 😎.


🚀 Features

  • 🔍 Fuzzy and prefix-based filename matching
  • 🧾 Server-side logs directory contents if no file is matched
  • ⚙️ Supports custom port and directory configuration
  • ✅ No external dependencies — plug-and-play
  • 🐍 Written in pure Python 3
  • 📤 Supports POST data requests
  • 🎨 Colored server-side output for better readability

📦 Installation

Install via pip:

pip install fuzzy-httpserver

🧪 Usage

Serve the current directory on the default port (8000):

fuzzy-httpserver

Serve a specific directory on a custom port:

fuzzy-httpserver -d /opt/tools -p 9001

Example

wget http://<ip>:8000/ligolo-win

Even if the exact file is ligolo-Agent-Windows-amd.exe, it will still serve the file thanks to fuzzy matching. If nothing is found, you’ll get:

[!] File not found. Available files:

- chisel_windows
- payload_generator

Basically the list of files on that server directory


🛠 Command-Line Options

Option Description
-p, --port Port to listen on (default: 8000)
-d, --directory Directory to serve (default: current dir)

📨 POST Support

You can now send raw data via HTTP POST, and it will be saved on the server as a file. The filename will be prefixed with fuzzy_post_data_ followed by the requested name.

Example

curl --data @file.txt http://<ip>:8000/mydump.txt
#OR
curl --data "username=admin&password=1234" http://<ip>:8000/formdata.txt

🧠 Why?

Sometimes during internal testing, CTFs, or red teaming, we just want to serve files quickly — but can’t remember exact filenames. fuzzy-httpserver saves time by letting you guess loosely.


🧑‍💻 Author & Credits

Built with 💻 and ☕ by PakCyberbot.

🔗 Connect with me:


✨ Contributions Welcome

Want to improve it? Found a bug? PRs and issues are welcome!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fuzzy_httpserver-1.3.0.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fuzzy_httpserver-1.3.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file fuzzy_httpserver-1.3.0.tar.gz.

File metadata

  • Download URL: fuzzy_httpserver-1.3.0.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.4

File hashes

Hashes for fuzzy_httpserver-1.3.0.tar.gz
Algorithm Hash digest
SHA256 54d0c9a99ca259cb87acebf4d76c48db75f72ddbd304c1d011e66d614600fc37
MD5 3ad6271b454a5bfde5329102b705765f
BLAKE2b-256 d168e706faf0cdccdf99ed1180090ea9b6859e1007f7c86635456280e70c946e

See more details on using hashes here.

File details

Details for the file fuzzy_httpserver-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for fuzzy_httpserver-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3bc361427953fde69b0229caacf71eaaa2add8bf01aa79583ef64abe5ad09f63
MD5 fab0f0904e69a60a8b7157f5289f553f
BLAKE2b-256 79a143f05c27e63b7597e46630ca275e0ca96baf3ebccb6327adfb8637046411

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page