Open Source Foundation ngenalkeun tambihan browser JShelter pikeun ngawatesan API JavaScript

Free Software Foundation ngenalkeun proyék JShelter, anu ngembangkeun browser add-on pikeun ngajagaan tina ancaman anu timbul nalika nganggo JavaScript dina situs wéb, kalebet idéntifikasi disumputkeun, ngalacak gerakan sareng akumulasi data pangguna. Kodeu proyék disebarkeun dina lisénsi GPLv3. Add-on disiapkeun pikeun Firefox, Google Chrome, Opera, Brave, Microsoft Edge sareng panyungsi sanés dumasar kana mesin Chromium.

Proyék ieu dikembangkeun salaku inisiatif gabungan anu dibiayaan ku Yayasan NLnet. Giorgio Maone, panyipta add-on NoScript, ogé pendiri proyék J ++ sareng pangarang tambihan JS-Shield sareng JavaScript Restrictor, ogé ngiringan ngembangkeun JShelter. The JavaScript Restrictor tambihan-on dipaké salaku dadasar pikeun proyék anyar.

JShelter bisa dianggap salaku jenis firewall pikeun panganteur programming JavaScript sadia pikeun jaba jeung aplikasi wéb. Add-on nyadiakeun opat tingkat panyalindungan, kitu ogé mode konfigurasi fléksibel pikeun aksés ka API. Tingkat enol lengkep ngamungkinkeun aksés ka sadaya API, anu kahiji kalebet meungpeuk minimal anu henteu ngaganggu operasi halaman, tingkat kadua kasaimbangan antara pameungpeuk sareng kasaluyuan, sareng tingkat kaopat kalebet meungpeuk anu ketat pikeun sadayana anu teu perlu.

Setélan blocking API bisa dihijikeun ka loka individu, contona, panyalindungan bisa strengthened pikeun sababaraha situs, sarta ditumpurkeun pikeun batur. Anjeun oge bisa selektif meungpeuk métode JavaScript tangtu, objék, sipat, jeung fungsi, atawa ngarobah nilai balik (contona, ngahasilkeun informasi palsu ngeunaan sistem). Fitur anu misah nyaéta mode NBS (Network boundary shield), anu henteu ngamungkinkeun halaman nganggo browser salaku proksi antara jaringan éksternal sareng lokal (sadayana pamundut kaluar dicegat sareng dianalisis).

API anu diblokir atanapi diwatesan:

  • window.Date, window.performance.now (), window.PerformanceEntry, Event.prototype.timeStamp, Gamepad.prototype.timestamp sareng VRFrameData.prototype.timestamp - kaluaran waktos pasti tiasa dianggo pikeun ngaidentipikasi sareng ngalaksanakeun serangan saluran sisi. .
  • HTMLCanvasElement (canvas.toDataURL (), canvas.toBlob (), CanvasRenderingContext2D.getImageData, OffscreenCanvas.convertToBlob ()) - dipaké pikeun nangtukeun fitur tina subsistem grafik nalika ngaidentipikasi pamaké.
  • AudioBuffer jeung AnalyserNode (AudioBuffer.getChannelData (), AudioBuffer.copyFromChannel (), AnalyserNode.getByteTimeDomainData (), AnalyserNode.getFloatTimeDomainData (), AnalyserNode.getByteFrequencyData () jeung AnalyserNode.getByteTimeDomainData (), AnalyserNode.getFloatTimeDomainData (), AnalyserNode.getByteFrequencyData () jeung AnalyserNode.getByteTimeDomainData (), AnalyserNode.getFloatTimeDomainData (), AnalyserNode.getByteFrequencyData () jeung AnalyserNode.
  • WebGLRenderingContext - idéntifikasi ngaliwatan analisis fitur tina tumpukan grafik na GPU.
  • MediaDevices.prototype.enumerateDevices - idéntifikasi ku kéngingkeun parameter sareng nami kaméra sareng mikropon.
  • navigator.deviceMemory, navigator.hardwareConcurrency - meunangkeun informasi ngeunaan hardware.
  • XMLHttpRequest (XHR) - mindahkeun informasi sistem dikumpulkeun ka server éksternal sanggeus kaca dimuat.
  • ArrayBuffer - ngalaksanakeun serangan Spectre microarchitectural.
  • WebWorker (window.Worker), SharedArrayBuffer (window.SharedArrayBuffer) - mawa kaluar serangan nu evaluate reureuh nalika ngakses data.
  • Geolocation API (navigator.geolocation) - aksés ka informasi lokasi (tambahan ngidinan Anjeun pikeun distort data balik).
  • Gamepad API (navigator.getGamepads ()) mangrupa salah sahiji tanda idéntifikasi nu tumut kana akun ayana gamepad dina sistem.
  • Virtual Reality API, Mixed Reality API - pamakéan parameter alat kanyataanana maya pikeun idéntifikasi.
  • window.name - cross-situs bocor.
  • navigator.sendBeacon - dipaké pikeun analytics wéb.

sumber: opennet.ru

Tambahkeun komentar