|
| 1 | +# Security Policy |
| 2 | + |
| 3 | +## Supported Versions |
| 4 | + |
| 5 | +Only the latest release is actively supported with security updates. |
| 6 | + |
| 7 | +| Version | Supported | |
| 8 | +| ------- | ------------------ | |
| 9 | +| latest | :white_check_mark: | |
| 10 | +| < latest | :x: | |
| 11 | + |
| 12 | +## Reporting a Vulnerability |
| 13 | + |
| 14 | +If you discover a security vulnerability, please report it responsibly: |
| 15 | + |
| 16 | +1. **Do not** open a public GitHub issue |
| 17 | +2. Send an email to **github@cbrgm.net** with: |
| 18 | + - A description of the vulnerability |
| 19 | + - Steps to reproduce |
| 20 | + - Potential impact |
| 21 | + - Any suggested fixes (optional) |
| 22 | + |
| 23 | +You can expect: |
| 24 | +- An acknowledgment within 48 hours (at least I try to, since I'm doing this in my freetime) |
| 25 | +- Regular updates on the progress |
| 26 | +- Credit in the security advisory (unless you prefer to remain anonymous) |
| 27 | + |
| 28 | +## Verifying Release Signatures |
| 29 | + |
| 30 | +All release binaries are signed with PGP. To verify a release: |
| 31 | + |
| 32 | +### 1. Import the Public Key |
| 33 | + |
| 34 | +```bash |
| 35 | +gpg --import <<'EOF' |
| 36 | +-----BEGIN PGP PUBLIC KEY BLOCK----- |
| 37 | +
|
| 38 | +mQINBGmNIX8BEACwa36sCFVDDnIVnNZHqLYKoj0eZn1SoWXhVQKxR1QYniFeq8+u |
| 39 | +5KZ/5INXhWzUT8jpoh/2lzxBg6IT8dTXdmZ1vgM0s3KtJp+uNPmmggYlx69rwtVi |
| 40 | +PE0JOeCMtlbM70SCVM86eHA9gdXyXqBT1OERdkq1EfNshWz4MFJWDXNcx5VksHpY |
| 41 | +MJHrSfENOIjnYOjyI88OEtIs1XSKCEFbWfNh//Tbk4DsO07wwi5G2QLFRt1rZM3d |
| 42 | +SHNAo+s+qDc3oLZCQ5KBPKpPETO9PgwCfaRLQ1TGSTyQUr3Ok06rpdjyp9OD4bw5 |
| 43 | +Vs4apWFNiJ7xkofbyOoi5zrrkrQMWhHhrCHYcuvvVvrHrsAVcv2t+nzXbKy7GXcO |
| 44 | +xT3xeggT7ohmNR7QBn7flKHvucVj6HI+879l7U0KoX/m4gvWNQufHu9mYFCiW9C3 |
| 45 | +L4P3onf503FPQgMhptt3R+OQLQcnFDu+78lpVNQDNeRwc4XqedUEGFpBhzO3DQJO |
| 46 | +dHshlty6GSMtG+N50dpjpetmFg4RG/fI4sdyYAZoiXyfcnzXu9Q4QVMmhr9QgnWs |
| 47 | +Mf9skQ54sPLwLk5xBjrQK7HE0Mr5aUTCMtybVYApb9Ft1XJ2Z9FpKz2mNnbw9HXv |
| 48 | +/8i+WQ2i3yvC5PN0pPezZBSgDf3r9J14sHUqDiHSZt84LQ1T9meirl2iXQARAQAB |
| 49 | +tCVDaHJpc3RpYW4gQmFyZ21hbm4gPGdpdGh1YkBjYnJnbS5uZXQ+iQJRBBMBCAA7 |
| 50 | +FiEE3iykF4aUXFzBL19DXx8YVj5HZmYFAmmNIX8CGwMFCwkIBwICIgIGFQoJCAsC |
| 51 | +BBYCAwECHgcCF4AACgkQXx8YVj5HZmYomxAAiUof2u9yvxeJXy6TNYIpcJqvsKw4 |
| 52 | +++DJ5m+PH0v8qBATYvYqqpN3CNG7OyoM4OM8ziBVwwSno0A7tB7fE6vzBi/Znij9 |
| 53 | +Sni6neJk48FL2mTDI+Z/RHOf1b2zGFKgnS7V2IpTWXbMW/OKzSy5xxgOIg9VEdRT |
| 54 | +rJGPqquSoRf12YCQe76aNibMRIeK9Npq/DbVAtD7g+g1sbNI9rkuFEav+ehAXtNk |
| 55 | +hPexwG0k2hILwG2ljKJ4mCocvIl5jR7e+fnrp0E7COYP0qH7Ou8mTowPjIozlG7J |
| 56 | +5ZNuIMVW1KAQtM4n0UIHMG72uB0G30oMA5WZIXCI3NqxudlznTmoJgGrHIrKRMu7 |
| 57 | +TT6w2rLG6xTdX96Q/boeIBOHI2riQVEN55pswPoXBTTadFzKQ4bQnot4JXXs0oBj |
| 58 | +L4DfLhC0bBOnGSFBoEeTqrjHmSszdWjEi6hEskMcKqqXDnsQj2p9E0axXtYbU8JF |
| 59 | +NZSoZ+b9M+2bqzq2JsDZJBJocmTkXH13mZYtmr1wTOVI8TaKe9OuKnv7kOKTLWDf |
| 60 | +wslay7US3LuGSziUAb0BIBJWMcZs/ou+W5wT85iLOjkiEvnUx8J5rR137Xl72ZUk |
| 61 | +Z46Jit0Zi3BnADqx0Q6pJfDgRlQ/R7adpm6DLTLVl/+LWH5aNy+U7nSBQ+bFimnJ |
| 62 | +dnWz3mMJWwgwNeE= |
| 63 | +=fBYq |
| 64 | +-----END PGP PUBLIC KEY BLOCK----- |
| 65 | +EOF |
| 66 | +``` |
| 67 | + |
| 68 | +Alternatively, fetch the key from a keyserver: |
| 69 | + |
| 70 | +```bash |
| 71 | +gpg --keyserver keys.openpgp.org --recv-keys DE2CA41786945C5CC12F5F435F1F18563E476666 |
| 72 | +``` |
| 73 | + |
| 74 | +### 2. Verify the Key Fingerprint |
| 75 | + |
| 76 | +Ensure the key fingerprint matches: |
| 77 | + |
| 78 | +``` |
| 79 | +pub rsa4096 2026-02-12 [SC] |
| 80 | + DE2C A417 8694 5C5C C12F 5F43 5F1F 1856 3E47 6666 |
| 81 | +uid [ultimate] Christian Bargmann <github@cbrgm.net> |
| 82 | +``` |
| 83 | + |
| 84 | +### 3. Verify a Release |
| 85 | + |
| 86 | +```bash |
| 87 | +# Verify the signature |
| 88 | +gpg --verify <binary>.asc <binary> |
| 89 | + |
| 90 | +# Verify the checksum |
| 91 | +sha256sum -c <binary>.sha256 |
| 92 | +``` |
| 93 | + |
| 94 | +## Security Best Practices |
| 95 | + |
| 96 | +When using this project: |
| 97 | + |
| 98 | +- Always verify release signatures before deploying |
| 99 | +- Keep dependencies up to date |
| 100 | +- Review the changelog before upgrading |
| 101 | +- Pin to specific versions in production environments (!) |
0 commit comments