[GODRIVER-1417] Add fuzzer tests to the BSON package(s) Created: 26/Nov/19  Updated: 13/Dec/23  Resolved: 21/Nov/23

Status: Closed
Project: Go Driver
Component/s: Testing
Affects Version/s: None
Fix Version/s: 1.11.0

Type: Epic Priority: Major - P3
Reporter: May Hoque Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to GODRIVER-205 Add Fuzz testing for Encoder and Decoder Closed
Quarter: FY23Q3
Backwards Compatibility: Fully Compatible
Documentation Changes Summary: 1. What would you like to communicate to the user about this feature?
2. Would you like the user to see examples of the syntax and/or executable code and its output?
3. Which versions of the driver/connector does this apply to?
Start date:

 Description   
Epic Summary

Summary

There have been a few cases already of cases where the BSON code used by the driver is a little too happy-path oriented. Invalid BSON or documents seem to have a high chance of triggering panics or otherwise erroneous behavior.

Me and divjot.arora at some point investigated some issues in the BSON code for handling invalid documents that were sent by another user's fuzz testing of a library using the driver. And craig.wilson@mongodb.com has found a case where a negative length causes a panic in validation code.

In general, it seems like what we need is a fuzzer to more systematically find all of these edge cases and increase the robustness of the BSON package.

Implementing a fuzzer for BSON should (who knows, really) be easy to write for BSON, since it is just a lump of bytes.

Documentation

[Scope Document|]
[Technical Design Document|]


Generated at Thu Feb 08 08:36:21 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.