Mozilla-ийн ашигладаг номын сангийн тусгаарлах шинэ технологи болох RLBox

Firefox лого

Стэнфордын их сургуулийн судлаачид, ла Калифорнийн их сургууль Сан Диегод y la Техасын их сургууль Остинд Тэд хөгжсөн тэдний нэрийг өгсөн багаж хэрэгслийн багц «RLBox», Que тусгаарлагчийн нэмэлт түвшин болгон ашиглаж болно функцын сангуудын эмзэг байдлыг хаах.

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

Mozilla нь RLBox-ийг Firefox 74 build-д Linux болон -ийн эмхэтгэл Firefox 75 дээрх macOS Graphite сангийн гүйцэтгэлийг тусгаарлах, эх сурвалжийг төлөөлөх үүрэгтэй.

Үүний зэрэгцээ, RLBox нь Firefox-т зориулагдаагүй тул дурын төслүүдэд дурын номын санг тусгаарлахад ашиглаж болно.

RLBox-ийн тухай

Үйлдлийн механизм RLBox нь тусгаарлагдсан номын сангаас C / C ++ кодыг завсрын WebAssembly код болгон хөрвүүлэхэд чиглэгддэг дараа нь WebAssembly модуль болгон гаргасан доод түвшний, эрх мэдлийг нь зөвхөн энэ модультай холбож өгөхөөр тохируулсан (жишээлбэл, мөр боловсруулах сан нь сокет эсвэл сүлжээний файлыг нээж чадахгүй) C / C ++ код хөрвүүлэх Вэбссемблер wasi-sdk ашиглан хийгддэг.

Шууд гүйцэтгэх зорилгоор, WebAssembly модулийг Lucet хөрвүүлэгч ашиглан машины код болгон хөрвүүлдэг бөгөөд энэ нь програмын бусад санах ойгоос тусдаа "нанопроцесс" горимд ажилладаг. Lucet хөрвүүлэгч нь WebAssembly-ийг ажиллуулахад Firefox-т ашигладаг Cranelift JIT хөдөлгүүртэй ижил код дээр суурилдаг.

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

Өндөр түвшний API нь хөгжүүлэгчдэд зориулагдсан бөгөөд номын сангийн функцуудыг тусгаарлах горимд дуудах боломжийг олгодог.

олон тоо Вэб угсралтын хянагчууд бараг нэмэлт нөөц шаарддаггүй тэдэнтэй харьцах нь ердийн функцуудыг дуудахаас хамаагүй удаан байдаг (номын сангийн функцууд нь эх код хэлбэрээр хийгддэг бөгөөд хэт ачаалал нь зөвхөн хамгаалагдсан хязгаарлагдмал орчинд ажиллах явцад өгөгдлийг хуулж, шалгахад тохиолддог) .

Тусгаарлагдсан номын сангийн функцуудыг шууд дуудах боломжгүй бөгөөд тэдгээрт хандахын тулд та давхаргыг ашиглах ёстой invoke_sandbox_function ().

Хариуд нь, хэрэв тэд гадны функцийг номын сангаас дуудах шаардлагатай бол эдгээр функцуудыг register_callback аргыг ашиглан тодорхой тодорхойлсон байх ёстой (анхдагчаар RLBox нь номын сангийн стандарт функцуудад нэвтрэх боломжийг олгодог).

Санах ойн аюулгүй ажиллагааг хангахын тулд кодын гүйцэтгэлийг тусгаарлах нь хангалтгүй юм мөн буцаж ирсэн мэдээллийн урсгалыг баталгаажуулах шаардлагатай.

Тусгаарлагдсан орчинд үүссэн утгыг найдваргүй гэж тэмдэглэсэн, бохирдсон шошготой хязгаарлаж, "цэвэрлэх" зорилгоор програмын санах ойд баталгаажуулах, хуулбарлахыг шаарддаг.

Цэвэрлэхгүйгээр бохирдсон өгөгдлийг тогтмол өгөгдөл шаарддаг нөхцөлд ашиглахыг оролдох нь (мөн эсрэгээр) хөрвүүлэлтийн үе шатанд алдаа гаргахад хүргэдэг.

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

RLBox хөгжүүлэлтийг MIT лицензийн дагуу тараадаг. RLBox одоогоор Linux болон macOS-ийг дэмжиж байна бөгөөд дараа нь Windows-тэй нийцэх төлөвтэй байна.

Хэрэв та Mozilla-ийн Firefox-д нэвтрүүлэхээр төлөвлөж буй энэхүү шинэ технологийн талаар илүү ихийг мэдэхийг хүсвэл та түүний хөгжүүлэлттэй танилцаж, API-г туршиж үзэх боломжтой. Дараах холбоос дээр.


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

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

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

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

*

*

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