Google attaisno reklāmu bloķētāju izmantotās webRequest API ierobežojumus

Chrome pārlūkprogrammas izstrādātāji mēģinājusi attaisnot webRequest API darbības bloķēšanas režīma atbalsta pārtraukšana, kas ļauj mainīt saņemto saturu lidojumā un tiek aktīvi izmantots reklāmas bloķēšanas papildinājumos,
aizsardzība pret ļaunprātīgu programmatūru, pikšķerēšanu, lietotāju darbību spiegošanu, vecāku kontroli un privātumu.

Google motīvi:

  • API bloķēšanas režīms webRequest noved pie liela resursu patēriņa.
    Izmantojot šo API, pārlūkprogramma vispirms nosūta pievienojumprogrammai visus tīkla pieprasījumā ietvertos datus, papildinājums tos analizē un atgriež modificētu versiju tālākai apstrādei pārlūkprogrammā vai izdod bloķēšanas norādījumus. Šajā gadījumā galvenās kavēšanās rodas nevis pievienojumprogrammas trafika apstrādes posmā, bet gan pievienojumprogrammas izpildes koordinēšanas pieskaitāmo izmaksu dēļ. Jo īpaši šādām manipulācijām ir nepieciešams uzsākt atsevišķu procesu, lai to papildinātu, kā arī izmantot IPC, lai mijiedarbotos ar šo procesu un datu serializācijas mehānismiem;

  • Papildinājums pilnībā kontrolē visu trafiku zemā līmenī, kas paver plašas iespējas ļaunprātīgai izmantošanai un privātuma pārkāpumiem. Saskaņā ar Google statistiku 42% no visiem atklātajiem ļaunprātīgajiem papildinājumiem izmantoja webRequest API. Tiek atzīmēts, ka katru mēnesi Chrome interneta veikala katalogā tiek bloķēti mēģinājumi ievietot vidēji 1800 ļaunprātīgu papildinājumu. Diemžēl pārskatīšana neļauj mums noķert visus bez izņēmuma ļaunprātīgos papildinājumus, tāpēc, lai uzlabotu aizsardzību, tika nolemts ierobežot papildinājumus API līmenī. Galvenā ideja ir nodrošināt papildinājumiem piekļuvi nevis visai trafikai, bet tikai tiem datiem, kas nepieciešami iecerētās funkcionalitātes ieviešanai. Jo īpaši, lai bloķētu saturu, nav nepieciešams piešķirt papildinājumam pilnīgu piekļuvi visiem konfidenciālajiem lietotāja datiem;
  • Ierosinātā nomaiņa deklaratīvā API deklaratīvaisNetRequest rūpējas par visu augstas veiktspējas satura filtrēšanas darbu un ir nepieciešami tikai papildinājumi, lai ielādētu filtrēšanas noteikumus. Papildinājums nevar traucēt trafiku, un lietotāja privātie dati paliek neaizskarami;
  • Google ņēma vērā daudzus komentārus par deklaratīvās NetRequest API funkcionalitātes trūkumu un paplašināja filtrēšanas kārtulu skaita ierobežojumu no sākotnēji ierosinātajiem 30 tūkstošiem vienam paplašinājumam līdz globālajam maksimumam 150 tūkstošiem, kā arī pievienoja iespēju dinamiski mainīt un pievienot noteikumus, noņemt un aizstāt HTTP galvenes (Referer, Cookie, Set-Cookie) un pieprasīt parametrus;
  • Uzņēmumiem ir iespējams izmantot webRequest API darbības bloķēšanas režīmu, jo pievienojumprogrammu lietošanas politiku nosaka administrators, kurš izprot infrastruktūras iespējas un apzinās riskus. Piemēram, norādīto API var izmantot uzņēmumos, lai reģistrētu darbinieku trafika plūsmas un integrētos ar iekšējām sistēmām;
  • Google mērķis nav apdraudēt vai apspiest reklāmu bloķēšanas papildinājumus, bet gan dot iespēju izveidot drošākus un jaudīgākus reklāmu bloķētājus;
  • Nevēlēšanās pamest webRequest API darbības bloķēšanas režīmu kopā ar jauno deklaratīvo NetRequest tiek skaidrota ar vēlmi ierobežot pievienojumprogrammu piekļuvi konfidenciāliem datiem. Ja atstāsit webRequest API tādu, kāda tā ir, lielākā daļa papildinājumu neizmantos drošāku deklaratīvo NetRequest, jo, izvēloties starp drošību un funkcionalitāti, lielākā daļa izstrādātāju parasti izvēlas funkcionalitāti.

Iebildumi izstrādātājiem papildinājumiem:

  • Vada papildinājumu izstrādātāji testus uzrāda nenozīmīgu kopējo ietekmi uz reklāmu bloķēšanas papildinājumu veiktspēju (testēšanas laikā tika salīdzināta dažādu papildinājumu veiktspēja, taču neņemot vērā papildu procesa izmaksas, kas koordinē apdarinātāju izpildi bloķēšanas režīmā webRequest API);
  • Nav praktiski pilnībā pārtraukt atbalstīt API, kas tiek aktīvi izmantota papildinājumos. Tā vietā, lai to noņemtu, varat pievienot atsevišķu atļauju un stingri kontrolēt tās izmantošanas atbilstību papildinājumos, kas ļautu daudzu populāru papildinājumu autoriem pilnībā pārstrādāt savus produktus un izvairīties no funkcionalitātes samazināšanas;
  • Lai samazinātu pieskaitāmās izmaksas, jūs nevarat izdzēst API, bet pārtaisīt to, pamatojoties uz Promise mehānismu, līdzīgi kā WebRequest ieviešanā pārlūkprogrammā Firefox;
  • Piedāvātā alternatīva deklaratīvais NetRequest neaptver visas pievienojumprogrammu izstrādātāju vajadzības attiecībā uz reklāmu bloķēšanu un drošību/privātumu, jo tā nenodrošina pilnīgu kontroli pār tīkla pieprasījumiem, neļauj izmantot pielāgotus filtrēšanas algoritmus un neļauj. sarežģītu noteikumu izmantošana, kas pārklājas viens ar otru atkarībā no apstākļiem;
  • Pašreizējā declarativeNetRequest API stāvoklī nav iespējams atjaunot esošo uBlock Origin un uMatrix papildinājumu funkcionalitāti nemainīgu, kā arī padara bezjēdzīgu turpmāku Chrome NoScript porta attīstību;
  • Bažas par privātumu ir tālas, jo webRequest API tikai lasāmais, nebloķējošais režīms ir atstāts vietā un joprojām ļauj ļaunprātīgiem papildinājumiem kontrolēt visu trafiku, bet nenodrošina iespēju to traucēt lidot (mainīt saturu, ievietot savus sludinājumus, palaist ogļračus un analizēt ievades veidlapu saturu var izmantot pēc lapas ielādes pabeigšanas);
  • Pārlūkprogrammu izstrādātāji Drosmīgs, Opera и Vivaldi, kuru pamatā ir Chromium dzinējs, savos produktos plāno atstāt WebRequest bloķēšanas režīma atbalstu.

Avots: opennet.ru

Pievieno komentāru