Critical flaw in Protobuf library enables JavaScript code execution

Dev world groans as bug lets sneaky code run; commenters shout “eval is evil”

TLDR: A widely used JavaScript library, protobuf.js, had a bug that could let bad actors make your app run their code, now patched in versions 8.0.1 and 7.5.5. Commenters split between “JavaScript is broken” rants and pragmatic questions about real‑world risk, with memes about “eval is evil” flying.

A mega‑popular data tool for JavaScript, protobuf.js (think: the translator apps use to talk to each other), had a nasty bug that could let hackers make your app run their code. A proof‑of‑concept demo is out, and with nearly 50 million weekly downloads, people are rattled. Cue the drama. One commenter, rvz, went full scorched earth, blasting JavaScript, TypeScript, and the whole npm package world as a security nightmare. Another, lioeters, dropped the classic meme: “eval is evil,” pointing at the library’s habit of stitching together text and then executing it—basically the app version of reading a suspicious email out loud.

But it’s not all pitchforks. Skeptics like skybrian asked the practical question: how would an attacker even get a malicious “schema”—the blueprint for data—into your system? Others shared receipts, linking to Endor Labs’ breakdown and the GitHub advisory. The fix is already out (update to 8.0.1 or 7.5.5), and no real‑world attacks have been spotted yet, but researchers warn exploitation is “straightforward.”

In classic internet fashion, the thread split: is this a “don’t load untrusted blueprints, duh” moment or proof that the JavaScript ecosystem is a Jenga tower? Meanwhile, jokesters riffed on “npm install chaos,” and pros debated quick patch vs. deeper redesign. Drama level: high; panic level: moderated by a fast patch and calm voices asking the right questions.

Key Points

  • PoC released for a critical RCE flaw in protobuf.js, a widely used JavaScript Protocol Buffers library.
  • Issue arises from unsafe dynamic code generation using Function() without validating schema-derived identifiers.
  • Impacts protobuf.js versions 8.0.0/7.5.4 and lower; fixes available in 8.0.1 and 7.5.5.
  • Endor Labs reported the flaw, provided a PoC, and notes exploitation is straightforward; no in-the-wild attacks observed yet.
  • Timeline: reported Mar 2; GitHub patch Mar 11; npm updates Apr 4 (8.x) and Apr 15 (7.x).

Hottest takes

“the entire npm ecosystem is the bane of the software security industry” — rvz
“Typical ‘eval is evil’ issue” — lioeters
“How does the attacker supply a malicious schema?” — skybrian
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.