comparison mupdf-source/thirdparty/curl/docs/SECURITY-PROCESS.md @ 2:b50eed0cc0ef upstream

ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4. The directory name has changed: no version number in the expanded directory now.
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Sep 2025 11:43:07 +0200
parents
children
comparison
equal deleted inserted replaced
1:1d09e1dec1d9 2:b50eed0cc0ef
1 curl security process
2 =====================
3
4 This document describes how security vulnerabilities should be handled in the
5 curl project.
6
7 Publishing Information
8 ----------------------
9
10 All known and public curl or libcurl related vulnerabilities are listed on
11 [the curl web site security page](https://curl.haxx.se/docs/security.html).
12
13 Security vulnerabilities **should not** be entered in the project's public bug
14 tracker.
15
16 Vulnerability Handling
17 ----------------------
18
19 The typical process for handling a new security vulnerability is as follows.
20
21 No information should be made public about a vulnerability until it is
22 formally announced at the end of this process. That means, for example that a
23 bug tracker entry must NOT be created to track the issue since that will make
24 the issue public and it should not be discussed on any of the project's public
25 mailing lists. Also messages associated with any commits should not make any
26 reference to the security nature of the commit if done prior to the public
27 announcement.
28
29 - The person discovering the issue, the reporter, reports the vulnerability on
30 [https://hackerone.com/curl](https://hackerone.com/curl). Issues filed there
31 reach a handful of selected and trusted people.
32
33 - Messages that do not relate to the reporting or managing of an undisclosed
34 security vulnerability in curl or libcurl are ignored and no further action
35 is required.
36
37 - A person in the security team responds to the original report to acknowledge
38 that a human has seen the report.
39
40 - The security team investigates the report and either rejects it or accepts
41 it.
42
43 - If the report is rejected, the team writes to the reporter to explain why.
44
45 - If the report is accepted, the team writes to the reporter to let him/her
46 know it is accepted and that they are working on a fix.
47
48 - The security team discusses the problem, works out a fix, considers the
49 impact of the problem and suggests a release schedule. This discussion
50 should involve the reporter as much as possible.
51
52 - The release of the information should be "as soon as possible" and is most
53 often synchronized with an upcoming release that contains the fix. If the
54 reporter, or anyone else involved, thinks the next planned release is too
55 far away, then a separate earlier release should be considered.
56
57 - Write a security advisory draft about the problem that explains what the
58 problem is, its impact, which versions it affects, solutions or workarounds,
59 when the release is out and make sure to credit all contributors properly.
60 Figure out the CWE (Common Weakness Enumeration) number for the flaw.
61
62 - Request a CVE number from
63 [HackerOne](https://docs.hackerone.com/programs/cve-requests.html)
64
65 - Consider informing
66 [distros@openwall](https://oss-security.openwall.org/wiki/mailing-lists/distros)
67 to prepare them about the upcoming public security vulnerability
68 announcement - attach the advisory draft for information. Note that
69 'distros' won't accept an embargo longer than 14 days and they do not care
70 for Windows-specific flaws.
71
72 - Update the "security advisory" with the CVE number.
73
74 - The security team commits the fix in a private branch. The commit message
75 should ideally contain the CVE number. This fix is usually also distributed
76 to the 'distros' mailing list to allow them to use the fix prior to the
77 public announcement.
78
79 - No more than 48 hours before the release, the private branch is merged into
80 the master branch and pushed. Once pushed, the information is accessible to
81 the public and the actual release should follow suit immediately afterwards.
82 The time between the push and the release is used for final tests and
83 reviews.
84
85 - The project team creates a release that includes the fix.
86
87 - The project team announces the release and the vulnerability to the world in
88 the same manner we always announce releases. It gets sent to the
89 curl-announce, curl-library and curl-users mailing lists.
90
91 - The security web page on the web site should get the new vulnerability
92 mentioned.
93
94 curl-security (at haxx dot se)
95 ------------------------------
96
97 This is a private mailing list for discussions on and about curl security
98 issues.
99
100 Who is on this list? There are a couple of criteria you must meet, and then we
101 might ask you to join the list or you can ask to join it. It really isn't very
102 formal. We basically only require that you have a long-term presence in the
103 curl project and you have shown an understanding for the project and its way
104 of working. You must've been around for a good while and you should have no
105 plans in vanishing in the near future.
106
107 We do not make the list of participants public mostly because it tends to vary
108 somewhat over time and a list somewhere will only risk getting outdated.
109
110 Publishing Security Advisories
111 ------------------------------
112
113 1. Write up the security advisory, using markdown syntax. Use the same
114 subtitles as last time to maintain consistency.
115
116 2. Name the advisory file after the allocated CVE id.
117
118 3. Add a line on the top of the array in `curl-www/docs/vuln.pm'.
119
120 4. Put the new advisory markdown file in the curl-www/docs/ directory. Add it
121 to the git repo.
122
123 5. Run `make` in your local web checkout and verify that things look fine.
124
125 6. On security advisory release day, push the changes on the curl-www
126 repository's remote master branch.
127
128 Bug Bounty
129 ----------
130
131 See [BUG-BOUNTY](https://curl.haxx.se/docs/bugbounty.html) for details on the
132 bug bounty program.