Upgrade specific JS/TS dependencies to close vulns#63470
Upgrade specific JS/TS dependencies to close vulns#63470darrenpmeyer wants to merge 3 commits intogetsentry:masterfrom endorlabs-research:endorlabs-patch
Conversation
|
This issue has gone three weeks without activity. In another week, I will close it. But! If you comment or otherwise update it, I will reset the clock, and if you remove the label "A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀 |
|
PR fell through the cracks, on my radar through an email thread with Netskope. @getsentry/security @getsentry/dev-infra can you take a look? |
|
Hey @darrenpmeyer thanks for bumping these. It's looking like the loader utils bump is causing the pegjs grammars to fail to compile Could you take a look at what's going on there? Thank you so much! |
Co-authored-by: Scott Cooper <scttcper@gmail.com>
I can't seem to get this to replicate on my side, @evanpurkhiser; if you'd like, we could pull that version bump out into a separate PR to not block this one while we figure out what's going on here? |
|
This pull request has gone three weeks without activity. In another week, I will close it. But! If you comment or otherwise update it, I will reset the clock, and if you add the label "A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀 |
|
Oof. Sucks we didn't get to this, sorry. 😭 I've filed getsentry/eng-pipes#789 to address the underlying issue with PRs falling through the cracks of our custom GitHub notifications (clearly not optimized for external contributors 🙃). Ftr, @scttcper upgraded |
Endor Labs in partnership with NetSkope Threat Labs examined this project for possible risks with dependencies for an internal project.
Most issues from prior releases have already been updated in the default branch (kudos! This speaks to amazing community practices), however we did find a few JavaScript/TypeScript dependencies that could be safely upgraded to fix/avoid vulnerabilities. This PR fixes those that we were able to revise without causing new
npm testfailures.Note: these fixes were prepared and tested manually, this is not an automated PR. If there are quesstions or concerns, please feel free to reply directly.
Repaired in this PR:
Upgrade
pegjs-loaderfrom 0.5.6 -> 0.5.8 (fix GHSA-76p3-8jx3-jpfq prototype pollution inloader-utils@0.2.17, a dep ofpegjs-loader@0.5.6)Upgrade
react-routerfrom 3.2.0 -> 3.2.6 (fix GHSA-r683-j2x4-v87g and GHSA-w7rc-rwvf-8q5r innode-fetch@1.7.3, a dep ofreact-router@3.2.0)Upgrade Resolution of
postcssfrom 8.4.27 -> 8.4.33 (fix GHSA-7fh5-64p2-3v2j line return parsing error)Recommended future work -- not done in this PR:
Upgrade
markedfrom 0.7.0 -> 11.1.1 (0.7.0 is very outdated and contains a RegEx inefficiency bug; see GHSA-5v2h-r2cx-5xgj)@types/markeddependency asmarkednow provides its own types with newer versionsmake test-jsreports many more errors after upgrade attempt; additional dev work is required for updateUpgrade
react-routerto 6.21.x (come up to date to make future lifts easier)Why not fixed: introduction of upgraded version caused excessive test failures
Force Upgrade
json5from 0.5.1 (and other versions) -> 2.2.3 (fix GHSA-9c47-m6qq-7p4h prototype pollution); using resolutions to overrideWhy not fixed: risk of change too high compared to vulnerability risk
experimented with using resolutions stanza
"json5": "2.2.3"to override; tests do pass, but uncomfortable submitting patch for this changealongside other lower-risk changes, as it may require deeper testing to verify
Monitor
crptyo-browserifyfor upgrade above 3.12.0 that includesbrowserify-sign>=4.2.2(fix GHSA-x9w5-v3q2-3rhw signature forgery attack)browserify-signMonitor
json-refsfor upgrade above 3.0.15 that includescookiejar>=2.1.4(fix GHSA-h452-7996-h45h ReDOS)cookiejarMonitor
po-catalog-loaderfor upgrade above 2.0.0 to fix advisories related toloader-utils@1.1.0loader-utilsLegal Boilerplate
Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.