Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Continuous fuzzing with OSS-Fuzz?

Open
#346 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
c, github
Domain
security, testing

Research direction

The proposal names the parser, cbor_value_validate, CBOR-to-JSON conversion, json2cbor, the encoder, a new fuzz/ folder, and OSS-Fuzz build files. First review the TinyCBOR API and OSS-Fuzz integration requirements, then build and run the proposed libFuzzer harnesses with ASan/UBSan. Done means the harnesses cover those APIs and the project is configured for continuous fuzzing; a maintainer contact for private reports is also needed.

Written by the indexing model from the issue text.

Description

Hi! I'd like to help set up continuous fuzzing in OSS-Fuzz for TinyCBOR. Memory-safety bugs keep being reported here (e.g. #258, #259, #318, #328), often found by people running their own private fuzzers: with OSS-Fuzz they would be found early and reported privately to you.

I know Qt bundles a copy of TinyCBOR and Qt is in OSS-Fuzz, but that only covers the paths Qt uses, on Qt's copy. I'd write libFuzzer harnesses for TinyCBOR's own API: the parser and cbor_value_validate, the CBOR-to-JSON conversion, json2cbor and the encoder (in a fuzz/ folder here), plus the OSS-Fuzz build files.

The only thing needed from you is a maintainer listed as the contact for the private bug reports. Would that be welcome? If you'd prefer something lighter, I could set up ClusterFuzzLite in your CI instead.

I'd write the harnesses with the help of Claude Code, but I'll review and test everything myself (with ASan/UBSan) and can explain any part of it.

Dominant language
C
Stars
640
Forks
222
Avg merge
2d 3h
Merged PRs (30d)
4

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from intel/tinycbor

All issues in intel/tinycbor

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.