Zlonamerna koda je bila odkrita v rest-client in 10 drugih paketih Ruby

V priljubljeni embalaži draguljev rest-client, s skupno 113 milijoni prenosov, ugotovljeno Zamenjava zlonamerne kode (CVE-2019-15224), ki prenaša izvedljive ukaze in pošilja informacije zunanjemu gostitelju. Napad je bil izveden prek kompromis developer account rest-client v repozitoriju rubygems.org, nato pa so napadalci 13. in 14. avgusta objavili izdaje 1.6.10-1.6.13, ki so vključevale zlonamerne spremembe. Preden so zlonamerne različice blokirali, jih je uspelo prenesti okoli tisoč uporabnikov (napadalci so izdali posodobitve na starejše različice, da ne bi pritegnili pozornosti).

Zlonamerna sprememba preglasi metodo "#authenticate" v razredu
Identiteta, po katerem vsak klic metode povzroči pošiljanje e-pošte in gesla, poslanega med poskusom preverjanja pristnosti, gostitelju napadalca. Na ta način se prestrežejo prijavni parametri uporabnikov storitev, ki uporabljajo razred Identity in nameščajo ranljivo različico knjižnice rest-client, kar predstavljeno kot odvisnost v številnih priljubljenih paketih Ruby, vključno z ast (64 milijonov prenosov), oauth (32 milijonov), fastlane (18 milijonov) in kubeclient (3.7 milijona).

Poleg tega so bila kodi dodana stranska vrata, ki omogočajo izvajanje poljubne kode Ruby prek funkcije eval. Koda se prenaša prek piškotka, ki ga potrdi napadalčev ključ. Za obveščanje napadalcev o namestitvi zlonamernega paketa na zunanjem gostitelju se pošlje URL žrtvinega sistema in izbor informacij o okolju, kot so shranjena gesla za DBMS in storitve v oblaku. Z zgoraj omenjeno zlonamerno kodo so bili zabeleženi poskusi prenosa skript za rudarjenje kriptovalut.

Po študiju zlonamerne kode je bilo razkrilada so podobne spremembe prisotne v 10 paketov v Ruby Gems, ki niso bili zajeti, ampak so jih napadalci posebej pripravili na podlagi drugih priljubljenih knjižnic s podobnimi imeni, v katerih je bil pomišljaj zamenjan s podčrtajem ali obratno (na primer na podlagi razčlenjevalnik cron je bil ustvarjen zlonamerni paket cron_parser, ki temelji na doge_coin zlonamerni paket doge-coin). Težavni paketi:

Prvi zlonamerni paket s tega seznama je bil objavljen 12. maja, vendar se jih je večina pojavila julija. Skupaj so bili ti paketi preneseni približno 2500-krat.

Vir: opennet.ru

Dodaj komentar