npm libraries coa and rc. have been hijacked to deliver ...

Begonnen von JoWiemann, 08 November 2021, 15:07:07

Vorheriges Thema - Nächstes Thema

JoWiemann

Hallo,

einige Module benutzen ja npm. Wird in diesen Modulen auch auf coa und/oder rc referenziert?

ISSUE: Unbekannte infiltrieren Paketmanager npm und verseuchen Tools mit Schadcode https://www.heise.de/news/Unbekannte-infiltrieren-Paketmanager-npm-und-verseuchen-Tools-mit-Schadcode-6260153.html

Grüße Jörg

Mein
- npm view coa version zeigt 2.0.2 also save
- npm view rc version zeigt 1.2.8 also save
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

KölnSolar

#1
Hi Jörg,

danke für die Info. Mehr davon.... :)

Das ist wirklich erschreckend. Mal wieder ein schönes Beispiel, dass "Fremdsoftware" gefährlich ist. Daher plädiere ich ja immer wieder möglichst in Perl zu bleiben, anstatt diesem Node- u. Python-Mist. Dabei geht es ja gar nicht um die Sprache als solches, sondern einfach nur die Erhöhung des Risikos durch die erhöhte Anzahl der vielleicht Schadquellen. Wahrscheinlichkeitsrechnung dürfte jeder, der sich hier im Forum tummelt genossen haben.

Im Ursprung hatte ich auch nur schnell meinen Rpi geprüft und mit Versionen 1.2.8 u. 2.0.0, also ähnlich Deiner Versionen, mich erst einmal beruhigt.

Gestern, wo ich mit Alexa zu tun hatte, bin ich dann noch einmal tiefer eingestiegen. Da war ich dann noch mehr schockiert. Denn selbst 1.2.8 ist scheinbar nicht wirklich safe. Und dann hat ja jedes Projekt seine eigene Library(so mein Verständnis). Das heißt, mit einer einfachen Abfrage ist es nicht getan !!!  :o
Edit2: Hier ein Link, der die Thematik zu oca, rc, aber auch ua-parser beschreibt u. zugehörige "Tools". Hier einer nur zu rc
Um dann mal das Ausmaß solcher Katastrophen zu verdeutlichen: Alexa(alexa-fhem) und zigbee2mqtt nutzen eine Masse an FHEM-Usern.  :'( alexa-fhem scheint von oca u. rc überhaupt nicht betroffen. zigbee2mqtt von rc leider schon.  :'(
Ich habe dann so getestet:
npm view  rc     1.2.8(mit pi)
npm view  oca    2.0.0(mit pi)

npm ls oca       empty(mit pi)
npm ls rc       empty(mit pi)

npm ls -g rc     1.2.8(mit pi)
npm ls -g oca    2.0.0(mit pi)

zigbee2mqtt
------------
cd /opt/zigbee2mqtt
npm ls oca       empty(mit pi)
npm ls rc       1.2.8(mit pi)

alexa-fhem
-----------
cd /opt/fhem/alexa-fhem
npm ls oca       empty(mit pi)
npm ls rc       empty(mit pi)

Und mit ps -ef | grep -i jsextension 2>/dev/nullwurde es dann rot bei mir. Gefunden wird jsextension in der zu diesem Zweck geöffneten ssh-Session. Ich hoffe schwer, dass das nur dran liegt, weil ich den Suchbefehl abgesetzt habe, aber wissen tu ichs nicht.  :'( :-\ ???

Womit sich für mich die wesentlichste Frage stellt: Wie geht man nun(außer der Prüfung seiner Rechner) mit solchen Warnungen um ? Schnell ein update ziehen ? Oder ist das dann möglicherweise genau der Fehler (Zwar mag das Modul mit bekanntem Schadcode dann sorgenfrei zu sein, aber was ist mit der Masse der anderen Module ?  :o ) ?

In meinem Fall ist es, mangels Wissen zu npm/node bzw. Python/pip, vielleicht sogar positiv, dass ich meine Installationen diesbezüglich nicht aktualisiere. Auch das senkt dann ja die Wahrscheinlichkeit sich überhaupt etwas einzufangen. Irgendwie habe ich das Gefühl, dass das wie ein Henne-Ei-Problem ist. :-\

Grüße Markus

Edit1: Gerade nach dem Senden gesehen, dass der Beitrag nicht soooo oft abgerufen wurde. Es mangelt einerseits an Sensibilität bei den Usern und vielleicht bräuchten wir dann doch ein Subforum, wo solche Warnungen veröffentlicht werden und User auch regelmäßig reingucken. Kombinieren könnte man das auch mit vorübergehenden FHEM-Problemen(z.B. vor einem Update warnen, bis ein kritischer Fehler(Absturz....) behoben ist.) So was wie, "Critical issue"......
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt