|
| 1 | +# Incident Response Process for **nvm** |
| 2 | + |
| 3 | +## Reporting a Vulnerability |
| 4 | + |
| 5 | +We take the security of **nvm** very seriously. If you believe you’ve found a security vulnerability, please inform us responsibly through coordinated disclosure. |
| 6 | + |
| 7 | +### How to Report |
| 8 | + |
| 9 | +> **Do not** report security vulnerabilities through public GitHub issues, discussions, or social media. |
| 10 | +
|
| 11 | +Instead, please use one of these secure channels: |
| 12 | + |
| 13 | +1. **GitHub Security Advisories** |
| 14 | + Use the **Report a vulnerability** button in the Security tab of the [nvm-sh/nvm repository](https://github.com/nvm-sh/nvm). |
| 15 | + |
| 16 | +2. **Email** |
| 17 | + Follow the posted [Security Policy](https://github.com/nvm-sh/nvm/security/policy). |
| 18 | + |
| 19 | +### What to Include |
| 20 | + |
| 21 | +**Required Information:** |
| 22 | +- Brief description of the vulnerability type |
| 23 | +- Affected version(s) and components |
| 24 | +- Steps to reproduce the issue |
| 25 | +- Impact assessment (what an attacker could achieve) |
| 26 | + |
| 27 | +**Helpful Additional Details:** |
| 28 | +- Full paths of affected scripts or files |
| 29 | +- Specific commit or branch where the issue exists |
| 30 | +- Required configuration to reproduce |
| 31 | +- Proof-of-concept code (if available) |
| 32 | +- Suggested mitigation or fix |
| 33 | + |
| 34 | +## Our Response Process |
| 35 | + |
| 36 | +**Timeline Commitments:** |
| 37 | +- **Initial acknowledgment**: Within 24 hours |
| 38 | +- **Detailed response**: Within 3 business days |
| 39 | +- **Status updates**: Every 7 days until resolved |
| 40 | +- **Resolution target**: 90 days for most issues |
| 41 | + |
| 42 | +**What We’ll Do:** |
| 43 | +1. Acknowledge your report and assign a tracking ID |
| 44 | +2. Assess the vulnerability and determine severity |
| 45 | +3. Develop and test a fix |
| 46 | +4. Coordinate disclosure timeline with you |
| 47 | +5. Release a security update and publish an advisory and CVE |
| 48 | +6. Credit you in our security advisory (if desired) |
| 49 | + |
| 50 | +## Disclosure Policy |
| 51 | + |
| 52 | +- **Coordinated disclosure**: We’ll work with you on timing |
| 53 | +- **Typical timeline**: 90 days from report to public disclosure |
| 54 | +- **Early disclosure**: If actively exploited |
| 55 | +- **Delayed disclosure**: For complex issues |
| 56 | + |
| 57 | +## Scope |
| 58 | + |
| 59 | +**In Scope:** |
| 60 | +- **nvm** project (all supported versions) |
| 61 | +- Installation and update scripts (`install.sh`, `nvm.sh`) |
| 62 | +- Official documentation and CI/CD integrations |
| 63 | +- Dependencies with direct security implications |
| 64 | + |
| 65 | +**Out of Scope:** |
| 66 | +- Third-party forks or mirrors |
| 67 | +- Platform-specific installs outside core scripts |
| 68 | +- Social engineering or physical attacks |
| 69 | +- Theoretical vulnerabilities without practical exploitation |
| 70 | + |
| 71 | +## Security Measures |
| 72 | + |
| 73 | +**Our Commitments:** |
| 74 | +- Regular vulnerability scanning via GitHub Actions |
| 75 | +- Automated security checks in CI/CD pipelines |
| 76 | +- Secure scripting practices and mandatory code review |
| 77 | +- Prompt patch releases for critical issues |
| 78 | + |
| 79 | +**User Responsibilities:** |
| 80 | +- Keep **nvm** updated |
| 81 | +- Verify script downloads via PGP signatures |
| 82 | +- Follow secure configuration guidelines for shell environments |
| 83 | + |
| 84 | +## Legal Safe Harbor |
| 85 | + |
| 86 | +**We will NOT:** |
| 87 | +- Initiate legal action |
| 88 | +- Contact law enforcement |
| 89 | +- Suspend or terminate your access |
| 90 | + |
| 91 | +**You must:** |
| 92 | +- Only test against your own installations |
| 93 | +- Not access, modify, or delete user data |
| 94 | +- Not degrade service availability |
| 95 | +- Not publicly disclose before coordinated disclosure |
| 96 | +- Act in good faith |
| 97 | + |
| 98 | +## Recognition |
| 99 | + |
| 100 | +- **Advisory Credits**: Credit in GitHub Security Advisories (unless anonymous) |
| 101 | + |
| 102 | +## Security Updates |
| 103 | + |
| 104 | +**Stay Informed:** |
| 105 | +- Subscribe to GitHub releases for **nvm** |
| 106 | +- Enable GitHub Security Advisory notifications |
| 107 | + |
| 108 | +**Update Process:** |
| 109 | +- Patch releases (e.g., v0.40.3 → v0.40.4) |
| 110 | +- Out-of-band releases for critical issues |
| 111 | +- Advisories via GitHub Security Advisories |
| 112 | + |
| 113 | +## Contact Information |
| 114 | + |
| 115 | +- **Security reports**: Security tab of [nvm-sh/nvm](https://github.com/nvm-sh/nvm/security) |
| 116 | +- **General inquiries**: GitHub Discussions or Issues |
| 117 | + |
0 commit comments