Security Resilience

CVE-2023-49284

Fishshell Fish ≤ 3.6.2

Public PoC
Published
05 December 2023
Modified
21 November 2024
Patch / advisory
CVSS Score v3.1 3.9
Click a component to see what it means
Raw vectorCVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:L
EPSS Score 0.0047 40th percentile
Risk Priority 33 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2023-49284 is a low-severity Interpretation Conflict (CWE-436) vulnerability in Fishshell Fish. Its CVSS base score is 3.9 (Low).

Operationally, ranked at the 40th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

fish is a smart and user-friendly command line shell for macOS, Linux, and the rest of the family. fish shell uses certain Unicode non-characters internally for marking wildcards and expansions. It will incorrectly allow these markers to be read on…

more

command substitution output, rather than transforming them into a safe internal representation. While this may cause unexpected behavior with direct input (for example, echo \UFDD2HOME has the same output as echo $HOME), this may become a minor security problem if the output is being fed from an external program into a command substitution where this output may not be expected. This design flaw was introduced in very early versions of fish, predating the version control system, and is thought to be present in every version of fish released in the last 15 years or more, although with different characters. Code execution does not appear to be possible, but denial of service (through large brace expansion) or information disclosure (such as variable expansion) is potentially possible under certain circumstances. fish shell 3.6.2 has been released to correct this issue. Users are advised to upgrade. There are no known workarounds for this vulnerability.

CWE(s)

Related Threats

CVEs Like This One

CVE-2026-49332Shared CWE-436
CVE-2024-3386Shared CWE-436
CVE-2026-33808Shared CWE-436
CVE-2026-87627Shared CWE-436
CVE-2026-32065Shared CWE-436
CVE-2024-2004Shared CWE-436
CVE-2026-92597Shared CWE-436
CVE-2026-6270Shared CWE-436
CVE-2026-40930Shared CWE-436
CVE-2026-81378Shared CWE-436

Affected Assets

fishshell
fish
≤ 3.6.2

Mitigating Controls

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

blocks

A.8.25 mandates a secure SDLC process with checkpoints, secure coding, testing and training; it does not stop differing interpretations of shared state or inputs between two products from arising or being exploited

blocks

A.8.26 only requires that security requirements (including resilience against injections or input controls) be identified and specified during development or acquisition; it does not itself enforce, implement or assure any mechanism that stops an interpretation conflict from being exploitable.

blocks

A.8.27 establishes and applies secure-by-design principles (defense-in-depth, least privilege, assume-breach, distrust-external-input, hardening, etc.) but does not stop two products from interpreting the same input or protocol step differently; the resulting state/conflict weakness can still be present and exploitable.

prevents

Secure coding standards can enforce canonical input handling and strict protocol compliance to avoid misinterpretation between products.

finds

Security testing can detect and correct cases where one component misinterprets another’s state or messages.

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-436, a class-level weakness, and none of its children carries one either.

References