Listen "Deserial Killer (with Matt Schwager)"
Episode Synopsis
Jared sits down with Trail of Bits security engineer Matt Schwager to discuss the persistent security risks of Ruby’s Marshal library. Matt explains that while Marshal (and Python’s Pickle) makes serialization simple and fast for tasks like caching, its “serialize anything” design has led to over a decade of recurring vulnerabilities. Despite repeated patches, new bugs and exploitation gadgets keep surfacing, often hidden in defaults or legacy code, as seen in Rails caching and RubyGems.org. Matt argues that this reflects a fundamental trade-off between ergonomics and security, suggesting alternatives like JSON are safer, though less convenient. He highlights mitigation strategies such as documentation, static analysis, and fuzzing with his tool Ruzzy, while also pointing to broader Ruby risks like eval misuse, SSRF, and supply chain issues. Jared reflects on the cultural tension in Ruby between ease of use and security, wondering if safer defaults could help developers avoid these common pitfalls.Links:Trail of Bits BlogRuby Marshal documentationPython Pickle documentationJSONYAMLTOMLMessagePackRails Caching GuideRubyGems.orgRubyGems source on GitHubRuzzy on GitHubAFL on GitHubSemgrep RegistryBlack Hat USA 2017 TalkDead Code Podcast Links:MastodonXJared’s Links:MastodonXtwitch.tv/jardonamronJared’s Newsletter & WebsiteEpisode Transcript Hosted on Acast. See acast.com/privacy for more information.
More episodes of the podcast Dead Code
Deferred Conflict (with Steve Klabnik)
16/12/2025
Poison Pills (with Joel Hawksley)
02/12/2025
Ground Zero-Cost Bindings (with Josh Vlk)
18/11/2025
Brut-al Death (with David Bryant Copeland)
04/11/2025
God Class Funeral (with Adam Tornhill)
21/10/2025
Crushing Riffs (with Kasper Timm Hansen)
23/09/2025
Fear-Driven Everything (with Justin Searls)
09/09/2025
Rage Quit Stamina Theory
26/08/2025
Radiation Hardened (with Dave Gauer)
12/08/2025
Epistemic Extinction (with Mond)
29/07/2025
ZARZA We are Zarza, the prestigious firm behind major projects in information technology.