Average Ratings 0 Ratings
Average Ratings 0 Ratings
Description
ToothPicker serves as an innovative in-process, coverage-guided fuzzer specifically designed for iOS, focusing on the Bluetooth daemon and various Bluetooth protocols. Utilizing FRIDA as its foundation, this tool can be tailored to function on any platform compatible with FRIDA. The repository also features an over-the-air fuzzer that showcases an example implementation for fuzzing Apple's MagicPairing protocol through InternalBlue. Furthermore, it includes the ReplayCrashFile script, which aids in confirming any crashes identified by the in-process fuzzer. This simple fuzzer operates by flipping bits and bytes in inactive connections, lacking coverage or injection, yet it serves effectively as a demonstration and is stateful. It requires only Python and Frida to operate, eliminating the need for additional modules or installations. Built upon the frizzer codebase, it's advisable to establish a virtual Python environment for optimal performance with frizzer. Notably, with the introduction of the iPhone XR/Xs, the PAC (Pointer Authentication Code) feature has been implemented. This advancement underscores the necessity for continuous adaptation of fuzzing tools like ToothPicker to keep pace with evolving iOS security measures.
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
Python
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
Yes
iPad App
Yes
Android App
No
Windows
No
Mac
Yes
Linux
No
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
Secure Mobile Networking Lab
Website
github.com/seemoo-lab/toothpicker
Vendor Details
Company Name
dvyukov
Website
github.com/dvyukov/go-fuzz