Blog | G5 Cyber Security

Reporting 0days in Third-Party Components

TL;DR

Yes, you should generally report zero-day vulnerabilities (0days) found in third-party components used by your software. However, the process is more complex than reporting directly to your own project. Prioritize responsible disclosure, coordinate with all affected parties, and understand legal implications.

1. Understand the Scope

A zero-day vulnerability is a flaw unknown to the vendor, meaning there’s no patch available. Reporting 0days in third-party components requires careful consideration because multiple entities are involved:

Determine if the vulnerability impacts only your project or others as well.

2. Responsible Disclosure Process

  1. Initial Assessment: Verify the vulnerability is genuine and reproducible. Document everything thoroughly.
  2. Contact the Component Vendor First: This is crucial. Most vendors have a security disclosure policy (often found on their website). Follow their guidelines precisely.
    Example: Check vendor's 'security@example.com' email or bug bounty program page
  3. Provide Detailed Information: Include:
    • Component name and version
    • Detailed steps to reproduce the vulnerability
    • Proof-of-concept (PoC) code if possible, but be careful not to publicly disclose it prematurely.
    • Potential impact of the vulnerability
  4. Coordinate Disclosure Timeline: Work with the vendor on a reasonable timeframe for them to fix the issue and release a patch. Agree on a coordinated disclosure date.

3. Legal Considerations

Reporting vulnerabilities can have legal implications, especially if you’re testing without explicit permission (though good-faith security research is often protected). Consider these points:

4. Notifying Your Users

Once the vendor releases a patch, you must update your project to use it promptly.

  1. Update Dependencies: Use your package manager (e.g., npm, pip, Maven) to upgrade to the patched version.
    Example (npm): npm update vulnerable-component
  2. Communicate with Users: Inform your users about the vulnerability and the steps you’ve taken to address it. Be transparent and provide clear instructions for them to update their systems if necessary.
  3. Monitor for Exploitation: After patching, monitor your systems for any signs of exploitation related to the vulnerability.

5. Public Disclosure (Carefully)

Public disclosure should happen after a patch is available and users have had time to update.

Exit mobile version