Chrome дахь Specter эмзэг байдлыг ашиглах шинэ техник Spook.js

Судлаачдын бүлэг Энэ тухай Америк, Австрали, Израилийн их сургуулиуд мэдээлсэн байна довтолгооны шинэ техникийг тайлбарлав Энэ нь эмзэг байдлыг ашиглах боломжийг олгодог Chromium-ээр ажилладаг хөтчүүд дээрх спектрийн анги.

Довтолгоог кодоор нэрлэсэн Spook.js нь JavaScript кодыг гүйцэтгэх үед сайтыг тусгаарлах механизмыг тойрч гарах боломжийг олгодог мөн одоогийн үйл явцын бүх хаягийн талбайн агуулгыг унших, өөр таб дээр гүйцэтгэсэн, гэхдээ ижил процессоор боловсруулсан хуудасны өгөгдөлд хандах.

Chrome өөр өөр процессоор өөр өөр сайтуудыг ажиллуулдаг тул практик халдлага нь өөр өөр хэрэглэгчид хуудсуудаа байршуулах боломжийг олгодог үйлчилгээгээр хязгаарлагддаг. Spook.js -ийн халдлагын арга нь халдагч өөрийн JavaScript кодыг оруулах боломжтой хуудаснаас боломжтой болгодог., тухайн сайтын хэрэглэгч нээсэн бусад хуудсууд байгаа эсэхийг тодорхойлох мөн нууц мэдээллийг задлах тэдгээрийн дотор жишээ нь итгэмжлэл эсвэл банкны дэлгэрэнгүй мэдээллийг вэб хэлбэрээр автоматаар бөглөх системээр сольсон болно.

Аргын өөр нэг хэрэглээ бол хөтчийн залгаас руу дайралт хийх явдал юм. Энэ нь халдагчдын хяналттай нэмэлт өргөтгөлийг суурилуулах үед бусад залгаасуудаас өгөгдлийг задлах боломжийг олгодог.

Spook.js нь Chromium хөдөлгүүр дээр суурилсан аливаа хөтөч дээр хэрэглэгддэг. үүнд Google Chrome, Microsoft Edge, Brave орно. Судлаачид энэ аргыг Firefox -тэй ажиллахад дасан зохицох боломжтой гэж үзэж байгаа боловч Firefox хөдөлгүүр нь Chrome -оос эрс ялгаатай тул ийм мөлжлөгийг бий болгох ажил ирээдүйд үлдэх болно.

Хөтөчөөр дамжуулан зааврыг таамаглалаар гүйцэтгэхтэй холбоотой халдлагаас хамгаалахын тулд хаягийн орон зайг сегментчилсэн байдлаар Chrome-д хэрэгжүүлдэг: хамгаалагдсан хайрцгийг тусгаарлах нь JavaScript-ийг зөвхөн 32 битийн заагчтай ажиллах боломжийг олгодог бөгөөд хянагчийн санах ойг давхцахгүй 4GB стек дээр хуваалцдаг.

Процессийн бүх хаягийн орон зайд хандах хандалтыг зохион байгуулж, 32 битийн хязгаарлалтаас зайлсхийхийн тулд судлаачид JavaScript хөдөлгүүрийг буруу төрөлтэй объектыг боловсруулах боломжийг олгодог төрөл төөрөгдүүлэх техникийг ашигласан бөгөөд ингэснээр 64 бит үүсгэх боломжтой болсон. 32 битийн хоёр утгын хослол дээр үндэслэсэн код.

Довтолгооны мөн чанар нь JavaScript хөдөлгүүрт тусгайлан боловсруулсан хортой объектыг боловсруулснаар массивт нэвтрэх зааврыг спекулятив байдлаар гүйцэтгэх нөхцлийг бүрдүүлдэг явдал юм. Обьектийг халдагчдын хянадаг талбаруудыг 64 битийн заагч ашиглаж буй хэсэгт байрлуулахаар сонгосон болно.

Хортой объектын төрөл нь боловсруулж буй массивын төрөлтэй тохирохгүй тул ердийн нөхцөлд массивт нэвтрэхэд ашигладаг кодын дезоптимизацийн механизмаар ийм үйлдлийг Chrome -д хаадаг. Энэ асуудлыг шийдэхийн тулд Type Confusion довтолгооны кодыг "хэрэв" нөхцөлт блокт байрлуулсан бөгөөд энэ нь ердийн нөхцөлд гал авдаггүй, гэхдээ процессор илүү олон салбарыг буруу таамагласан тохиолдолд таамаглалын горимд ажилладаг.

Үүний үр дүнд процессор нь үүсгэсэн 64 битийн заагч руу таамаглалаар хандаж, амжилтгүй таамаглалыг тодорхойлсны дараа төлөвийг буцаана, гэхдээ гүйцэтгэлийн ул мөрийг хуваалцсан кэшт тохируулсан бөгөөд кэшийн агуулгыг гурав дахь талаас нь тодорхойлох аргыг ашиглан сэргээж болно. намын сувгууд, кэш болон кэшгүй өгөгдөлд нэвтрэх цагийн өөрчлөлтийг шинжлэх.

JavaScript дээр байгаа таймерын нарийвчлал хангалтгүй байгаа нөхцөлд кэшийн агуулгыг шинжлэхийн тулд процессоруудад ашигладаг Tree-PLRU кэшийн өгөгдлийг зайлуулах стратегийг ашиглан Google-ийн санал болгосон аргыг ашигладаг бөгөөд тооны мөчлөгийг нэмэгдүүлэх замаар кэш дэх утга байгаа болон байхгүй байгаа хугацааны зөрүүг мэдэгдэхүйц нэмэгдүүлэх.

Судлаачид Chrome 89 e дээр ажилладаг мөлжлөгийн загварыг гаргажээIntel i7-6700K ба i7-7600U бүхий n систем. Энэхүү мөлжлөгийг өмнө нь Google -ээс гаргасан JavaScript кодын прототип ашиглан Specter халдлага үйлдэх зорилгоор бүтээжээ.

Эцэст нь судлаачид үүнийг дурджээ Intel болон Apple M1 процессор дээр суурилсан системд зориулсан ажлын мөлжлөгийг бэлдэж чадсансанах ойг секундэд 500 байт, 96%нарийвчлалтай унших санах ойг зохион байгуулах боломжийг олгодог. Энэ аргыг AMD процессоруудад ашиглах ёстой боловч бүрэн ажиллагаатай програмыг бэлтгэх боломжгүй байсан.

Эх сурвалж: https://www.spookjs.com


Нийтлэлийн агуулга нь бидний зарчмуудыг баримталдаг редакцийн ёс зүй. Алдааны талаар мэдээлэхийн тулд товшино уу энд байна.

Сэтгэгдэл бичих эхний хүн бай

Сэтгэгдэлээ үлдээгээрэй

Таны и-мэйл хаяг хэвлэгдсэн байх болно. Шаардлагатай талбарууд нь тэмдэглэгдсэн байна *

*

*

  1. Мэдээллийг хариуцах: Мигель Анхель Гатан
  2. Мэдээллийн зорилго: СПАМ-ыг хянах, сэтгэгдлийн менежмент.
  3. Хууль ёсны байдал: Таны зөвшөөрөл
  4. Мэдээллийн харилцаа холбоо: Хуулийн үүргээс бусад тохиолдолд мэдээллийг гуравдагч этгээдэд дамжуулахгүй.
  5. Өгөгдөл хадгалах: Occentus Networks (ЕХ) -с зохион байгуулсан мэдээллийн сан
  6. Эрх: Та хүссэн үедээ мэдээллээ хязгаарлаж, сэргээж, устгаж болно.