
Безопасно* Установите пакеты с NPM/YARN, проверяя их как часть вашего процесса установки

Освещение в СМИ о NPQ:
После установки NPQ вы можете безопасно* Установить пакеты:
npq install express npq выполнит следующие шаги, чтобы проверить, что пакет безопасен, используя синтаксическую эвристику и запросив базу данных CVE:
Если NPQ будет предложено продолжить установку, он просто передает фактическое задание установки пакета с менеджером пакетов (NPM по умолчанию).
безопасно* - нет гарантированной безопасности; Можно все еще существовать вредоносный или уязвимый пакет, который публично раскрывает уязвимость безопасности и передает чеки NPQ.
npm install -g npq Примечание: мы рекомендуем установить с помощью npm , а не yarn . Таким образом, npq может автоматически устанавливать для вас псевдонимов оболочки.
npq install express Поскольку npq является предварительным шагом, чтобы гарантировать, что установленный вами пакет NPM, который вы устанавливаете, вы можете безопасно внедрить его в свое повседневное использование npm , так что нет необходимости помнить, чтобы явно запускать npq .
alias npm= ' npq-hero ' Если вы используете yarn или, как правило, хотите явно сообщить NPQ, какой диспетчер пакетов использовать, вы можете указать переменную среды: NPQ_PKG_MGR=yarn
Пример: создайте псевдоним с пряжей в качестве менеджера пакетов:
alias yarn= " NPQ_PKG_MGR=yarn npq-hero " Примечание. npq по умолчанию разгружает все команды и их аргументы в диспетчер пакетов npm после того, как он завершит должную дилигентность для соответствующих пакетов.
| Имя Маршалла | Описание | Примечания |
|---|---|---|
| возраст | Покажет предупреждение о пакете, если его возраст на NPM составляет менее 22 дней | Проверяет дату создания пакета, а не конкретную версию |
| автор | Покажет предупреждение, если упаковка была найдена без поля автора | Проверяет последнюю версию для автора |
| Загрузки | Покажет предупреждение о пакете, если его загрузка подсчет за последний месяц составляет меньше 20 | |
| Ридме | Покажет предупреждение, если у пакета нет чтения или его обнаружено в качестве пакета заполнителей безопасности NPM. | |
| репо | Покажет предупреждение, если будет найден пакет без действительного и рабочего URL -адреса репозитория | Проверяет последнюю версию для URL -адреса репозитория |
| сценарии | Покажет предупреждение, если у пакета есть сценарий установки Pre/post, который потенциально может быть злонамеренным | |
| Snyk | Покажет предупреждение, если будет найден пакет с уязвимостью в базе данных Snyk | Чтобы Snyk работал, вам нужно либо установить пакет snyk NPM с действительным токеном API, либо сделать токен доступным в переменной среды snyk_token, и NPQ будет использовать его |
| лицензия | Покажет предупреждение, если будет найдена посылка без поля лицензии | Проверяет последнюю версию на лицензию |
| срок действия доменов | Покажет предупреждение, если будет найден пакет с одним из его сопровождающих, который имеет адрес электронной почты, который включает в себя срок действия домена с истекшим сроком действия | Проверяет версию зависимости для сопровождающего с истекшим доменом |
| подписи | Сравнит подпись пакета, как это показывает в параметре реестра с ключами, опубликованными в реестре npmjs.com | |
| происхождение | Проверит аттестации пакета провенансных метаданных для опубликованного пакета |
Чтобы полностью отключить маршалла, установите переменную среды, используя с короткометражным названием Маршалла.
Пример, чтобы отключить уязвимость Snyk Marshall:
MARSHALL_DISABLE_SNYK=1 npq install express
npq install express --dry-run
Узнайте Node.js безопасные методы кодирования и лучшие практики от Liran Tal
npm install установит модуль, даже если у него есть уязвимости; NPQ отобразит обнаруженные проблемы и подсказывает пользователю подтверждение о том, следует ли продолжить их установку.pre-install сценарий, который может быть потенциально вредным для вашей системы, и подсказывать вам его установить. Принимая во внимание, что npm audit не будет выполнять такие проверки и консультироваться только в базе данных уязвимости для известных проблем безопасности.npm audit ближе к функциональности к тому, что делает Snyk, а не то, что делает NPQ.Пожалуйста, проконсультируйтесь с участием руководящих принципов по внесению вклад в этот проект
Liran Tal [email protected]