ruzzy

Fuzz Ruby code and C extensions with libFuzzer coverage guidance.

Updated Jan 30, 2026
One-click install
npx skills add https://github.com/andrescardonas7/salchipapa-web --skill ruzzy-andrescardonas7
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ruzzy
Source: https://github.com/andrescardonas7/salchipapa-web/tree/main/.cursor/skills/testing-handbook-skills/ruzzy
Command: npx skills add https://github.com/andrescardonas7/salchipapa-web --skill ruzzy-andrescardonas7

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a coverage-guided fuzzer specifically for Ruby code and its C extensions, enabling the discovery of memory corruption and undefined behavior bugs.

Core Features & Use Cases

  • Fuzzing Ruby: Test pure Ruby applications and libraries for vulnerabilities.
  • C Extension Safety: Detect memory safety issues in Ruby C extensions.
  • Sanitizer Support: Integrates AddressSanitizer (ASan) and UndefinedBehaviorSanitizer (UBSan) for detailed bug reporting.
  • Use Case: You have a Ruby gem with a native C extension that parses complex data. Use Ruzzy to automatically generate malformed inputs that could crash the extension, revealing memory leaks or buffer overflows.

Quick Start

Install Ruzzy by running the gem install command with the specified environment variables.

Frequently Asked Questions about ruzzy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fuzz Ruby C extensions to find memory corruption bugs?

Fuzzing Ruby C extensions detects memory corruption bugs by using coverage-guided fuzzing with libFuzzer integration. This approach automatically generates malformed inputs to reveal memory leaks and buffer overflows in native extension code.

What is coverage-guided fuzzing for Ruby applications?

Coverage-guided fuzzing for Ruby applications is a testing technique that uses libFuzzer to automatically generate malformed inputs. It targets pure Ruby code and C extensions to uncover undefined behavior and memory safety vulnerabilities.

How do I use AddressSanitizer and UndefinedBehaviorSanitizer with Ruby fuzzing?

AddressSanitizer and UndefinedBehaviorSanitizer integrate with Ruby fuzzing by requiring specific build flags and environment variables. These sanitizers provide detailed bug reporting for memory corruption and undefined behavior detected during fuzzing sessions.

Can I fuzz pure Ruby code or does it only work with C extensions?

Fuzzing supports both pure Ruby code and Ruby C extensions. You can test pure Ruby applications and libraries for vulnerabilities, while also detecting memory safety issues in native C extensions.

What build environment do I need to set up before fuzzing Ruby native extensions?

Fuzzing Ruby native extensions requires specific build flags and environment variables configured for AddressSanitizer and UndefinedBehaviorSanitizer integration. You must install the fuzzer with these environment variables set during the gem install process.