Skip to content

Add simple fuzzer for config deserialization#4913

Merged
Spaceman1701 merged 1 commit intoprometheus:mainfrom
SoloJacobs:fuzzing
Feb 5, 2026
Merged

Add simple fuzzer for config deserialization#4913
Spaceman1701 merged 1 commit intoprometheus:mainfrom
SoloJacobs:fuzzing

Conversation

@SoloJacobs
Copy link
Contributor

@SoloJacobs SoloJacobs commented Jan 25, 2026

This change does not include any fixes to config.Load. Those fixes should be handled separately, since a project is never completely fuzzed.

We also don't add any change to the .github/workflows. This fuzzer currently has findings, which it detects frequently. Thus, even a simple smoke test would be very noisy. Moreover, the goal is to use the infrastructure of the OSS-fuzz project rather than GitHubs.

go ensures that the fuzzer can pass at least once, with the default data provided. Therefore, make test treats FuzzLoad as a trivial unit-test. This avoids fuzzing targets becoming outdated.

Related to #4912

This change does not include any fixes to `config.Load`. Those fixes
should be handled separately, since a project is never completely
fuzzed.

We also don't add any change to the `.github/workflows`. This fuzzer
currently has findings, which it detects frequently. Thus, even a simple
smoke test would be very noisy. Moreover, the goal is to use the
infrastructure of the OSS-fuzz project rather than GitHubs.

`go` ensures that the fuzzer can pass at least once, with the default
data provided. Therefore, `make test` treats `FuzzLoad` as a trivial
unit-test. This avoids fuzzing targets becoming outdated.

Related to prometheus#4912

Signed-off-by: Solomon Jacobs <solomonjacobs@protonmail.com>
@Spaceman1701 Spaceman1701 merged commit 41ad07a into prometheus:main Feb 5, 2026
7 checks passed
@SoloJacobs SoloJacobs deleted the fuzzing branch February 5, 2026 12:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants