{"id":19681038,"url":"https://github.com/aflplusplus/commit-fuzzing-demo","last_synced_at":"2025-08-02T01:36:23.892Z","repository":{"id":86884868,"uuid":"244369476","full_name":"AFLplusplus/Commit-Fuzzing-Demo","owner":"AFLplusplus","description":"This is an example library to show how to fuzz with AFL++ only the code modified by the last commit.","archived":false,"fork":false,"pushed_at":"2020-03-02T13:24:24.000Z","size":6,"stargazers_count":15,"open_issues_count":0,"forks_count":5,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-29T11:13:07.287Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AFLplusplus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-03-02T12:47:37.000Z","updated_at":"2024-06-28T12:37:10.000Z","dependencies_parsed_at":"2023-03-22T23:31:05.165Z","dependency_job_id":null,"html_url":"https://github.com/AFLplusplus/Commit-Fuzzing-Demo","commit_stats":{"total_commits":8,"total_committers":1,"mean_commits":8.0,"dds":0.0,"last_synced_commit":"93069e4333612dcd5795917453a37d99f80d7d1f"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AFLplusplus%2FCommit-Fuzzing-Demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AFLplusplus%2FCommit-Fuzzing-Demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AFLplusplus%2FCommit-Fuzzing-Demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AFLplusplus%2FCommit-Fuzzing-Demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AFLplusplus","download_url":"https://codeload.github.com/AFLplusplus/Commit-Fuzzing-Demo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224151619,"owners_count":17264436,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":"2024-11-11T18:06:48.285Z","updated_at":"2024-11-11T18:06:48.750Z","avatar_url":"https://github.com/AFLplusplus.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AFL++ Commit Fuzzing Demo\n\nThis is an example library to show how to fuzz with AFL++ only the code modified by the last commit.\n\nThis can be easily integrated as pre-commit hook or CI script.\n\nBasically, for each of your harnesses, you have to define the list of source files covered by fuzzing that harness.\n\nWhen `fuzz.py` is runned, it checks the files modified by the last commit in git and, if there are some harnesses that depends on one of such files, fuzz them for a fixed period of time using the LLVM whitelisting and so collecting coverage feedback only from the modified files.\n\nThis can be called \"commit oriented fuzzing\" if you want.\n\nThis code was written in 10 minutes, don't expect something for your production-ready library.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faflplusplus%2Fcommit-fuzzing-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faflplusplus%2Fcommit-fuzzing-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faflplusplus%2Fcommit-fuzzing-demo/lists"}