-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Adds SECURITY.md to outline our security policies #2086
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
from a member of the website working group within 3 working days. After that, | ||
the website working group will begin their analysis. Depending on the action | ||
to be taken, you may receive followup emails. It can take several weeks before | ||
the website working group comes to a conclusion and resolve the issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have mostly just copied from Django's security policy. We might want to update.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd remove or extend the 3 working days timeline, we don't need to set a timeline on ourselves like for the framework.
- Confirm the problem. | ||
- Audit code to find any potential similar problems. | ||
- Apply the relevant patches to the codebase. | ||
- Deploy the fixed codebase. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we know how we want to disclose a security issue, since for the website, we don't really need to make releases and ask users to update. Maybe this section should be titled differently. Thoughts?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My first thought would be, do we even need a disclosure policy at all?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I doubt we'd need to disclose anything unless user data is compromised.
to follow few guidelines that helps us in analysis and resolving the issue quicker. | ||
|
||
- Include a runnable proof of concept to reproduce the issue | ||
- User input must be sanitized |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are there other website specific guidelines we want to add?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does "User input must be sanitized" means in this context?
I'm not sure what it means, so it could also be confusing for a reporter.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 - User input must be sanitized
is unclear to me too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good so far! I left a few comments with grammatical corrections.
## Reporting a Bug | ||
|
||
The Django website working group is committed to responsible reporting and | ||
disclosure of security-related issue in our website. We appreciate your efforts |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"issue in" => "issues on"
from a member of the website working group within 3 working days. After that, | ||
the website working group will begin their analysis. Depending on the action | ||
to be taken, you may receive followup emails. It can take several weeks before | ||
the website working group comes to a conclusion and resolve the issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"resolve" => "resolves"
## Reporting Guidelines | ||
|
||
While reporting a security issue related to the Django website, we encourage | ||
to follow few guidelines that helps us in analysis and resolving the issue quicker. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"we encourage to follow few guidelines that helps us" => "we encourage you to follow a few guidelines that help us"
- Confirm the problem. | ||
- Audit code to find any potential similar problems. | ||
- Apply the relevant patches to the codebase. | ||
- Deploy the fixed codebase. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I doubt we'd need to disclose anything unless user data is compromised.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for starting this @SaptakS
Here are some additional thoughts on content - feel free to incorporate in your own words as this is LLM generated.
- a description of the vulnerability
- steps to reproduce the issue
- any relevant supporting material (e.g., proof-of-concept, screenshots, affected URLs)
- do not publicly disclose the vulnerability until we have confirmed and addressed it
- do not exploit the vulnerability beyond what is necessary to demonstrate it, especially if it permits you access to sensitive or personal data. Respect the privacy of others.
## rewards
We do not offer monetary rewards or bug bounties for vulnerability reports. Please do not request payment for reporting a vulnerability.
## report quality
We welcome well-researched and clearly explained reports.
Automated or low-effort submissions that do not demonstrate a clear security impact are not appreciated and may be discarded after review.
We will always send an acknowledgment of receipt, but reports that lack sufficient detail may not be investigated further.
@@ -0,0 +1,46 @@ | |||
# Security Policies and Procedures | |||
|
|||
This document outlines security procedures and general policies for the Django website (`djangoproject.com`). This is separate from [Django's security policies](https://docs.djangoproject.com/en/dev/internals/security/). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we mention this also covers docs.djangoproject.com
since this is the same application?
and responsible disclosure. | ||
|
||
Report security bugs and issue by sending an email to website-wg@djangoproject.com. | ||
For encryption, use: https://keys.openpgp.org/vks/v1/by-fingerprint/AF3516D27D0621171E0CCE25FCB84B8D1D17F80B |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@SaptakS this does not look correct to me. This key is for security@djangoproject.com. Our working group does not posses the private key so we would be unable to decrypt messages that were encrypted with this key.
Perhaps GitHub's 'report a vulnerability' feature could be recommended instead as a secure alternative? https://github.com/django/djangoproject.com/security/advisories/new
to follow few guidelines that helps us in analysis and resolving the issue quicker. | ||
|
||
- Include a runnable proof of concept to reproduce the issue | ||
- User input must be sanitized |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 - User input must be sanitized
is unclear to me too.
If you have suggestions on how this process could be improved please submit a | ||
pull request. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we make this a direct link to the 'edit file' feature in GitHub? Make it as easy as possible to suggest improvements.
As discussed in our last meeting, along with a
.well-known/security.txt
, it's nice to have aSECURITY.md
to be shown as our security policy in the GitHub Security tab.This PR adds the policies for reporting a bug and disclosing.