YARN Audit
Das Problem
Entwickler, die sich jüngst die Pakete coa oder rc aus dem NPM Repository heruntergeladen haben, haben ihren Computer mit hoher Wahrscheinlichkeit mit Schadcode infiziert. So lautetet die Schlagzeilen in diversen Blogbeiträgen.
Dies war Anlass, damit wir unsere Produkte „hoerb„ und „anmeldeliste„ wieder mal nach sogenannten Vulnerabilities durchsucht haben.
Wie funktioniert das ?
Ein npm audit fix sollte schon ein Quickfix sein. Das Problem ist aber, dass wir bei unseren Frontends jedoch yarn verwenden. Bei yarn existiert zwar ein yarn audit jedoch werden hier nur die Vulnerabilities angezeigt.
Vielleicht reicht es die Node Module neu zu installieren?
1 rm yarn.lock
2 rm -rf node_modules
3 yarn install
Audit ausführen.
1 yarn audit
Schöner bzw. automatisch geht das dann schon mit dem NPM Packet „yarn-audit-fix“.
1 yarn add yarn-audit-fix -D
2 yarn run yarn-audit-fix
Audit nochmals ausführen:
1 yarn audit
Bestehen noch immer Vulnerabilities?
- Möglicherweise hängen sie von einem Paket ab, das nicht häufig aktualisiert wird, was von einem anderen Paket abhängt, das ein wichtiges Upgrade erhalten hat.
- Eine Unterabhängigkeit deines Projekts hat ein wichtiges Sicherheitsupdate erhalten und du möchtest nicht warten, bis die direkte Abhängigkeit ein Mindestversions-Update herausgibt.
- Du verlässt dich auf ein nicht gewartetes, aber funktionierendes Paket und eine seiner Abhängigkeiten wurde aktualisiert.
Mit Hilfe von sogenannten resolutions in der package.json kann hier geholfen werden.
Füge der package.json-Datei ein resolutions Feld hinzu und definiere die Versionsüberschreibungen:
Danach führt man nochmals yarn install aus und die eingefügten Version werden installiert.
Audit nochmals ausführen
1 yarn audit
Das Ergebnis: