Malicious code injected into an NPM package with 2,000,000 weekly downloads

 ( toMpEr | 2018. november 26., hétfő - 21:37 )

https://github.com/dominictarr/event-stream/issues/116

> npm owner ls event-stream
> right9ctrl

> dominictarr: he emailed me and said he wanted to maintain the module, so I gave it to him. I don't get any thing from maintaining this module, and I don't even use it anymore, and havn't for years.

> For the ones wondering what the code does, based on the provided pretiffied code above by @joepie91:
> - Looking for the victim hot wallet profiles (this could have been running in mobile apps as well as your regular browser, regardless the device).
> - Iterate over all wallet ids and mapping all public keys which balances where over 100 BTC or 1e3 BCH.
> - Send it to a server in Kuala Lumpur (hosted here: https://www.shinjiru.com.my/ - taken from nmap -F 111.90.151.134).

> Check this dependency tree guys: request -> tough-cookie -> psl -> JSONStream -> event-stream -> flatmap-stream

Kapcsolodó: https://hackernoon.com/im-harvesting-credit-card-numbers-and-passwords-from-your-site-here-s-how-9a8cb347c5b5

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

nice

Jaja, el tudom képzelni, hogy egy átlag frontend fejlesztő azzal fog foglalkozni, hogy a letöltött npm package-ekben az összes dependency forrását átnézi egyesével (mert ugye nem garantált,hogy github-on és npm-en is ugyanaz a kód van) és még valahogy összehasonlítja a minified verzióval is, hogy van e különbség.

azt hiszem marad még az uMatrix egy pár évig...

Csak kíváncsiságból megnéztem a támadott bitcoin wallet függőségeit: 2612 npm package-et használ, ennyit kéne átnézni.

> azt hiszem marad még az uMatrix egy pár évig...

Ebben az esetben nem sokat segített volna, mert ez egy js-ben épített appot támadott, de egyébként nem rajongok az ötletért, hogy egy third-party developer (uMatrix) js-e fusson minden megnyitott oldalamon. (aminek ugyanúgy lehetnek függőségei)

pl.
- 2018 november: Rogue browser extensions appear to be responsible for Russian hackers obtaining private messages from as many as 120 million Facebook accounts

- 2018 szeptember: MEGA Chrome Extension Hacked To Steal Login Credentials and CryptoCurrency: When installed the extension will monitor for specific login form submissions to Amazon, Microsoft, Github, and Google. SerHack told BleepingComputer that there are over 1.6 million affected users.

Igazad van, de még mindig könnyebb az uMatrix-ot felülvizsgálni mondjuk pár havonta, mint minden oldalt egyesével.
Én sem gondolom, hogy ez lenne a legjobb megoldás,de talán még mindig ez a legkevésbé tolakodó (az egyéb blokkolókkal együtt persze) egy átlag böngészési élményhez.
Tudsz esetleg mást javasolni?

> Igazad van, de még mindig könnyebb az uMatrix-ot felülvizsgálni mondjuk pár havonta, mint minden oldalt egyesével.

Chrome esetében pl nincs egyszerű lehetőség az auto-update kikapcsolására sem.

> Tudsz esetleg mást javasolni?

Nemnagyon. Én nem érzem, hogy adna annyit az umatrix, hogy megérje az ismeretlen beinjekált js-t. Szerintem a rosszakaró js ki tudja kerülni ezeket a blokkolásokat, pl azzal, hogy csinál egy teljes képernyős linket http://any.host/leak?privatekey=... cél url-el, így a következő kattintáskor kiadja az adatokat. De ezt mindenkinek saját magának kell eldöntenie, hogy melyik kockázatot látja nagyobbnak.

A Chrome 70-essel elvileg a felhasználók által testreszabhatóbb lesz majd az extensionok jogosultságai: https://developer.chrome.com/extensions/runtime_host_permissions

Az elejét olvasva rögtön eszembejutott a HackerNoon-os cikk és mondom majd belinkelem, de a végén láttam, hogy nem kell :D

Hát igen, vannak problémák az npm rendszerrel. Én ezért kerülöm az ilyeneket, mert lehet, hogy valamit hamar megoldasz egy depedency behúzással, de az is ránt magával minden mást és legyen ember a talpán aki mindent leellenőriz.

---
"Errors are red
My screen in blue
Someone help me
I've deleted Sys32"

Csak hogy mennyire komoly a dolog, pár perce átvette az npm staff a csomagot:

$ npm owner ls event-stream
npm [npm@npmjs.com]

https://www.zdnet.com/article/hacker-backdoors-popular-javascript-library-to-steal-bitcoin-funds/

sub

sub

----
FreeBSD, Solaris, blackPanther