ruzzy

Fuzz test Ruby code and C extensions with coverage-guided fuzzing.

6.5k|561|Updated Jan 14, 2026
One-click install
npx skills add https://github.com/trailofbits/skills --skill ruzzy-trailofbits
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ruzzy
Source: https://github.com/trailofbits/skills/tree/main/plugins/testing-handbook-skills/skills/ruzzy
Command: npx skills add https://github.com/trailofbits/skills --skill ruzzy-trailofbits

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Fuzz testing helps identify memory-safety bugs, crashes, and robustness issues in Ruby applications and their native extensions, accelerating the hardening process before release.

Core Features & Use Cases

  • Tracer-based fuzzing for pure Ruby code using the Ruby interpreter and harness patterns.
  • Fuzzing of Ruby C extensions via libFuzzer with sanitizer support (ASan/UBSan).
  • Use cases include fuzzing Ruby gems with native components and testing libraries with compiled components.

Quick Start

Run fuzz campaigns against a Ruby project to uncover memory safety bugs in pure Ruby and native extensions.

Frequently Asked Questions about ruzzy

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

FAQPage Schema
How do I fuzz test Ruby C extensions for memory safety bugs?

You can fuzz test Ruby C extensions for memory safety bugs by running coverage-guided fuzz campaigns with libFuzzer and sanitizer support, using the Ruzzy gem to identify crashes and robustness issues in native code.

What is coverage-guided fuzzing for Ruby code?

Coverage-guided fuzzing for Ruby code uses tracer-based harnesses within the Ruby interpreter to automatically generate inputs and identify crashes, accelerating the hardening process for pure Ruby applications and native extensions.

Can I use AddressSanitizer and UBSan when fuzzing Ruby gems?

Yes, you can use AddressSanitizer and UBSan when fuzzing Ruby gems with native components, enabling the detection of memory-safety bugs and undefined behavior in C extensions during fuzz campaigns.

Do I need a specific C toolchain to run fuzz campaigns with Ruzzy?

Yes, running fuzz campaigns with Ruzzy requires Ruby, a C toolchain with sanitizer support, and the Ruzzy gem to execute coverage-guided fuzzing in Linux x86-64 and ARM64 environments.

Does Ruby fuzzing with libFuzzer work on ARM64 environments?

Ruby fuzzing with libFuzzer works on Linux ARM64 environments, supporting both pure Ruby tracer-based harnesses and native C extension fuzzing with sanitizers to uncover memory-safety bugs.