Open Source Foundation သည် JavaScript API ကိုကန့်သတ်ရန် JShelter browser add-on ကိုမိတ်ဆက်ပေးခဲ့သည်။

အခမဲ့ဆော့ဖ်ဝဲလ်ဖောင်ဒေးရှင်းသည် လျှို့ဝှက်သတ်မှတ်ခြင်း၊ လှုပ်ရှားမှုများကိုခြေရာခံခြင်းနှင့် အသုံးပြုသူဒေတာစုဆောင်းခြင်းအပါအဝင် ဝဘ်ဆိုက်များပေါ်တွင် JavaScript ကိုအသုံးပြုသည့်အခါ ဖြစ်ပေါ်လာသည့်အန္တရာယ်များကိုကာကွယ်ရန် ဘရောက်ဆာ add-on ကိုတီထွင်သည့် JShelter ပရောဂျက်ကို မိတ်ဆက်ပေးခဲ့သည်။ ပရောဂျက်ကုဒ်ကို GPLv3 လိုင်စင်အောက်တွင် ဖြန့်ဝေထားသည်။ အပိုပရိုဂရမ်ကို Firefox၊ Google Chrome၊ Opera၊ Brave၊ Microsoft Edge နှင့် Chromium အင်ဂျင်ကိုအခြေခံ၍ အခြားဘရောက်ဆာများအတွက် ပြင်ဆင်ထားသည်။

အဆိုပါပရောဂျက်ကို NLnet ဖောင်ဒေးရှင်းမှ ရန်ပုံငွေဖြင့် ပူးပေါင်းလုပ်ဆောင်မှုတစ်ခုအဖြစ် ဖော်ဆောင်လျက်ရှိသည်။ NoScript အပိုပရိုဂရမ်ကို ဖန်တီးသူ Giorgio Maone နှင့် J++ ပရောဂျက်ကို တည်ထောင်သူများနှင့် JS-Shield နှင့် JavaScript Restrictor အပိုပရိုဂရမ်များ ရေးသားသူများလည်း JShelter ၏ ဖွံ့ဖြိုးတိုးတက်မှုတွင် ပါဝင်ခဲ့သည်။ JavaScript Restrictor add-on ကို ပရောဂျက်အသစ်အတွက် အခြေခံအဖြစ် အသုံးပြုပါသည်။

JShelter သည် ဝဘ်ဆိုက်များနှင့် ဝဘ်အက်ပလီကေးရှင်းများအတွက် ရရှိနိုင်သော JavaScript ပရိုဂရမ်းမင်း အင်တာဖေ့စ်အတွက် firewall တစ်မျိုးအဖြစ် ယူဆနိုင်သည်။ အပိုပရိုဂရမ်သည် API သို့ဝင်ရောက်ခွင့်အတွက် လိုက်လျောညီထွေဖြစ်စေသော ဖွဲ့စည်းမှုမုဒ်ကို အကာအကွယ်လေးဆင့်ပေးပါသည်။ အဆင့် သုည သည် API အားလုံးကို လုံး၀ ဝင်ရောက်ခွင့်ပြုသည်၊ ပထမတွင် စာမျက်နှာများ၏ လည်ပတ်မှုကို မနှောင့်ယှက်ဘဲ အနည်းငယ်သာ ပိတ်ဆို့ခြင်း ၊ ပိတ်ဆို့ခြင်းနှင့် လိုက်ဖက်ညီမှု အကြား ဒုတိယအဆင့် ချိန်ခွင်လျှာ နှင့် စတုတ္ထအဆင့်တွင် မလိုအပ်သော အရာအားလုံးကို တင်းကျပ်စွာ ပိတ်ဆို့ခြင်း ပါဝင်သည်။

API ပိတ်ဆို့ခြင်းဆက်တင်များကို ဆိုက်တစ်ခုချင်းစီနှင့် ချိတ်ဆက်နိုင်သည်၊ ဥပမာ၊ အချို့ဆိုက်များအတွက် အကာအကွယ်ကို အားကောင်းစေပြီး အခြားသူများအတွက် ပိတ်ထားနိုင်သည်။ အချို့သော JavaScript နည်းလမ်းများ၊ အရာဝတ္တုများ၊ ဂုဏ်သတ္တိများနှင့် လုပ်ဆောင်ချက်များကိုလည်း ရွေးချယ်ပိတ်ဆို့နိုင်သည် သို့မဟုတ် ပြန်ပေးသည့်တန်ဖိုးများကို ပြောင်းလဲနိုင်သည် (ဥပမာ၊ စနစ်နှင့်ပတ်သက်သည့် မှားယွင်းသောအချက်အလက်များကို ထုတ်လုပ်နိုင်သည်)။ သီးခြားအင်္ဂါရပ်မှာ NBS (Network boundary shield) မုဒ်ဖြစ်ပြီး၊ စာမျက်နှာများကို ပြင်ပနှင့် ဒေသတွင်းကွန်ရက်များကြားရှိ ပရောက်စီတစ်ခုအဖြစ် ဘရောက်ဆာကို အသုံးပြုခွင့်မပြုပါ (အထွက်တောင်းဆိုမှုများအားလုံးကို ကြားဖြတ်ပြီး ခွဲခြမ်းစိတ်ဖြာထားသည်)။

ပိတ်ဆို့ထားသော သို့မဟုတ် ကန့်သတ်ထားသော API များ-

  • window.Date၊ window.performance.now(), window.PerformanceEntry, Event.prototype.timeStamp, Gamepad.prototype.timestamp နှင့် VRFrameData.prototype.timestamp - ဘေးထွက်ချန်နယ်တိုက်ခိုက်မှုများကို ခွဲခြားသတ်မှတ်ပြီး လုပ်ဆောင်ရန် အချိန်အတိအကျကို အသုံးပြုနိုင်သည်။ .
  • HTMLCanvasElement (canvas.toDataURL(), canvas.toBlob(), CanvasRenderingContext2D.getImageData, OffscreenCanvas.convertToBlob()) - အသုံးပြုသူတစ်ဦးကို ဖော်ထုတ်ရာတွင် ဂရပ်ဖစ်စနစ်ခွဲ၏ အင်္ဂါရပ်များကို ဆုံးဖြတ်ရန် အသုံးပြုသည်။
  • Audiobuffer နှင့် analoguffer.getchanneldata (), AudiObuffer.copytchannel (), ဆန်းစစ်ခြင်းလေ့လာဆန်းစစ်မှု။ ။
  • WebGLRenderingContext - ဂရပ်ဖစ် stack နှင့် GPU ၏အင်္ဂါရပ်များကိုခွဲခြမ်းစိတ်ဖြာခြင်းအားဖြင့်ခွဲခြားသတ်မှတ်ခြင်း။
  • MediaDevices.prototype.enumerateDevices - ကင်မရာနှင့် မိုက်ခရိုဖုန်း၏ ကန့်သတ်ချက်များနှင့် အမည်များကို ရယူခြင်းဖြင့် ခွဲခြားသတ်မှတ်ခြင်း။
  • navigator.deviceMemory၊ navigator.hardwareConcurrency - ဟာ့ဒ်ဝဲအကြောင်း အချက်အလက်များ ရယူခြင်း။
  • XMLHttpRequest (XHR) - စာမျက်နှာကို တင်ပြီးနောက် စုဆောင်းထားသော စနစ်အချက်အလက်များကို ပြင်ပဆာဗာသို့ လွှဲပြောင်းပေးသည်။
  • ArrayBuffer - အသေးစားဗိသုကာဆိုင်ရာ Spectre တိုက်ခိုက်မှုများကို လုပ်ဆောင်သည်။
  • WebWorker (window.Worker), SharedArrayBuffer (window.SharedArrayBuffer) - ဒေတာဝင်ရောက်သည့်အခါ နှောင့်နှေးမှုကို အကဲဖြတ်သည့် တိုက်ခိုက်မှုများကို လုပ်ဆောင်သည်။
  • Geolocation API (navigator.geolocation) - တည်နေရာအချက်အလက်ကို ဝင်ရောက်ကြည့်ရှုခွင့် (ထို့အပြင် သင်ပြန်ပေးသောဒေတာကို ပုံပျက်သွားစေသည်)။
  • Gamepad API (navigator.getGamepads()) သည် စနစ်အတွင်းရှိ gamepad တစ်ခုရှိခြင်းကို ထည့်သွင်းစဉ်းစားသည့် သက်သေခံလက္ခဏာများထဲမှ တစ်ခုဖြစ်သည်။
  • Virtual Reality API၊ Mixed Reality API - ခွဲခြားသတ်မှတ်ရန်အတွက် virtual reality device parameters များကိုအသုံးပြုခြင်း။
  • window.name - ဆိုက်ဖြတ်ကျော် ပေါက်ကြားမှုများ။
  • navigator.sendBeacon - ဝဘ်ခွဲခြမ်းစိတ်ဖြာမှုများအတွက် အသုံးပြုသည်။

source: opennet.ru

မှတ်ချက် Add