{"id":25904446,"url":"https://github.com/toasterbirb/dos-fuzzer","last_synced_at":"2026-02-25T22:30:56.874Z","repository":{"id":263187282,"uuid":"889543225","full_name":"Toasterbirb/dos-fuzzer","owner":"Toasterbirb","description":"[MIRROR] Fuzzer for finding DoS flaws in file parsers","archived":false,"fork":false,"pushed_at":"2025-04-10T21:24:31.000Z","size":74,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-19T06:54:24.222Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Toasterbirb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-11-16T15:43:09.000Z","updated_at":"2025-04-10T21:24:34.000Z","dependencies_parsed_at":"2025-01-23T15:22:38.033Z","dependency_job_id":"d4681c92-439c-4a3f-b786-5ae3fe90326f","html_url":"https://github.com/Toasterbirb/dos-fuzzer","commit_stats":null,"previous_names":["toasterbirb/dos-fuzzer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Toasterbirb/dos-fuzzer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Toasterbirb%2Fdos-fuzzer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Toasterbirb%2Fdos-fuzzer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Toasterbirb%2Fdos-fuzzer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Toasterbirb%2Fdos-fuzzer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Toasterbirb","download_url":"https://codeload.github.com/Toasterbirb/dos-fuzzer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Toasterbirb%2Fdos-fuzzer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29843374,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-25T21:18:31.832Z","status":"ssl_error","status_checked_at":"2026-02-25T21:18:29.265Z","response_time":61,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":[],"created_at":"2025-03-03T04:26:24.466Z","updated_at":"2026-02-25T22:30:56.857Z","avatar_url":"https://github.com/Toasterbirb.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dos-fuzzer\n\ndos-fuzzer is a tool for finding flaws in file parsing that results in crashes and/or DoS in the form of the file parser freezing. This is done by randomly changing portions of the file and seeing how the program being tested reacts to it. Flaws are detected from the return value and the execution time of the program.\n\nSince part of the testing involves parsing possibly corrupted files, the outcomes might be less than desired. One such bad outcome might be resource exhaustion DoS for example and cause the host running the fuzzing to crash. Thus it is recommended to run tests in a virtual machine or in some kind of a contained environment.\n\n## Usage\nSee the output of `dos-fuzzer --help`\n\n### Output format explanation\nHere's one possible line of output:\n```\n0x3756 | ret 5228ms | 3d b9 0b 53 97 a7 8a 8e 48 29 d4 18 e6 5f 98 0d 0d 82 d8 58 02 cd f6\n```\nThe first column is the location where the string of bytes would be in the patched binary.\n\nThe middle column shows the return result of the execution. If the return value was non-zero, it'll contain the word `ret`. Following it is the execution time measured in milliseconds.\n\nThe last column shows an array of bytes that were patched into the binary started from the address shown in the first column.\n\n## Building\nBuild the project with g++ by running `make`. To speed up the build, you can try using the -j flag.\n```sh\nmake -j$(nproc)\n```\n\n## Installation\nTo install dos-fuzzer to /usr/local/bin, run the following\n```sh\nmake install\n```\nYou can customize the installation prefix with the PREFIX variable like so\n```sh\nmake PREFIX=/usr install\n```\n\n## Uninstall\n```sh\nmake uninstall\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoasterbirb%2Fdos-fuzzer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftoasterbirb%2Fdos-fuzzer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftoasterbirb%2Fdos-fuzzer/lists"}