Average Ratings 0 Ratings
Average Ratings 0 Ratings
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.
Description
Syzkaller functions as an unsupervised, coverage-guided fuzzer aimed at exploring vulnerabilities within kernel environments, offering support for various operating systems such as FreeBSD, Fuchsia, gVisor, Linux, NetBSD, OpenBSD, and Windows. Originally designed with a focus on fuzzing the Linux kernel, its capabilities have been expanded to encompass additional operating systems over time. When a kernel crash is identified within one of the virtual machines, syzkaller promptly initiates the reproduction of that crash. By default, it operates using four virtual machines for this reproduction process and subsequently works to minimize the program responsible for the crash. This reproduction phase can temporarily halt fuzzing activities, as all VMs may be occupied with reproducing the identified issues. The duration for reproducing a single crash can vary significantly, ranging from mere minutes to potentially an hour, depending on the complexity and reproducibility of the crash event. This ability to minimize and analyze crashes enhances the overall effectiveness of the fuzzing process, allowing for better identification of vulnerabilities in the kernel.
API Access
Has API
No
API Access
Has API
No
Integrations
FreeBSD
No
Fuchsia Service Maintenance Software
No
NetBSD
No
OpenBSD
No
Integrations
FreeBSD
Yes
Fuchsia Service Maintenance Software
Yes
NetBSD
Yes
OpenBSD
Yes
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
No
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
dvyukov
Website
github.com/dvyukov/go-fuzz
Vendor Details
Company Name
Country
United States
Website
github.com/google/syzkaller