Schadelijke code gedetecteerd in rest-client en 10 andere Ruby-pakketten

In een populair edelstenenpakket rest-cliënt, met in totaal 113 miljoen downloads, geïdentificeerd Vervanging van kwaadaardige code (CVE-2019-15224) die uitvoerbare opdrachten downloadt en informatie naar een externe host verzendt. De aanval werd uitgevoerd via compromis ontwikkelaarsaccount rest-client in de rubygems.org-repository, waarna de aanvallers op 13 en 14 augustus releases 1.6.10-1.6.13 publiceerden, die kwaadaardige wijzigingen bevatten. Voordat de kwaadaardige versies werden geblokkeerd, slaagden ongeveer duizend gebruikers erin deze te downloaden (de aanvallers brachten updates voor oudere versies uit om geen aandacht te trekken).

De schadelijke wijziging overschrijft de methode '#authenticate' in de klasse
Identiteit, waarna elke methodeaanroep ertoe leidt dat de e-mail en het wachtwoord die tijdens de authenticatiepoging zijn verzonden, naar de host van de aanvaller worden verzonden. Op deze manier worden de inlogparameters onderschept van servicegebruikers die de Identity-klasse gebruiken en een kwetsbare versie van de rest-client-bibliotheek installeren, waardoor uitgelicht als afhankelijkheid in veel populaire Ruby-pakketten, waaronder ast (64 miljoen downloads), oauth (32 miljoen), fastlane (18 miljoen) en kubeclient (3.7 miljoen).

Daarnaast is er een achterdeur aan de code toegevoegd, waardoor via de eval-functie willekeurige Ruby-code kan worden uitgevoerd. De code wordt verzonden via een cookie die is gecertificeerd door de sleutel van de aanvaller. Om aanvallers te informeren over de installatie van een kwaadaardig pakket op een externe host, worden de URL van het systeem van het slachtoffer en een selectie van informatie over de omgeving, zoals opgeslagen wachtwoorden voor het DBMS en clouddiensten, verzonden. Pogingen om scripts voor cryptocurrency-mining te downloaden werden geregistreerd met behulp van de bovengenoemde kwaadaardige code.

Na het bestuderen van de kwaadaardige code was dat zo onthuldwaarin soortgelijke veranderingen plaatsvinden 10 pakketten in Ruby Gems, die niet zijn buitgemaakt, maar speciaal zijn voorbereid door aanvallers op basis van andere populaire bibliotheken met vergelijkbare namen, waarbij het streepje is vervangen door een onderstrepingsteken of omgekeerd (bijvoorbeeld gebaseerd op cron-parser er is een kwaadaardig pakket cron_parser gemaakt, en op basis daarvan doge_munt doge-coin kwaadaardig pakket). Probleempakketten:

Het eerste kwaadaardige pakket uit deze lijst werd op 12 mei gepost, maar de meeste verschenen in juli. In totaal zijn deze pakketten ongeveer 2500 keer gedownload.

Bron: opennet.ru

Voeg een reactie