CVE-2026-17497 PUBLISHED

NoteGen arbitrary OS command execution via Tauri shell:allow-execute for bash/python

Assigner: JFROG
Reserved: 26.07.2026 Published: 26.07.2026 Updated: 26.07.2026

NoteGen before 0.32.0 grants the Tauri shell plugin shell:allow-execute capability for bash, python, and python3 with arbitrary arguments in the default desktop capabilities. JavaScript running in the application webview can therefore invoke plugin:shell|execute to run attacker-controlled operating system commands with the privileges of the NoteGen process. In combination with script execution in the webview (for example via chat XSS), this enables full remote code execution on the user's machine.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H
CVSS Score: 8.3

Product Status

Vendor codexu
Product NoteGen
Versions Default: unaffected
  • affected from 0 to 0.32.0 (excl.)

Affected Configurations

Affects the NoteGen desktop application on a default installation. Exploitation requires the ability to run script in the NoteGen webview (for example via a separate XSS issue) and then invoke the Tauri shell execute API. No non-default capability configuration is required on affected versions.

Exploits

A proof of concept obtains JavaScript execution in the webview (via malicious skill-driven chat XSS) and then calls window.TAURI.core.invoke('plugin:shell|execute', { program: 'bash', args: ['-c', '<command>'], ... }) to open Calculator and exfiltrate local files to an attacker-controlled server.

Solutions

Upgrade to NoteGen 0.32.0 or later. The fix removes shell:allow-execute entries that permitted bash, python, and python3 with attacker-controlled arguments from the default Tauri capabilities, closing the webview-to-OS command execution path.

Credits

  • Yuval Moravchick finder
  • JFrog Security Research coordinator

References

Problem Types

  • CWE-78: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') CWE
  • CWE-1249 Application-Level admin tool with inconsistent view of underlying operating system CWE
  • CWE-276 Incorrect default permissions CWE

Impacts

  • CAPEC-242 Code Injection
  • CAPEC-549 Local Execution of Code
  • CAPEC-17 Using Malicious Files