| Version | Supported |
|---|---|
| 1.0.x | ✅ |
Please do not report security vulnerabilities through public GitHub issues.
Instead, please report them via email to: security@superfecta.org
You should receive a response within 48 hours. If for some reason you do not, please follow up via email to ensure we received your original message.
Please include the following information in your report:
- Type of vulnerability
- Full paths of source file(s) related to the vulnerability
- Location of the affected source code (tag/branch/commit or direct URL)
- Step-by-step instructions to reproduce the issue
- Proof-of-concept or exploit code (if possible)
- Impact of the issue, including how an attacker might exploit it
RatPM requires root privileges for write operations (install, remove, upgrade). This is enforced at multiple levels:
- CLI layer checks effective UID
- Core layer validates privileges before lock acquisition
- RPM operations fail without proper permissions
The lock file (/var/lock/ratpm.lock) prevents concurrent operations:
- Created with restrictive permissions (644)
- Contains PID of holder
- Cleaned up on process exit
- Detects and removes stale locks
By default, RatPM verifies:
- Repository metadata GPG signatures
- Package checksums from metadata
- Package RPM GPG signatures
- File integrity during installation
Disabling verification is possible but strongly discouraged:
[repos]
gpgcheck = false # NOT RECOMMENDED
[transaction]
verify_signatures = false # NOT RECOMMENDEDConfiguration files should have appropriate permissions:
# System configuration
sudo chmod 644 /etc/ratpm/ratpm.toml
sudo chown root:root /etc/ratpm/ratpm.toml
# User configuration
chmod 644 ~/.config/ratpm/ratpm.tomlOnly use repositories from trusted sources. Repository definitions should:
- Use HTTPS URLs when possible
- Specify GPG keys for verification
- Have
gpgcheck=1enabled
Example secure repository:
[fedora]
name=Fedora $releasever - $basearch
baseurl=https://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch-
Scriptlet Execution: Package scriptlets run as root during installation. Future versions will implement sandboxing.
-
Network Operations: Package downloads occur over network. Always use HTTPS repositories when available.
-
Cache Permissions: Downloaded packages are cached in
/var/cache/ratpm/. Ensure this directory is protected. -
Transaction History: May contain sensitive information. Protected by file system permissions.
- Only install packages from trusted repositories
- Keep RatPM updated to the latest version
- Enable GPG verification (default)
- Use HTTPS for repository URLs
- Review transaction summaries before confirming
- Run
ratpm doctorperiodically to check system health
- Restrict access to
/etc/ratpm/ratpm.toml - Monitor
/var/log/for suspicious activity - Audit repository configurations regularly
- Keep GPG keys up to date
- Use the
ratpm historycommand to audit changes
- Validate all user input
- Use Rust's type system to prevent errors
- Avoid
unsafecode unless absolutely necessary - Never execute shell commands with unsanitized input
- Follow secure coding guidelines
- Privilege escalation
- Arbitrary code execution
- Package tampering
- Repository spoofing
- Lock bypass
- Configuration injection
- Physical access attacks
- Kernel vulnerabilities
- RPM/libdnf vulnerabilities (report to upstream)
- Social engineering
- Day 0: Vulnerability reported
- Day 2: Acknowledgment sent to reporter
- Day 7: Initial assessment completed
- Day 30: Fix developed and tested
- Day 45: Security advisory published
- Day 60: Public disclosure (if fix available)
We follow coordinated disclosure practices and work with reporters to ensure proper credit.
Security updates are released as patch versions (e.g., 1.0.1) and include:
- Description of the vulnerability
- CVE identifier (if assigned)
- Credit to the reporter
- Mitigation steps
- Patch details
Subscribe to security announcements at: https://github.com/SuperfectaOrg/RatPM/security/advisories
- Security Email: security@superfecta.org
- Team Email: team@superfecta.org
- GitHub: https://github.com/SuperfectaOrg/RatPM/security
Coming soon.