mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-09-11 22:12:23 +00:00
5147b59fa0
CRITICAL SECURITY FIX: The /download/pulse-host-agent endpoint was directly concatenating user-supplied platform and arch query parameters into file paths without validation, allowing path traversal attacks. An attacker could request: /download/pulse-host-agent?platform=../../etc/passwd to read arbitrary files from the container filesystem. Fix: Add input validation to only allow alphanumeric characters and hyphens in platform/arch parameters before using them in file paths. Related: Codex security audit identified this during pre-release review
Internal API Package
This directory contains the API server implementation for Pulse.
Important Note About frontend-modern/
The frontend-modern/ subdirectory that appears here is:
- AUTO-GENERATED during builds
- NOT the source code - just a build artifact
- IN .gitignore - never committed
- REQUIRED BY GO - The embed directive needs it here
Frontend Development Location
👉 Edit frontend files at: /opt/pulse/frontend-modern/src/
Why This Structure?
Go's //go:embed directive has limitations:
- Cannot use
../paths to access parent directories - Cannot follow symbolic links
- Must embed files within the Go module
This is a known Go limitation and our structure works around it.