Chrome 105 թողարկում

Google-ը ներկայացրել է Chrome 105 վեբ բրաուզերի թողարկումը: Միևնույն ժամանակ հասանելի է անվճար Chromium նախագծի կայուն թողարկումը, որը ծառայում է որպես Chrome-ի հիմքը: Chrome բրաուզերը Chromium-ից տարբերվում է Google-ի լոգոների օգտագործմամբ, խափանման դեպքում ծանուցումներ ուղարկելու համակարգի առկայությամբ, պատճենահանմամբ պաշտպանված վիդեո բովանդակություն (DRM) նվագարկելու մոդուլներով, թարմացումների ավտոմատ տեղադրման համակարգով, Sandbox-ի մեկուսացումը մշտապես միացնելու համար։ , բանալիներ մատակարարելով Google API-ին և որոնելիս փոխանցելով RLZ-ի պարամետրերը: Նրանց համար, ովքեր թարմացման համար ավելի շատ ժամանակ են պահանջում, Extended Stable մասնաճյուղն առանձին աջակցվում է, որին հաջորդում է 8 շաբաթ: Chrome 106-ի հաջորդ թողարկումը նախատեսված է սեպտեմբերի 27-ին:

Հիմնական փոփոխությունները Chrome 105-ում.

  • Chrome Apps-ի մասնագիտացված վեբ հավելվածների աջակցությունը դադարեցվել է, այն փոխարինվել է Progressive Web Apps (PWA) տեխնոլոգիայի և ստանդարտ Web API-ների վրա հիմնված ինքնուրույն վեբ հավելվածներով: Google-ը ի սկզբանե հայտարարել էր Chrome հավելվածներից հրաժարվելու իր մտադրության մասին դեռևս 2016 թվականին և նախատեսում էր դադարեցնել դրանց աջակցությունը մինչև 2018 թվականը, բայց հետո հետաձգեց այս ծրագիրը։ Chrome 105-ում, երբ փորձում եք տեղադրել Chrome Apps-ը, դուք նախազգուշացում կստանաք, որ դրանք այլևս չեն աջակցվի, բայց հավելվածները կշարունակեն աշխատել: Chrome 109-ում Chrome հավելվածները գործարկելու հնարավորությունը կանջատվի:
  • Տրամադրվել է լրացուցիչ մեկուսացում ցուցադրման գործընթացի համար, որը պատասխանատու է մատուցման համար: Այս գործընթացը այժմ իրականացվում է լրացուցիչ կոնտեյներով (App Container), որն իրականացվում է գոյություն ունեցող Sandbox մեկուսացման համակարգի վերևում: Եթե ​​արտապատկերման կոդի խոցելիությունը շահագործվի, ավելացված սահմանափակումները թույլ չեն տա հարձակվողին մուտք գործել ցանց՝ կանխելով ցանցի հնարավորությունների հետ կապված համակարգային զանգերի մուտքը:
  • Իրականացրել է սերտիֆիկացման մարմինների արմատային վկայագրերի սեփական միասնական պահեստավորումը (Chrome Root Store): Նոր խանութը լռելյայն դեռ միացված չէ, և մինչև ներդրման ավարտը, վկայականները կշարունակեն ստուգվել՝ օգտագործելով յուրաքանչյուր օպերացիոն համակարգի հատուկ խանութը: Փորձարկվող լուծումը հիշեցնում է Mozilla-ի մոտեցումը, որը Firefox-ի համար պահպանում է առանձին անկախ արմատային վկայագրերի պահեստ, որն օգտագործվում է որպես առաջին հղում՝ ստուգելու վկայականների վստահության շղթան HTTPS-ով կայքեր բացելիս:
  • Սկսվել են Web SQL API-ի հնազանդման նախապատրաստական ​​աշխատանքները, որը ստանդարտացված չէ, հիմնականում չի օգտագործվում և պահանջում է վերանախագծում՝ անվտանգության ժամանակակից պահանջներին համապատասխանելու համար: Chrome 105-ը թույլ չի տալիս մուտք գործել Web SQL կոդից, որը բեռնված է առանց HTTPS-ի օգտագործման, ինչպես նաև ավելացնում է DevTools-ի հնացման նախազգուշացում: Web SQL API-ն նախատեսվում է հեռացնել 2023 թվականին։ Ծրագրավորողների համար, ովքեր նման ֆունկցիոնալության կարիք ունեն, կպատրաստվի փոխարինում WebAssembly-ի հիման վրա:
  • Chrome sync-ն այլևս չի աջակցում համաժամեցումը Chrome 73-ի և ավելի վաղ թողարկումների հետ:
  • MacOS և Windows պլատֆորմների համար ներկառուցված վկայականի դիտիչը միացված է, որը փոխարինում է օպերացիոն համակարգի կողմից տրամադրվող ինտերֆեյսի զանգին: Նախկինում ներկառուցված դիտիչը օգտագործվում էր միայն Linux-ի և ChromeOS-ի համար նախատեսված կառուցվածքներում:
  • Android-ի տարբերակն ավելացնում է կարգավորումներ Թեմաներ և հետաքրքրությունների խմբի API-ն կառավարելու համար, որը խթանվում է որպես Privacy Sandbox նախաձեռնության մաս, որը թույլ է տալիս սահմանել օգտատերերի հետաքրքրությունների կատեգորիաները և օգտագործել դրանք՝ Cookie ֆայլերին հետևելու փոխարեն՝ նույնականացնելով նմանատիպ հետաքրքրություններ ունեցող օգտատերերի խմբերը՝ առանց անհատի նույնականացնելու: օգտվողներ. Վերջին թողարկումում նմանատիպ կարգավորումներ են ավելացվել Linux-ի, ChromeOS-ի, macOS-ի և Windows-ի տարբերակներին:
  • Երբ դուք միացնում եք զննարկիչի առաջադեմ պաշտպանությունը (Ապահով դիտում > Ընդլայնված պաշտպանություն), հեռաչափությունը հավաքվում է տեղադրված հավելումների, API-ի հասանելիության և արտաքին կայքերի հետ կապերի վերաբերյալ: Այս տվյալներն օգտագործվում են Google-ի սերվերներում՝ դիտարկիչի հավելումների կողմից վնասակար գործողությունները և կանոնների խախտումը հայտնաբերելու համար:
  • Հնացած է և կարգելափակի ոչ ASCII նիշերի օգտագործումը Chrome 106-ի Cookie-ի վերնագրում նշված տիրույթներում (IDN տիրույթների համար տիրույթները պետք է լինեն punycode ձևաչափով): Փոփոխությունը բրաուզերը համապատասխանեցնելու է RFC 6265bis-ին և Firefox-ում ներդրված վարքագծին:
  • Առաջարկվել է Custom Highlight API, որը նախատեսված է կամայականորեն փոխելու տեքստի ընտրված հատվածների ոճը և թույլ է տալիս չսահմանափակվել զննարկիչի կողմից ընդգծված տարածքների (::ընտրություն, ::ոչ ակտիվ ընտրություն) և ընդգծված ֆիքսված ոճով: շարահյուսական սխալների (::ուղղագրական-սխալ, ::քերականական- սխալ): API-ի առաջին տարբերակը ապահովում էր տեքստի և ֆոնի գույների փոփոխման աջակցություն՝ օգտագործելով գույնի և ֆոնի գույնի կեղծ տարրերը, սակայն ապագայում կավելացվեն ոճավորման այլ տարբերակներ:

    Որպես նոր API-ի միջոցով լուծվող առաջադրանքների օրինակ՝ նշվում է վեբ շրջանակների ավելացումը, որոնք ապահովում են տեքստի խմբագրման գործիքներ, սեփական տեքստի ընտրության մեխանիզմներ, տարբեր ընդգծումներ մի քանի օգտատերերի կողմից միաժամանակյա համատեղ խմբագրման համար, որոնում վիրտուալացված փաստաթղթերում: , և ուղղագրությունը ստուգելիս սխալների նշում: Եթե ​​նախկինում ոչ ստանդարտ ընդգծում ստեղծելը պահանջում էր բարդ մանիպուլյացիաներ DOM ծառի հետ, ապա Custom Highlight API-ն ապահովում է պատրաստի գործողություններ՝ շեշտադրումներ ավելացնելու և հեռացնելու համար, որոնք չեն ազդում DOM կառուցվածքի վրա և կիրառում են ոճեր՝ կապված Range օբյեկտների հետ:

  • Ավելացվել է «@container» հարցումը CSS-ին, որը թույլ է տալիս տարրերը ոճավորել՝ հիմնվելով մայր տարրի չափի վրա: «@container»-ը նման է «@media» հարցումներին, բայց կիրառվում է ոչ թե ամբողջ տեսանելի տարածքի չափի, այլ այն բլոկի (կոնտեյների) չափի վրա, որում տեղադրված է տարրը, որը թույլ է տալիս սահմանել ձեր սեփականը: Երեխայի տարրերի ոճի ընտրության տրամաբանությունը՝ անկախ նրանից, թե էջի կոնկրետ որտեղ է տեղադրված տարրը:
    Chrome 105 թողարկում
  • Ավելացվեց «:has()» CSS կեղծ դասը՝ ծնող տարրում երեխայի տարրի առկայությունը ստուգելու համար: Օրինակ, «p:has(span)»-ը տարածում է տարրերը , որի ներսում կա տարր .
  • Ավելացվեց HTML Sanitizer API-ն, որը թույլ է տալիս անջատել տարրերը բովանդակությունից, որոնք ազդում են ցուցադրման և կատարման վրա ելքի ընթացքում setHTML() մեթոդի միջոցով: API-ն կարող է օգտակար լինել արտաքին տվյալների մաքրման համար՝ հեռացնելու HTML պիտակները, որոնք կարող են օգտագործվել XSS գրոհներ իրականացնելու համար:
  • Հնարավոր է օգտագործել Streams API-ն (ReadableStream)՝ առբերման հարցումներ ուղարկելու համար, նախքան պատասխան մարմնի բեռնումը, այսինքն. կարող եք սկսել տվյալներ ուղարկել՝ չսպասելով էջի ստեղծման ավարտին:
  • Տեղադրված առանձին վեբ հավելվածների համար (PWA, Progressive Web App) հնարավոր է փոխել պատուհանի վերնագրի տարածքի ձևավորումը՝ օգտագործելով Window Controls Overlay բաղադրիչները, որոնք ընդլայնում են վեբ հավելվածի էկրանի տարածքը ամբողջ պատուհանի վրա և հնարավորություն են տալիս վեբ հավելվածին սովորական սեղանադիր հավելվածի տեսք տալ: Վեբ հավելվածը կարող է վերահսկել ամբողջ պատուհանի մուտքագրումը և մշակումը, բացառությամբ ստանդարտ պատուհանի կառավարման կոճակներով ծածկված բլոկի (փակել, նվազագույնի հասցնել, առավելագույնի հասցնել):
    Chrome 105 թողարկում
  • Նվիրված աշխատողներից (DedicatedWorker համատեքստում) Media Source Extensions մուտք գործելու հնարավորությունը կայունացվել է, որը կարող է օգտագործվել, օրինակ, բարելավելու մուլտիմեդիա տվյալների բուֆերային նվագարկումը` ստեղծելով MediaSource օբյեկտ առանձին աշխատողում և հեռարձակելով իր աշխատանքի արդյունքները HTMLMediaElement-ի հիմնական թեմայում:
  • Client Hints API-ում, որը մշակվում է «User-Agent» վերնագիրը փոխարինելու համար և թույլ է տալիս ընտրողաբար տրամադրել տվյալներ բրաուզերի և համակարգի որոշակի պարամետրերի (տարբերակ, հարթակ և այլն) մասին միայն սերվերի հարցումից հետո, աջակցություն Sec-ին: -CH-Viewport-Heigh հատկությունը ավելացվել է, որը թույլ է տալիս տեղեկատվություն ստանալ տեսանելի տարածքի բարձրության մասին: «Մետա» թեգում արտաքին ռեսուրսների համար Client Hints պարամետրերի սահմանման ձևաչափը փոխվել է. Նախկինում. Դարձավ՝
  • Ավելացվել է գլոբալ onbeforeinput իրադարձությունների մշակիչներ (document.documentElement.onbeforeinput) ստեղծելու հնարավորություն, որոնց միջոցով վեբ հավելվածները կարող են շրջել բլոկներում տեքստը խմբագրելիս վարքագիծը։ , և այլ տարրեր՝ «contenteditable» հատկանիշի հավաքածուով, նախքան զննարկիչը կփոխի տարրի բովանդակությունը և DOM ծառը:
  • Նավիգացիոն API-ի հնարավորություններն ընդլայնվել են՝ թույլ տալով վեբ հավելվածներին պատուհանի մեջ ընդհատել նավիգացիոն գործողությունները, սկսել անցում և վերլուծել հավելվածի հետ գործողությունների պատմությունը: Ավելացվել են նոր մեթոդներ intercept()՝ անցումը ընդհատելու համար և scroll()՝ տվյալ դիրքը ոլորելու համար:
  • Ավելացվեց Response.json() ստատիկ մեթոդը, որը թույլ է տալիս ստեղծել պատասխանի մարմին՝ հիմնված JSON տեսակի տվյալների վրա:
  • Բարելավումներ են կատարվել վեբ մշակողների համար նախատեսված գործիքներում: Վրիպազերծիչում, երբ անջատման կետը գործարկվում է, թույլատրվում է խմբագրել վերին գործառույթները փաթեթում՝ առանց վրիպազերծման նիստն ընդհատելու: Ձայնագրիչ վահանակը, որը թույլ է տալիս ձայնագրել, վերարտադրել և վերլուծել օգտատիրոջ գործողությունները էջի վրա, աջակցում է ընդմիջման կետերը, քայլ առ քայլ նվագարկումը և ձայնագրել մկնիկի վրա անցկացրած իրադարձությունները:

    LCP (ամենամեծ բովանդակությամբ ներկ) չափիչները ավելացվել են կատարողականի վահանակին՝ հայտնաբերելու ուշացումները տեսանելի տարածքում մեծ (օգտատիրոջ համար տեսանելի) տարրեր, օրինակ՝ պատկերներ, տեսանյութեր և արգելափակման տարրեր ներկայացնելիս: Elements վահանակում այլ բովանդակության վերևում ցուցադրվող վերին շերտերը նշվում են հատուկ պատկերակով: WebAssembly-ն այժմ հնարավորություն ունի բեռնել վրիպազերծման տվյալները DWARF ձևաչափով:

Բացի նորամուծություններից և սխալների շտկումից, նոր տարբերակը վերացնում է 24 խոցելիություն։ Խոցելիություններից շատերը հայտնաբերվել են ավտոմատացված թեստավորման արդյունքում՝ օգտագործելով AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer և AFL գործիքները: Չի հայտնաբերվել ոչ մի կարևոր խնդիր, որը թույլ կտա շրջանցել բրաուզերի պաշտպանության բոլոր մակարդակները և համակարգում կոդ գործարկել Sandbox միջավայրից դուրս: Որպես ընթացիկ թողարկման համար խոցելիություններ հայտնաբերելու համար դրամական պարգևներ վճարելու ծրագրի մաս՝ Google-ը վճարել է 21 պարգև՝ 60500 ԱՄՆ դոլար արժողությամբ (մեկ $10000, մեկ $9000, մեկ $7500, մեկ $7000, երկու $5000, երկու $3000 մրցանակ, չորս $2000 մրցանակ։ ) $1000 և մեկ $XNUMX բոնուս): Յոթ պարգեւների չափը դեռ որոշված ​​չէ։

Source: opennet.ru

Добавить комментарий