Average Ratings 0 Ratings
Average Ratings 0 Ratings
Description
OSS-Fuzz provides ongoing fuzz testing for open source applications, a method renowned for identifying programming flaws. Such flaws, including buffer overflow vulnerabilities, can pose significant security risks. Through the implementation of guided in-process fuzzing on Chrome components, Google has discovered thousands of security weaknesses and stability issues, and now aims to extend this beneficial service to the open source community. The primary objective of OSS-Fuzz is to enhance the security and stability of frequently used open source software by integrating advanced fuzzing methodologies with a scalable and distributed framework. For projects that are ineligible for OSS-Fuzz, there are alternatives available, such as running personal instances of ClusterFuzz or ClusterFuzzLite. At present, OSS-Fuzz is compatible with languages including C/C++, Rust, Go, Python, and Java/JVM, with the possibility of supporting additional languages that are compatible with LLVM. Furthermore, OSS-Fuzz facilitates fuzzing for both x86_64 and i386 architecture builds, ensuring a broad range of applications can benefit from this innovative testing approach. With this initiative, we hope to build a safer software ecosystem for all users.
Description
Go-fuzz serves as a coverage-guided fuzzing tool designed specifically for testing Go packages, making it particularly effective for those that handle intricate inputs, whether they are textual or binary in nature. This method of testing is crucial for strengthening systems that need to process data from potentially harmful sources, such as network interactions. Recently, go-fuzz has introduced initial support for fuzzing Go Modules, inviting users to report any issues they encounter with detailed descriptions. It generates random input data, which is often invalid, and the function must return a value of 1 to indicate that the fuzzer should elevate the priority of that input in future fuzzing attempts, provided that it should not be stored in the corpus, even if it uncovers new coverage; a return value of 0 signifies the opposite, while other values are reserved for future enhancements. The fuzz function is required to reside in a package that go-fuzz can recognize, meaning the code under test cannot be located within the main package, although fuzzing of internal packages is permitted. This structured approach ensures that the testing process remains efficient and focused on identifying vulnerabilities in the code.
API Access
Has API
No
API Access
Has API
No
Integrations
Atheris
Yes
C
Yes
C++
Yes
ClusterFuzz
Yes
GitHub
Yes
Go
Yes
Google Cloud Storage
Yes
Java
Yes
Python
Yes
Rust
Yes
Integrations
Atheris
No
C
No
C++
No
ClusterFuzz
No
GitHub
No
Go
No
Google Cloud Storage
No
Java
No
Python
No
Rust
No
Pricing Details
Free
Free Trial
No
Free Version
Yes
Pricing Details
Free
Free Trial
No
Free Version
Yes
Deployment
Web-Based
No
On-Premises
No
iPhone App
No
iPad App
No
Android App
No
Windows
Yes
Mac
Yes
Linux
Yes
Chromebook
No
Deployment
Web-Based
No
On-Premises
No
iPhone App
No
iPad App
No
Android App
No
Windows
Yes
Mac
Yes
Linux
Yes
Chromebook
No
Customer Support
Business Hours
No
Live Rep (24/7)
No
Online Support
Yes
Customer Support
Business Hours
No
Live Rep (24/7)
No
Online Support
Yes
Types of Training
Training Docs
Yes
Webinars
No
Live Training (Online)
No
In Person
No
Types of Training
Training Docs
Yes
Webinars
No
Live Training (Online)
No
In Person
No
Vendor Details
Company Name
Country
United States
Website
github.com/google/oss-fuzz
Vendor Details
Company Name
dvyukov
Website
github.com/dvyukov/go-fuzz