apollographql / apollographql/apollo-tooling
Vulnerabilities in Lodash and Await-to-JS
- Dominant language
- TypeScript
- Stars
- 3k
- Forks
- 460
- PR merge metrics
- No merged PRs in 30d
Description
Hello!
I am a user of the Apollo iOS library and was told to report [my issue](https://github.com/apollographql/apollo-ios/issues/1717) here instead.
## Report
We've recently added an OWASP vulnerability analysis step to our CI pipelines using [DependencyCheck](https://github.com/jeremylong/DependencyCheck), and it reported two known vulnerabilities in some dependencies of Apollo.
1. **Lodash** (4.17.20) found in `Pods/Apollo/scripts/apollo/node_modules/lodash/package.json` [CVE-2020-28500](http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-28500), [CVE-2021-23337](http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2021-23337)
2. **jQuery** (2.1.1) found in `Pods/Apollo/scripts/apollo/node_modules/await-to-js/dist/docs/assets/js/main.js` [CVE-2015-9251](http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-9251), [CVE-2019-11358](http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2019-11358), [CVE-2020-11022](http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-11022), [CVE-2020-11023](http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2020-11023)
Would it be possible to bump versions for those dependencies so they are not flagged? I'm not a JS expert so not sure how much effort it would be.
## Versions
- `apollo-ios` SDK version: 0.42.0
- `dependency-check` version: 6.0.5
## Steps to reproduce
1. Pod install
2. Build workspace in Xcode
3. Run `dependency-check`
Contributor guide
Research direction
Start with the reported paths, Pods/Apollo/scripts/apollo/node_modules/lodash/package.json and await-to-js/dist/docs/assets/js/main.js, then trace which dependency declarations produce them. Reproduce with Pod install, an Xcode workspace build, and dependency-check. Done means the listed Lodash and jQuery vulnerabilities are no longer reported.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- security, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100