Differences between revisions 2 and 3
Revision 2 as of 2017-04-18 16:18:37
Size: 2070
Editor: KevinBullock
Comment:
Revision 3 as of 2017-07-27 19:01:30
Size: 2056
Editor: AugieFackler
Comment:
Deletions are marked like this. Additions are marked like this.
Line 39: Line 39:
 * send a CVE allocation request with the summary to cve-assign@mitre.org  * Visit [[https://iwantacve.org/]] to get a CVE identifier

Security Disclosure Process

How we handle security issues.

1. What do we NOT consider a security vulnerability?

One of the most commonly reported classes of vulnerability is third-party web applications passing unfiltered input from web users to the hg command line interface. This is a security vulnerability in the web application, not in Mercurial.

Mercurial's command line uses a security model appropriate for a command line: a user who can run a Mercurial command is allowed to do anything that the operating system will let that user do, including running other commands. See SecuringRepositories for guidance on how to secure a Mercurial repository published via the Internet.

Users should bear in mind that the single largest threat vector for a source control system is the code checked into a repository itself. If you compile or run code from untrusted sources, no exploit of Mercurial itself is necessary.

2. Reporting vulnerabilities (for researchers)

3. Summarize and allocate a CVE (for maintainers)

  • summary should be a short paragraph that describes:
    • cause (eg "buffer overflow")
    • impact ("arbitrary code execution")
    • affected users ("git subrepo users")
    • affected versions
  • Visit https://iwantacve.org/ to get a CVE identifier

  • develop a fix
  • confirm fix with researcher

4. Early notification process (for maintainters)

  • Send an announcement to mercurial-security-announce containing:
    • "(confidential)" in subject
    • planned release date
    • summary of CVEs
    • bundle against stable tip containing planned fixes
    • GPG signature

5. Release process

  • apply patches on stable branch just prior to release
  • do release as normal point release (see ReleaseChecklist)

  • paste CVE summary into release notes


SecurityDisclosureProcess (last edited 2017-07-27 19:01:30 by AugieFackler)