#node.js #security #npm #dependencies #package.json
Вопрос:
Я потерял 1 день, чтобы попытаться вручную исправить несколько высоких уязвимостей. Это была пустая трата времени.
Я прочитал много постов, блогов и предложений, но не смог решить проблему.
В основном /css-то, что требует обновления до версии 5.0.1, и аудит npm говорит о том, что
│ Dependency of │ gulp-imagemin [dev]
│ Path │ gulp-imagemin > imagemin-svgo > svgo > css-select >
| css-what
Я запустил (на gulp-imagemin) команду npm update
, затем перейдите в следующую папку (imagemin-svgo) и снова npm update
и т. Д. и т. Д. Когда я прихожу в css-какой корень, я снова запускаю npm update
, но он ничего не делает;
Затем я изменил свой пакет.json в соответствии
"resolutions": {
"trim-newlines": "^4.0.1",
"css-what": "^5.0.1",
"scripts": {
"preinstall": "npx npm-force-resolutions"
}
}
Я вернулся к основному корню для запуска npm i
, но он не изменяет все ветви; Кроме того, когда я запускаю npm ls css-what
или npm ls trim-newlines
я вижу, что новая версия была установлена на node_modules, но более старая версия все еще остается неизменной в дереве
Я следил https://hackernoon.com/how-fix-security-vulnerabilities-in-npm-dependencies-in-3-minutes-rq9g3y7u сообщение, но по какой-то причине это не сработало, скорее всего, из-за моей неопытности.
Спасибо за вашу помощь
Ответ №1:
Чтобы исправить уязвимость, вы можете попробовать :
npm audit -fix
Для обновления вы также можете использовать npm-проверку обновлений
Комментарии:
1. Привет, исправление аудита npm ничего не исправило, я забыл добавить его в свой пост. Спасибо
2. попробуйте установить
npm-check-updates
, ввестиncu -u gulp-imagemin
и закончитьnpm i
.3. Или если вы хотите обновить все пакеты, которые вы вводите
ncu -u
4. После этой команды вы вводите
npm i
. попробуйте это увидеть.5. Привет, Сега, спасибо за твое предложение. Я выполнил все команды по всему дереву. Ссылаясь на изображение, я примерил папку gulp-sass, папку мяу и те же новые строки обрезки. Похоже, что все зависимости обновлены, но когда я перехожу в основную папку и запускаю npm ls trim-newlines, версия остается старой…
Ответ №2:
npm update css-what
работал на меня