|
| 1 | +# Security Policy |
| 2 | + |
| 3 | +Mole is a local system maintenance tool. It includes high-risk operations such as cleanup, uninstall, optimization, and artifact removal. We treat safety boundaries, deletion logic, and release integrity as security-sensitive areas. |
| 4 | + |
| 5 | +## Reporting a Vulnerability |
| 6 | + |
| 7 | +Please report suspected security issues privately. |
| 8 | + |
| 9 | +- Email: `hitw93@gmail.com` |
| 10 | +- Subject line: `Mole security report` |
| 11 | + |
| 12 | +Do not open a public GitHub issue for an unpatched vulnerability. |
| 13 | + |
| 14 | +If GitHub Security Advisories private reporting is enabled for the repository, you may use that channel instead of email. |
| 15 | + |
| 16 | +Include as much of the following as possible: |
| 17 | + |
| 18 | +- Mole version and install method |
| 19 | +- macOS version |
| 20 | +- Exact command or workflow involved |
| 21 | +- Reproduction steps or proof of concept |
| 22 | +- Whether the issue involves deletion boundaries, symlinks, sudo, path validation, or release/install integrity |
| 23 | + |
| 24 | +## Response Expectations |
| 25 | + |
| 26 | +- We aim to acknowledge new reports within 7 calendar days. |
| 27 | +- We aim to provide a status update within 30 days if a fix or mitigation is not yet available. |
| 28 | +- We will coordinate disclosure after a fix, mitigation, or clear user guidance is ready. |
| 29 | + |
| 30 | +Response times are best-effort for a maintainer-led open source project, but security reports are prioritized over normal bug reports. |
| 31 | + |
| 32 | +## Supported Versions |
| 33 | + |
| 34 | +Security fixes are only guaranteed for: |
| 35 | + |
| 36 | +- The latest published release |
| 37 | +- The current `main` branch |
| 38 | + |
| 39 | +Older releases may not receive security fixes. Users running high-risk commands should stay current. |
| 40 | + |
| 41 | +## What We Consider a Security Issue |
| 42 | + |
| 43 | +Examples of security-relevant issues include: |
| 44 | + |
| 45 | +- Path validation bypasses |
| 46 | +- Deletion outside intended cleanup boundaries |
| 47 | +- Unsafe handling of symlinks or path traversal |
| 48 | +- Unexpected privilege escalation or unsafe sudo behavior |
| 49 | +- Sensitive data removal that bypasses documented protections |
| 50 | +- Release, installation, update, or checksum integrity issues |
| 51 | +- Vulnerabilities in logic that can cause unintended destructive behavior |
| 52 | + |
| 53 | +## What Usually Does Not Qualify |
| 54 | + |
| 55 | +The following are usually normal bugs, feature requests, or documentation issues rather than security issues: |
| 56 | + |
| 57 | +- Cleanup misses that leave recoverable junk behind |
| 58 | +- False negatives where Mole refuses to clean something |
| 59 | +- Cosmetic UI problems |
| 60 | +- Requests for broader or more aggressive cleanup behavior |
| 61 | +- Compatibility issues without a plausible security impact |
| 62 | + |
| 63 | +If you are unsure whether something is security-relevant, report it privately first. |
| 64 | + |
| 65 | +## Security-Focused Areas in Mole |
| 66 | + |
| 67 | +The project pays particular attention to: |
| 68 | + |
| 69 | +- Destructive command boundaries |
| 70 | +- Path validation and protected-directory rules |
| 71 | +- Sudo and privilege boundaries |
| 72 | +- Symlink and path traversal handling |
| 73 | +- Sensitive data exclusions |
| 74 | +- Packaging, release artifacts, checksums, and update/install flows |
| 75 | + |
| 76 | +For the current technical design and known limitations, see [SECURITY_AUDIT.md](SECURITY_AUDIT.md). |
0 commit comments