724 de pachete rău intenționate detectate în RubyGems

Compania ReversingLabs а publicat rezultatele analizei aplicației dactilografiere în depozitul RubyGems. De obicei, typosquatting este folosit pentru a distribui pachete rău intenționate concepute pentru a determina un dezvoltator neatent să facă o greșeală de scriere sau să nu observe diferența atunci când caută. Studiul a identificat mai mult de 700 de pachete cu nume similare pachetelor populare, dar care diferă în detalii minore, cum ar fi înlocuirea cu litere similare sau utilizarea liniuțelor de subliniere în loc de liniuțe.

Componente suspectate de a efectua activități rău intenționate au fost găsite în peste 400 de pachete. În special, fișierul din interior era aaa.png, care includea cod executabil în format PE. Aceste pachete au fost asociate cu două conturi prin care RubyGems a fost postat în perioada 16 februarie - 25 februarie 2020 724 de pachete rău intenționate, care în total au fost descărcate de aproximativ 95 de mii de ori. Cercetătorii au informat administrația RubyGems și pachetele rău intenționate identificate au fost deja eliminate din depozit.

Dintre pachetele problematice identificate, cel mai popular a fost „atlas-client”, care la prima vedere este practic imposibil de distins de pachetul legitim „client_atlas". Pachetul specificat a fost descărcat de 2100 de ori (pachetul normal a fost descărcat de 6496 de ori, adică utilizatorii au greșit în aproape 25% din cazuri). Pachetele rămase au fost descărcate în medie de 100-150 de ori și au fost camuflate ca alte pachete folosind o tehnică similară de înlocuire a liniuțelor de subliniere și a liniuțelor (de exemplu, printre pachete rău intenționate: appium-lib, action-mailer_cache_delivery, activemodel_validators, asciidoctor_bibliography, assets-pipeline, apress_validators, ar_octopus-replication-tracking, aliyun-open_search, aliyun-mns, ab_split, apns-polite).

Pachetele rău intenționate au inclus un fișier PNG care conținea un fișier executabil pentru platforma Windows în loc de o imagine. Fișierul a fost generat folosind utilitarul Ocra Ruby2Exe și a inclus o arhivă autoextractabilă cu un script Ruby și un interpret Ruby. La instalarea pachetului, fișierul png a fost redenumit în exe și a fost lansat. În timpul execuției, un fișier VBScript a fost creat și adăugat la autorun. VBScript rău intenționat specificat într-o buclă a analizat conținutul clipboard-ului pentru prezența informațiilor care amintesc de adresele portofelului criptografic și, dacă a fost detectat, a înlocuit numărul portofelului cu așteptarea ca utilizatorul să nu observe diferențele și să transfere fonduri către portofelul greșit. .

Studiul a arătat că nu este dificil să se realizeze adăugarea de pachete rău intenționate la unul dintre cele mai populare depozite, iar aceste pachete pot rămâne nedetectate, în ciuda unui număr semnificativ de descărcări. Trebuie remarcat faptul că problema nu specific pentru RubyGems și acoperă alte depozite populare. De exemplu, anul trecut aceiași cercetători dezvăluit în depozitul NPM există un pachet rău intenționat numit bb-builder, care folosește o tehnică similară de lansare a unui fișier executabil pentru a fura parole. Înainte de asta a existat o ușă din spate găsite în funcție de pachetul NPM pentru fluxul de evenimente, codul rău intenționat a fost descărcat de aproximativ 8 milioane de ori. De asemenea, pachete rău intenționate periodic pop-up în depozitul PyPI.

Sursa: opennet.ru

Adauga un comentariu