Google ได้เปิดตัวเว็บเบราว์เซอร์ Chrome 101 ในขณะเดียวกันก็มีโครงการ Chromium ฟรีที่เสถียรซึ่งทำหน้าที่เป็นพื้นฐานของ Chrome วางจำหน่ายแล้ว เบราว์เซอร์ Chrome แตกต่างจาก Chromium ในการใช้โลโก้ Google, การมีระบบสำหรับส่งการแจ้งเตือนในกรณีที่เกิดข้อขัดข้อง, โมดูลสำหรับการเล่นเนื้อหาวิดีโอที่มีการป้องกันการคัดลอก (DRM), ระบบสำหรับการติดตั้งการอัปเดตอัตโนมัติ, เปิดใช้งานการแยก Sandbox อย่างถาวร จัดหาคีย์ให้กับ Google API และส่ง RLZ- เมื่อค้นหา พารามิเตอร์ สำหรับผู้ที่ต้องการเวลาเพิ่มเติมในการอัปเดต จะมีสาขา Extended Stable แยกต่างหาก ตามมาด้วย 8 สัปดาห์ ซึ่งเป็นรูปแบบการอัปเดตเป็น Chrome 100 รุ่นก่อนหน้า Chrome 102 รุ่นถัดไปมีกำหนดในวันที่ 24 พฤษภาคม

การเปลี่ยนแปลงที่สำคัญใน Chrome 101:

  • เพิ่มฟังก์ชันการค้นหาด้านข้างซึ่งทำให้สามารถดูผลการค้นหาในแถบด้านข้างพร้อมกับดูหน้าอื่นได้พร้อมกัน (ในหน้าต่างเดียวคุณสามารถดูทั้งเนื้อหาของหน้าและผลลัพธ์ของการเข้าถึงเครื่องมือค้นหาได้พร้อมกัน) หลังจากไปที่ไซต์จากหน้าเว็บที่มีผลการค้นหาใน Google ไอคอนที่มีตัวอักษร "G" จะปรากฏที่ด้านหน้าช่องป้อนข้อมูลในแถบที่อยู่ เมื่อคุณคลิกที่มัน แผงด้านข้างจะเปิดขึ้นพร้อมผลลัพธ์ของรายการก่อนหน้า ดำเนินการค้นหา ตามค่าเริ่มต้น ฟังก์ชันนี้ไม่ได้เปิดใช้งานในทุกระบบ หากต้องการเปิดใช้งาน คุณสามารถใช้การตั้งค่า “chrome://flags/#side-search”
    Chrome รุ่น 101
  • แถบที่อยู่ของแถบอเนกประสงค์ใช้การแสดงผลเนื้อหาของคำแนะนำที่นำเสนอในขณะที่คุณพิมพ์ล่วงหน้า ก่อนหน้านี้ เพื่อเร่งการเปลี่ยนจากแถบที่อยู่ คำแนะนำที่เป็นไปได้มากที่สุดสำหรับการเปลี่ยนจึงถูกโหลดโดยไม่ต้องรอให้ผู้ใช้คลิก โดยใช้การดึงข้อมูลล่วงหน้า ตอนนี้ นอกเหนือจากการโหลดแล้ว ยังแสดงผลในบัฟเฟอร์ด้วย (รวมถึงสคริปต์ที่ดำเนินการและโครงสร้าง DOM ที่ถูกสร้างขึ้น) ซึ่งช่วยให้สามารถแสดงคำแนะนำได้ทันทีหลังจากการคลิก หากต้องการควบคุมการแสดงผลแบบคาดการณ์ การตั้งค่า “chrome://flags/#enable-prerender2”, “chrome://flags/#omnibox-trigger-for-prerender2” และ “chrome://flags/#search-suggestion-for -” เป็นการแนะนำ prerender2"
  • ข้อมูลในส่วนหัว User-Agent HTTP และพารามิเตอร์ JavaScript navigator.userAgent, navigator.appVersion และ navigator.platform ถูกตัดออก ส่วนหัวประกอบด้วยข้อมูลเกี่ยวกับชื่อเบราว์เซอร์ เวอร์ชันเบราว์เซอร์ที่สำคัญ (ส่วนประกอบของเวอร์ชัน MINOR.BUILD.PATCH จะถูกแทนที่ด้วย 0.0.0) แพลตฟอร์มและประเภทอุปกรณ์ (โทรศัพท์มือถือ พีซี แท็บเล็ต) หากต้องการรับข้อมูลเพิ่มเติม เช่น เวอร์ชันที่แน่นอนและข้อมูลแพลตฟอร์มเพิ่มเติม คุณต้องใช้ User Agent Client Hints API สำหรับเว็บไซต์ที่มีข้อมูลใหม่ไม่เพียงพอและยังไม่พร้อมที่จะเปลี่ยนไปใช้ User Agent Client Hints จนถึงเดือนพฤษภาคม 2023 เว็บไซต์เหล่านั้นจะมีโอกาสคืน User Agent แบบเต็มได้
  • เปลี่ยนพฤติกรรมของฟังก์ชัน setTimeout เมื่อส่งผ่านอาร์กิวเมนต์เป็นศูนย์ ซึ่งกำหนดความล่าช้าของการโทร เริ่มตั้งแต่ Chrome 101 เมื่อระบุ “setTimeout(…, 0)” รหัสจะถูกเรียกทันที โดยไม่มีความล่าช้า 1 มิลลิวินาที ตามที่ข้อกำหนดกำหนด สำหรับการเรียก setTimeout ที่ซ้อนกันซ้ำๆ จะมีการหน่วงเวลา 4 มิลลิวินาที
  • เวอร์ชันสำหรับแพลตฟอร์ม Android รองรับการขอสิทธิ์เพื่อแสดงการแจ้งเตือน (ใน Android 13 เพื่อแสดงการแจ้งเตือน แอปพลิเคชันจะต้องมีสิทธิ์ "POST_NOTIFICATIONS" โดยที่การส่งการแจ้งเตือนจะถูกบล็อก) เมื่อเปิดตัว Chrome ในสภาพแวดล้อม Android 13 เบราว์เซอร์จะแจ้งให้คุณรับสิทธิ์การแจ้งเตือน
  • ความสามารถในการใช้ WebSQL API ในสคริปต์ของบุคคลที่สามถูกลบออกแล้ว ตามค่าเริ่มต้น การบล็อก WebSQL ในสคริปต์ที่ไม่ได้โหลดจากไซต์ปัจจุบันถูกเปิดใช้งานใน Chrome 97 แต่มีตัวเลือกให้ปิดใช้งานการทำงานนี้ Chrome 101 ลบตัวเลือกนี้ ในอนาคต เราวางแผนที่จะค่อยๆ ยุติการสนับสนุน WebSQL โดยสิ้นเชิง โดยไม่คำนึงถึงบริบทการใช้งาน ขอแนะนำให้ใช้ Web Storage และ Indexed Database API แทน WebSQL กลไก WebSQL ใช้โค้ด SQLite และผู้โจมตีสามารถใช้เพื่อใช้ประโยชน์จากช่องโหว่ใน SQLite
  • นำชื่อนโยบายองค์กรออก (chrome://policy) ที่มีข้อกำหนดที่ไม่ครอบคลุม เริ่มตั้งแต่ Chrome 86 เป็นต้นไป มีการเสนอนโยบายทดแทนสำหรับนโยบายเหล่านี้ที่ใช้คำศัพท์ที่ครอบคลุม คำศัพท์เช่น "บัญชีขาว", "บัญชีดำ", "ดั้งเดิม" และ "หลัก" ได้รับการล้างข้อมูลแล้ว ตัวอย่างเช่น นโยบาย URLBlacklist ได้รับการเปลี่ยนชื่อเป็น URLBlocklist, AutoplayWhitelist เป็น AutoplayAllowlist และ NativePrinters เป็น Printers
  • ในโหมด Origin Trials (ฟีเจอร์ทดลองที่ต้องมีการเปิดใช้งานแยกต่างหาก) การทดสอบ Federated Credential Management (FedCM) API ได้เริ่มต้นแล้วในแอสเซมบลีสำหรับแพลตฟอร์ม Android เท่านั้น ซึ่งช่วยให้คุณสร้างบริการข้อมูลระบุตัวตนแบบรวมที่รับรองความเป็นส่วนตัวและทำงานโดยไม่ต้องข้าม -กลไกการติดตามไซต์ เช่น การประมวลผลคุกกี้ของบุคคลที่สาม Origin Trial หมายถึงความสามารถในการทำงานกับ API ที่ระบุจากแอปพลิเคชันที่ดาวน์โหลดจาก localhost หรือ 127.0.0.1 หรือหลังจากการลงทะเบียนและรับโทเค็นพิเศษซึ่งใช้ได้ในระยะเวลาจำกัดสำหรับไซต์เฉพาะ
  • กลไก Priority Hints ได้รับความเสถียรและให้บริการแก่ทุกคน ช่วยให้คุณสามารถกำหนดความสำคัญของทรัพยากรที่ดาวน์โหลดโดยเฉพาะโดยการระบุแอตทริบิวต์ "ความสำคัญ" เพิ่มเติมในแท็ก เช่น iframe, img และลิงก์ แอตทริบิวต์สามารถรับค่า "อัตโนมัติ" และ "ต่ำ" และ "สูง" ซึ่งส่งผลต่อลำดับที่เบราว์เซอร์โหลดทรัพยากรภายนอก
  • เพิ่มคุณสมบัติ AudioContext.outputLatency ซึ่งคุณสามารถค้นหาข้อมูลเกี่ยวกับความล่าช้าที่คาดการณ์ไว้ก่อนเอาท์พุตเสียง (ความล่าช้าระหว่างคำขอเสียงและการเริ่มประมวลผลข้อมูลที่ได้รับโดยอุปกรณ์เอาท์พุตเสียง)
  • เพิ่มคุณสมบัติ CSS ของจานสีแบบอักษรและกฎ @font-palette-values ​​ช่วยให้คุณสามารถเลือกจานสีจากแบบอักษรสีหรือกำหนดจานสีของคุณเองได้ ตัวอย่างเช่น ฟังก์ชั่นนี้สามารถใช้เพื่อจับคู่แบบอักษรสีหรืออิโมจิกับสีของเนื้อหา หรือเพื่อเปิดใช้งานโหมดสีเข้มหรือสีอ่อนสำหรับแบบอักษร
  • เพิ่มฟังก์ชัน hwb() CSS ซึ่งเป็นวิธีการทางเลือกสำหรับการระบุสี sRGB ในรูปแบบ HWB (Hue, Whiteness, Blackness) ซึ่งคล้ายกับรูปแบบ HSL (Hue, Saturation, Lightness) แต่ง่ายกว่าสำหรับการรับรู้ของมนุษย์
  • ในเมธอด window.open() การระบุคุณสมบัติป๊อปอัปในบรรทัด windowFeatures โดยไม่ต้องกำหนดค่า (เช่น เมื่อระบุป๊อปอัปเพียงอย่างเดียวแทนที่จะเป็น popup=true) ตอนนี้ถือเป็นการเปิดใช้งานการเปิดหน้าต่างป๊อปอัปขนาดเล็ก (คล้ายกับ " popup=true") แทนที่จะกำหนดค่าเริ่มต้นเป็น "false" ซึ่งไร้เหตุผลและทำให้นักพัฒนาเข้าใจผิด
  • MediaCapabilities API ซึ่งให้ข้อมูลเกี่ยวกับความสามารถของอุปกรณ์และเบราว์เซอร์ในการถอดรหัสเนื้อหามัลติมีเดีย (ตัวแปลงสัญญาณ โปรไฟล์ อัตราบิต และความละเอียดที่รองรับ) ได้เพิ่มการรองรับสตรีม WebRTC
  • มีการเสนอ Secure Payment Confirmation API เวอร์ชันที่สาม โดยมีเครื่องมือสำหรับการยืนยันเพิ่มเติมเกี่ยวกับธุรกรรมการชำระเงินที่กำลังดำเนินการ เวอร์ชันใหม่เพิ่มการรองรับตัวระบุที่ต้องป้อนข้อมูล คำจำกัดความของไอคอนเพื่อระบุความล้มเหลวในการตรวจสอบ และคุณสมบัติ payeeName ที่เป็นตัวเลือก
  • เพิ่มวิธีการลืม() ให้กับ USBDevice API เพื่อเพิกถอนสิทธิ์ที่ผู้ใช้ให้ไว้ก่อนหน้านี้ในการเข้าถึงอุปกรณ์ USB นอกจากนี้ อินสแตนซ์ USBConfiguration, USBInterface, USBAlternateInterface และ USBEndpoint จะเท่ากันภายใต้การเปรียบเทียบที่เข้มงวด ("===" ชี้ไปที่วัตถุเดียวกัน) หากมีการส่งคืนสำหรับวัตถุ USBDevice เดียวกัน
  • มีการปรับปรุงเครื่องมือสำหรับนักพัฒนาเว็บ มีความสามารถในการนำเข้าและส่งออกการกระทำของผู้ใช้ที่บันทึกไว้ในรูปแบบ JSON (ตัวอย่าง) การคำนวณและการแสดงคุณสมบัติส่วนตัวได้รับการปรับปรุงในเว็บคอนโซลและอินเทอร์เฟซการดูโค้ด เพิ่มการรองรับการทำงานกับโมเดลสี HWB เพิ่มความสามารถในการดูเลเยอร์แบบเรียงซ้อนที่กำหนดโดยใช้กฎ @layer ในแผง CSS
    Chrome รุ่น 101

นอกเหนือจากนวัตกรรมและการแก้ไขข้อบกพร่องแล้ว เวอร์ชันใหม่ยังกำจัดช่องโหว่ 30 รายการ ช่องโหว่จำนวนมากถูกระบุอันเป็นผลมาจากการทดสอบอัตโนมัติโดยใช้เครื่องมือ AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer และ AFL ไม่พบปัญหาสำคัญที่ทำให้สามารถข้ามการป้องกันเบราว์เซอร์ทุกระดับและรันโค้ดบนระบบภายนอกสภาพแวดล้อมแซนด์บ็อกซ์ ในฐานะส่วนหนึ่งของโปรแกรมรางวัลเงินสดสำหรับการค้นพบช่องโหว่สำหรับรุ่นปัจจุบัน Google จ่ายเงินรางวัล 25 รางวัล มูลค่า 81 ดอลลาร์ (หนึ่งรางวัล $10000, รางวัล $7500 สามรางวัล, สามรางวัล $7000, หนึ่งรางวัล $6000, สองรางวัล $5000, รางวัล $2000 สี่รางวัล, รางวัลสามรางวัล $1000 และหนึ่งรางวัล $500) ขนาดของรางวัลทั้ง 6 ยังไม่ได้กำหนด

ที่มา: opennet.ru

เพิ่มความคิดเห็น