PkgForge converts and installs third-party packages as root. We take reports seriously — thank you for looking.
- Supply-chain surfaces: downloader/redirect guard, SSRF host guard, marketplace checksum flow, plugin install confirmation
- Privilege boundary: pkexec helper (
scripts/pkgforge-privileged.sh), polkit policy, snapshot/delta systemd units - Desktop boundary: Tauri IPC (
rpc_call),externalBinsidecar scope, Content Security Policy - Packaging: wheel/sdist contents, PKGBUILD generation, SBOM/provenance
Out of scope: the intentionally unsupported (we will still read it):
social-engineering users into --yes, or vulnerabilities in upstream
projects (Arch, Tauri, Python) — report those upstream first.
Do NOT open a public issue for vulnerabilities. Instead:
- Mail: the maintainer address on the profile
with subject
[pkgforge-security], or open a private security advisory once Security Advisories are enabled on the repo. - Include: affected version/commit, reproduction steps or PoC, impact assessment, and (optionally) a suggested fix.
- You will get a confirmation within 7 days.
- Triage and severity rating (CVSS-guided), fix on a private branch, regression test added to the suite.
- Coordinated release: patched version +
CHANGELOG.mdsecurity entry + credit in the release notes (unless you prefer anonymity). - Project target: critical fixes released within 30 days of confirmation.
- 12 documented security layers (
README.md› Security Architecture) - SSRF deny-by-default (
allow_private_hostsopt-in), scheme re-validation on every redirect hop, HTTPS-only downloads - Fail-closed marketplace checksums, explicit remote-code confirmation
- Strict Tauri CSP, capability-scoped
externalBinsidecar (["serve"]) - SBOM (SPDX + CycloneDX) and SLSA provenance on every release
- Fuzz coverage: downloader/marketplace/name-validation property tests
(
tests/test_s6_fuzz.py), CSP strictness locked by CI