|
1 | 1 | # Security Policy |
2 | 2 |
|
| 3 | +## Reporting a Vulnerability |
| 4 | + |
| 5 | +**Please do not report security vulnerabilities through public GitHub issues, discussions, or pull requests.** |
| 6 | + |
| 7 | +Report privately via [GitHub private vulnerability reporting](https://github.com/ls1intum/Hephaestus/security/advisories/new) — it keeps the report confidential and credits you in the resulting advisory. If you cannot use GitHub, email [felixtj.dietrich@tum.de](mailto:felixtj.dietrich@tum.de) with the subject "Hephaestus Security Vulnerability Report". |
| 8 | + |
| 9 | +Please include as much as you can: |
| 10 | + |
| 11 | +- The affected component (application server, webapp, webhook receiver, deployment configuration, ...) |
| 12 | +- Steps to reproduce, ideally with a proof of concept |
| 13 | +- The impact — what an attacker could achieve |
| 14 | +- Any suggested fix or mitigation |
| 15 | + |
| 16 | +## What to Expect |
| 17 | + |
| 18 | +Security reports are triaged before other work. |
| 19 | + |
| 20 | +- **Initial response within 14 days.** |
| 21 | +- We follow **coordinated disclosure**: please give us time to ship a fix before disclosing publicly. If we cannot agree on a timeline, we treat **90 days** from your report as the default disclosure date, shortened when a vulnerability is being actively exploited. |
| 22 | +- Confirmed vulnerabilities are fixed as soon as feasible and published as [GitHub Security Advisories](https://github.com/ls1intum/Hephaestus/security/advisories). You are credited unless you prefer to stay anonymous. |
| 23 | + |
| 24 | +We do not run a bug bounty program. |
| 25 | + |
| 26 | +## Safe Harbor |
| 27 | + |
| 28 | +We consider good-faith security research conducted under this policy to be authorized, and we will not pursue or support legal action against you for it. If a third party takes action against you for such research, we will make our authorization known. In return, only access the minimum data needed to demonstrate an issue, and do not degrade, disrupt, or destroy data or service. |
| 29 | + |
3 | 30 | ## Supported Versions |
4 | 31 |
|
5 | | -At this time, there are no officially supported versions of this project for security updates. We are actively developing and improving the project. Please check back later for updates on supported versions. |
| 32 | +Hephaestus is pre-1.0 and released continuously from `main`; **only the latest release is supported**. There are no maintenance branches or backports. |
6 | 33 |
|
7 | | -## Reporting a Vulnerability |
| 34 | +## Scope |
8 | 35 |
|
9 | | -We take the security of our project seriously. If you discover a vulnerability, please follow the steps below to report it: |
| 36 | +In scope: the code in this repository — the Spring Boot application server (including the webhook receiver), the React webapp, and the deployment/Docker configuration we ship. |
10 | 37 |
|
11 | | -1. **Contact Information**: Send an email to [felixtj.dietrich@tum.de] with the subject line "Security Vulnerability Report". |
| 38 | +Out of scope: |
12 | 39 |
|
13 | | -2. **Details to Include**: |
14 | | - - A description of the vulnerability. |
15 | | - - Steps to reproduce the vulnerability. |
16 | | - - Potential impact of the vulnerability. |
17 | | - - Any available patches or suggestions for fixing the issue. |
| 40 | +- Vulnerabilities in third-party dependencies without a Hephaestus-specific exploit path — report those upstream |
| 41 | +- Denial-of-service, volumetric attacks, and scanner output without a demonstrated impact |
| 42 | +- Social engineering or phishing of maintainers or users |
| 43 | +- Testing against deployments you do not operate — **do not test against our production instances**; run your own (see the [local development guide](https://ls1intum.github.io/Hephaestus/contributor/local-development)) |
18 | 44 |
|
19 | | -3. **Response Time**: |
20 | | - - You can expect an initial acknowledgment of your report within 48 hours. |
21 | | - - We will provide regular updates on the status of your report as we investigate and address the issue. |
| 45 | +## Automated Security Measures |
22 | 46 |
|
23 | | -4. **Handling of the Vulnerability**: |
24 | | - - If the vulnerability is confirmed, we will work to release a patch as soon as possible. |
25 | | - - You will be credited for your discovery if you wish, or you can remain anonymous. |
26 | | - - If the report is declined, we will provide a detailed explanation as to why it does not meet the criteria for a security vulnerability. |
| 47 | +Independent of this reporting channel, the project runs: |
27 | 48 |
|
28 | | -5. **Confidentiality**: |
29 | | - - Please do not disclose the vulnerability publicly until we have had an opportunity to address it. |
| 49 | +- **Dependency updates**: [Renovate](https://docs.renovatebot.com/) (Mend-hosted) with vulnerability alerts prioritized and auto-merged ([`renovate.json`](renovate.json)) |
| 50 | +- **Dependency & secret scanning in CI**: Trivy filesystem scan and TruffleHog ([`ci-security-scan.yml`](.github/workflows/ci-security-scan.yml)) |
| 51 | +- **Static analysis**: GitHub CodeQL |
| 52 | +- **Native alerts**: GitHub secret scanning and Dependabot dependency alerts |
30 | 53 |
|
31 | | -Thank you for helping us keep our project safe and secure! |
| 54 | +A machine-readable [`security.txt`](https://hephaestus.aet.cit.tum.de/.well-known/security.txt) ([RFC 9116](https://www.rfc-editor.org/info/rfc9116/)) points to this policy. |
0 commit comments