{"id":15669698,"url":"https://github.com/alexgustafsson/fuzzing-http-servers","last_synced_at":"2026-03-15T22:48:02.586Z","repository":{"id":83002364,"uuid":"301964761","full_name":"AlexGustafsson/fuzzing-http-servers","owner":"AlexGustafsson","description":"An example setup for quickly getting fuzzing of HTTP servers running. Uses AFL and WFuzz.","archived":false,"fork":false,"pushed_at":"2021-07-14T14:13:40.000Z","size":27,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-12-30T03:18:29.721Z","etag":null,"topics":["afl","american-fuzzy-lop","fuzzing","http","http-server","wfuzz"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AlexGustafsson.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-07T07:54:41.000Z","updated_at":"2025-12-29T20:13:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"b15c2840-de14-4726-b37a-41dec7ea9f18","html_url":"https://github.com/AlexGustafsson/fuzzing-http-servers","commit_stats":{"total_commits":23,"total_committers":1,"mean_commits":23.0,"dds":0.0,"last_synced_commit":"8e415dbd75afa8b51bb3ea4a95a8d2fa3c37f3d3"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AlexGustafsson/fuzzing-http-servers","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlexGustafsson%2Ffuzzing-http-servers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlexGustafsson%2Ffuzzing-http-servers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlexGustafsson%2Ffuzzing-http-servers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlexGustafsson%2Ffuzzing-http-servers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlexGustafsson","download_url":"https://codeload.github.com/AlexGustafsson/fuzzing-http-servers/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlexGustafsson%2Ffuzzing-http-servers/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30553596,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-15T15:03:43.933Z","status":"ssl_error","status_checked_at":"2026-03-15T15:03:37.630Z","response_time":61,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["afl","american-fuzzy-lop","fuzzing","http","http-server","wfuzz"],"created_at":"2024-10-03T14:40:50.537Z","updated_at":"2026-03-15T22:48:02.553Z","avatar_url":"https://github.com/AlexGustafsson.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Quick Start\n\n### Preparation\n\nLinux is required for AFL fuzzing. Tested on a minimal Ubuntu 20.04.1 desktop installation.\n\nRequirements:\n\n* git\n* gcc\n* make\n* bash\n* pip\n* wfuzz\n* libcurl4-openssl-dev\n* libssl-dev\n* python3-pip\n* libini-config-dev\n* libseccomp-dev\n\nThese can be installed on said Ubuntu by running:\n\n```\nsudo apt update \u0026\u0026 apt install build-essential git python3-pip libcurl4-openssl-dev libssl-dev libini-config-dev libseccomp-dev \u0026\u0026 sudo python3 -m pip install wfuzz\n```\n\nOn Ubuntu you'll also need to do the following to use AFL:\n\n```bash\nsudo -i\necho core \u003e /proc/sys/kernel/core_pattern\n```\n\n### Cloning the code\n\n```bash\n# Fetch the project\ngit clone https://github.com/AlexGustafsson/fuzzing-http-servers\n# Enter the project\ncd fuzzing-http-servers\n# Initialize submodules\nmake init\n```\n\n### Fuzzing with AFL\n\nBuild AFL.\n\n```bash\nmake afl\n```\n\nApply the correct patches.\n\n```bash\nmake apply-afl-patches\n```\n\nBuild preeny.\n\n```bash\nmake preeny\n```\n\nBuild one of the servers.\n\n```bash\nmake sources/aaron-kalair/server\n```\n\nStart fuzzing.\n\n```bash\n# The first parameter is the binary to fuzz, any further parameters are used as parameters for the binary itself\n./afl.sh sources/aaron-kalair/server\n```\n\n### Fuzzing with WFuzz\n\nApply the correct patches.\n\n```bash\nmake apply-wfuzz-patches\n```\n\nBuild one of the servers.\n\n```bash\nmake USE_AFL=0 sources/aaron-kalair/server\n```\n\nStart the server.\n\n```bash\n./sources/aaron-kalair/server\n```\n\nStart fuzzing.\n\n```bash\n# Verb fuzzing\nwfuzz -z list,GET-HEAD-POST-TRACE-OPTIONS -X FUZZ http://localhost/\n# Fuzzing using a (non-included) list of words\nwfuzz -w words.txt http://localhost/FUZZ\n```\n\n### Creating, applying and removing patches\n\nWhen patching the servers for use with either of the tools, the code might have to be altered. These commands help aid you.\n\n```bash\n# Create patches from altered sources\nmake create-afl-patches\nmake create-wfuzz-patches\n\n# Apply patches\nmake apply-afl-patches\nmake apply-wfuzz-patches\n\n# Remove patches (warning: performs a hard reset on the repositories!)\nmake remove-patches\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexgustafsson%2Ffuzzing-http-servers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexgustafsson%2Ffuzzing-http-servers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexgustafsson%2Ffuzzing-http-servers/lists"}