Prije nekoliko dana objavljeno je da je u PyPI direktoriju (Python package index) identificirano 11 paketa koji sadrže zlonamjerni kod.
Prije nego što su problemi identificirani, paketi su preuzeti ukupno otprilike 38 puta , a vrijedi napomenuti da se otkriveni zlonamjerni paketi ističu po korištenju sofisticiranih metoda za prikrivanje komunikacijskih kanala sa serverima napadača.
Paketi koji su otkriveni su sljedeći:
- važan paket (6305 preuzimanja) e važan-paket (12897): ovi paketi uspostaviti vezu sa eksternim serverom pod krinkom povezivanja na pypi.python.org da omogući pristup ljusci sistemu (obrnuta školjka) i koristite program trevorc2 da sakrijete komunikacijski kanal.
- pptest (10001) e ipboards (946): koristio DNS kao komunikacijski kanal za prijenos informacija o sistemu (u prvom paketu ime hosta, radni direktorij, interna i eksterna IP adresa, u drugom korisničko ime i ime hosta).
- owlmoon (3285), DiscordSafety (557) y yiffparty (1859) - Identifikujte Discord servisni token na sistemu i pošaljite ga spoljnom hostu.
- trrfab (287): Šalje identifikator, ime hosta i sadržaj / etc / passwd, / etc / hosts, / home vanjskom hostu.
- 10cent10 (490) - Uspostavljena obrnuta ljuska veza s vanjskim hostom.
yandex-yt (4183) - prikazao poruku o kompromitovanom sistemu i preusmjerio na stranicu sa dodatnim informacijama o dodatnim radnjama, izdatim putem nda.ya.ru (api.ya.cc).
Stoga se spominje da posebnu pažnju treba posvetiti metodi pristupa vanjskim hostovima korištenim u paketima importantpackage i important-package, koji koriste mrežu za isporuku sadržaja Fastly koja se koristi u PyPI katalogu kako bi sakrili svoju aktivnost.
Zapravo, zahtjevi su poslani na pypi.python.org server (uključujući navođenje imena python.org u SNI unutar HTTPS zahtjeva), ali je ime servera koji kontrolira napadač postavljeno u HTTP zaglavlje "Host ». Mreža za isporuku sadržaja poslala je sličan zahtjev serveru napadača, koristeći parametre TLS veze na pypi.python.org prilikom prijenosa podataka.
PyPI -jeva infrastruktura se zasniva na Fastly Content Delivery Network-u, koji koristi Varnish-ov transparentni proxy za keširanje tipičnih zahtjeva i koristi obradu TLS certifikata na nivou CDN-a, umjesto endpoint servera, za prosljeđivanje HTTPS zahtjeva putem proxyja. Bez obzira na odredišni host, zahtjevi se šalju proxyju, koji identificira željeni host pomoću HTTP "Host" zaglavlja, a nazivi domena hostova su vezani za tipične IP adrese CDN load balancer-a koje se nalaze na svim Fastly klijentima.
Server napadača je također registrovan kod CDN Fastlyja , koji nudi besplatne planove, pa čak i omogućava anonimnu registraciju. Vrijedi napomenuti da se slična shema koristi za slanje zahtjeva žrtvi kada se kreira "obrnuta ljuska", ali je inicira napadačev host. Izvana, interakcija sa napadačevim serverom izgleda kao legitimna sesija s PyPI direktorijem, šifrirana PyPI TLS certifikatom. Slična tehnika, poznata kao "domain fronting", ranije je korištena za aktivno prikrivanje imena hosta zaobilaženjem blokova. To je uključivalo korištenje HTTPS opcije koju pružaju neki CDN-ovi, navođenje lažnog hosta u SNI-ju i prosljeđivanje traženog imena hosta u HTTP zaglavlju hosta unutar TLS sesije.
Za skrivanje zlonamjerne aktivnosti dodatno je korišten paket TrevorC2, koji čini interakciju sa serverom sličnom normalnom pretraživanju weba.
Paketi pptest i ipboards koristili su drugačiji pristup za prikrivanje mrežne aktivnosti, zasnovan na kodiranju korisnih informacija u zahtjevima prema DNS serveru. Zlonamjerni softver prenosi informacije izvodeći DNS upite, u kojima se podaci koji se prenose na komandni i kontrolni server kodiraju korištenjem base64 formata u nazivu poddomena. Napadač prihvata ove poruke tako što kontroliše DNS server domene.
Konačno, ako ste zainteresirani da saznate više, detalje možete pronaći na sljedećem linku.