by @LeSuisse Activity log
- Created suggestion
- @LeSuisse dismissed (not in Nixpkgs)
facil.io and downstream iodine ruby gem vulnerable to uncontrolled resource consumption and loop with unreachable exit condition
facil.io is a C micro-framework for web applications. Prior to commit 5128747363055201d3ecf0e29bf0a961703c9fa0, `fio_json_parse` can enter an infinite loop when it encounters a nested JSON value starting with `i` or `I`. The process spins in user space and pegs one CPU core at ~100% instead of returning a parse error. Because `iodine` vendors the same parser code, the issue also affects `iodine` when it parses attacker-controlled JSON. The smallest reproducer I found is `[i`. The quoted-value form that originally exposed the issue, `[""i`, reaches the same bug because the parser tolerates missing commas and then treats the trailing `i` as the start of another value. Commit 5128747363055201d3ecf0e29bf0a961703c9fa0 fixes the issue.
References
-
https://github.com/boazsegev/facil.io/security/advisories/GHSA-2x79-gwq3-vxxm x_refsource_CONFIRMexploit
Affected products
- ==< 0.7.59
- ==< 5128747363055201d3ecf0e29bf0a961703c9fa0
Matching in nixpkgs
pkgs.iodine
Tool to tunnel IPv4 data through a DNS server
pkgs.networkmanager-iodine
NetworkManager's iodine plugin
-
nixos-unstable 1.2.0-unstable-2025-12-22
- nixpkgs-unstable 1.2.0-unstable-2025-12-22
- nixos-unstable-small 1.2.0-unstable-2025-12-22
-
nixos-25.11 1.2.0-unstable-2025-10-11
- nixos-25.11-small 1.2.0-unstable-2025-10-11
- nixpkgs-25.11-darwin 1.2.0-unstable-2025-10-11
Package maintainers
-
@jtojnar Jan Tojnar <jtojnar@gmail.com>
-
@obadz obadz <obadz-nixos@obadz.com>