---
id: CVE-2026-38822
title: >-
  In openNDS before 11.0.0, the client_params.sh script, invoked by the openNDS
  daemon to serve the authenticated client status page, is vulnerable to OS
  command injection through crafted HTTP GET query parameter keys
summary: >-
  In openNDS before 11.0.0, the client_params.sh script, invoked by the openNDS
  daemon to serve the authenticated client status page, is vulnerable to OS
  command injection through crafted HTTP GET query parameter keys. An
  authenticated cap…
severity: high
cvss: 7.6
cvssVector: 'CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L'
cwe:
  - CWE-78
published: '2026-08-28'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T15:54:36.797'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-38822'
references:
  - url: >-
      https://github.com/openNDS/openNDS/commit/294983e859bb678eef7db06fc9f6afab0b489d8e
    label: cve@mitre.org
tags:
  - nvd
epss: 0.00849
epssPercentile: 0.56646
ingestedAt: '2026-09-09T16:14:05.517Z'
---

## Overview

In openNDS before 11.0.0, the client_params.sh script, invoked by the openNDS daemon to serve the authenticated client status page, is vulnerable to OS command injection through crafted HTTP GET query parameter keys. An authenticated captive portal user can inject arbitrary shell commands by embedding semicolons in a URL query parameter name.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
