Every CVESearch/Get API key

GHSA-9j7f-3r4p-pwh6

nono-py vulnerable to authorization bypass / policy confusion

5.2 MediumFix available

GHSA-9j7f-3r4p-pwh6 is a medium vulnerability (CVSS 5.2) in nono-py, published June 26, 2026. No source lists public exploit code. Fixed in nono-py 0.11.0.

Severity
5.2 MediumCVSS 3.1, GitHub Advisories
Exploit chance
UnscoredNo EPSS score yet
Exploitation
None knownNot on CISA’s or ENISA’s lists
Fixed in
0.11.0nono-py +1 more

Description

The python API made a restrictive-looking configuration unsafe by default. A caller could configure only reverse- proxy credential routes, put the child in CapabilitySet.proxy_only, and reasonably expect network access to be limited to those routes. Instead, because empty allowed_hosts meant allow-all inside nono-proxy, the child could use the local proxy as a transparent CONNECT tunnel to non-route nominated hosts (not including metadata endpoints).

That is an authorization bypass / policy confusion issue:

  • Intended policy: route-only proxy access.
  • Actual policy: route-only plus arbitrary transparent CONNECT.
  • Boundary crossed: sandboxed child gains broader outbound network reach than the Python policy appears to grant.
  • Impact depends on environment, but it can allow exfiltration or access to unintended internet/internal services through the unsandboxed proxy.

This should be classified as medium severity by default, potentially high if users rely on route-only configs for strict egress control around untrusted code or sensitive credentials. The fix is security-relevant because it changes the default from implicit allow-all to explicit opt-in.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
Low
Integrity
Low
Availability
None

Affected packages

Affected packages
PackageAffectedFixed
nono-py
PyPI
through 0.10.1
0.11.0
nono-py
PyPI
before 0.11.0, plus listed versions
0.1.00.10.00.10.10.2.00.3.1
Show 9 moreShow less
0.4.00.4.20.5.00.6.00.7.00.7.20.8.00.9.00.9.2
0.11.0

What each source reports

GitHub Advisories Score used5.2

nono-py vulnerable to authorization bypass / policy confusion

The python API made a restrictive-looking configuration unsafe by default. A caller could configure only reverse- proxy credential routes, put the child in CapabilitySet.proxy_only, and reasonably expect network access to be limited to those routes. Instead, because empty allowed_hosts meant allow-all inside nono-proxy, the child could use the local proxy as a transparent CONNECT tunnel to non-route nominated hosts (not including metadata endpoints).

That is an authorization bypass / policy confusion issue:

  • Intended policy: route-only proxy access.
  • Actual policy: route-only plus arbitrary transparent CONNECT.
  • Boundary crossed: sandboxed child gains broader outbound network reach than the Python policy appears to grant.
  • Impact depends on environment, but it can allow exfiltration or access to unintended internet/internal services through the unsandboxed proxy.

This should be classified as medium severity by default, potentially high if users rely on route-only configs for strict egress control around untrusted code or sensitive credentials. The fix is security-relevant because it changes the default from implicit allow-all to explicit opt-in.

Record
GHSA-9j7f-3r4p-pwh6
CVSS 3.1
5.2 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
Weakness
CWE-1188
Updated
2026-11-02
OSV5.2

nono-py vulnerable to authorization bypass / policy confusion

The python API made a restrictive-looking configuration unsafe by default. A caller could configure only reverse- proxy credential routes, put the child in CapabilitySet.proxy_only, and reasonably expect network access to be limited to those routes. Instead, because empty allowed_hosts meant allow-all inside nono-proxy, the child could use the local proxy as a transparent CONNECT tunnel to non-route nominated hosts (not including metadata endpoints).

That is an authorization bypass / policy confusion issue:

  • Intended policy: route-only proxy access.
  • Actual policy: route-only plus arbitrary transparent CONNECT.
  • Boundary crossed: sandboxed child gains broader outbound network reach than the Python policy appears to grant.
  • Impact depends on environment, but it can allow exfiltration or access to unintended internet/internal services through the unsandboxed proxy.

This should be classified as medium severity by default, potentially high if users rely on route-only configs for strict egress control around untrusted code or sensitive credentials. The fix is security-relevant because it changes the default from implicit allow-all to explicit opt-in.

Record
GHSA-9j7f-3r4p-pwh6
CVSS 3.1
5.2 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N
Weakness
CWE-1188
Updated
2026-11-02

History

History
RecordedChangedSources
first indexedGitHub Advisories, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

References

MoveEnter Open