گوگل مرورگر وب کروم 133 را منتشر کرده است در همان زمان، یک نسخه پایدار از پروژه کرومیوم که اساس کروم است، در دسترس است. تفاوت مرورگر کروم با Chromium در این است که از آرمهای Google استفاده میکند، دارای سیستمی برای ارسال اعلانها در صورت خرابی است، دارای ماژولهایی برای پخش محتوای ویدیویی محافظت شده از کپی (DRM)، دارای سیستم نصب خودکار بهروزرسانی، همیشه ایزوله Sandbox را فعال میکند، کلیدهای Google API را تامین میکند و پارامترهای RLZ را هنگام جستجو ارسال میکند. برای کسانی که به زمان بیشتری برای به روز رسانی نیاز دارند، یک شاخه Extended Stable جداگانه وجود دارد که به مدت 8 هفته پشتیبانی می شود. نسخه بعدی، کروم 134، برای 4 مارس برنامه ریزی شده است.
تغییرات کلیدی در کروم 133:
- برای 1٪ از کاربران، پشتیبانی از تب های انجماد در حالت صرفه جویی انرژی فعال است. برگه هایی را که منابع CPU زیادی مصرف می کنند و بیش از 5 دقیقه مخفی شده اند به صورت خودکار مسدود می کند. برگههایی که صدا را خروجی میکنند و همچنین مربوط به مدیریت دستگاههای خارجی یا برگزاری کنفرانسهای ویدیویی و صوتی (اینگونه برگهها بر اساس دسترسی به API برای کار با USB، بلوتوث، دوربین، دستگاههای ورودی و میکروفون و همچنین سازماندهی کانال ارتباطی با استفاده از RTCDataChannel یا MediaStreamTrack تعیین میشوند) در معرض انجماد نیستند. برای کنترل فعال بودن انجماد خودکار، میتوانید از تنظیم «chrome://flags/#freezing-on-energy-saver» استفاده کنید.
- Chrome Sync از نسخههای قدیمیتر از ۴ سال Chrome پشتیبانی نمیکند. برای ذخیره اطلاعات مرتبط با حساب Google خود و همگام سازی داده های مرورگر در سیستم ها، باید حداقل از Chrome 4 استفاده کنید.
- در نسخه برای Android добавлена настройка для отключения JIT-оптимизаторов в JavaScript-движке V8. Отключение JIT может быть полезным для повышения безопасности работы с потенциально опасными web-приложениями за счёт уменьшения возможных векторов для совершения атаки. В версиях Chrome для настольных систем подобная настройка доступна на странице chrome://settings/security, начиная с выпуска Chrome 122.
- تجزیه طرحهای URL غیر خاص (که در لیست طرحهای معمولی گنجانده نشده است) با استاندارد مطابقت دارد. به عنوان مثال، URL "git://example.com/path" است.
- قابلیت های تابع CSS attr() گسترش یافته است و به شما امکان می دهد از مقادیر یک ویژگی HTML خاص در CSS استفاده کنید. قبلاً تابع attr() فقط می توانست با ویژگی "content" شبه عناصر کار کند و مقادیر را به نوع CSS تبدیل کند. "، سپس اکنون می توان آن را برای هر ویژگی CSS اعمال کرد و مقادیر را به هر نوع CSS تبدیل کرد. در مثال زیر، رنگ در ویژگی CSS "color" بر اساس تجزیه ویژگی "data-foo" مشخص شده در عنصر "div" تنظیم شده است و اگر ویژگی مشخص نشده باشد، از مقدار "red" استفاده می شود. تست کنید … div { color: attr(data-foo type( قرمز)؛ }
- پرس و جو CSS "@container scroll-state()" پیاده سازی شده است که به شما امکان می دهد وضعیت اسکرول یک منطقه را تعیین کنید. حالت های پشتیبانی شده عبارتند از: "چسبیده" - ظرف به یکی از دو طرف ناحیه اسکرول متصل است. "snapped" - ظرفی که با تراز افقی یا عمودی متصل شده است. "قابل پیمایش" - ظرفی که می توان در جهت مشخص پیمایش کرد.
- ویژگی های CSS "text-box"، "text-box-trim" و "text-box-edge" اضافه شده است تا امکان کنترل دقیق بر روی تورفتگی قبل و بعد از متن را فراهم کند. ویژگی "text-box-trim" ناحیه برش (بالا، پایین یا هر دو طرف) را مشخص می کند و "text-box-edge" نحوه برش لبه ها را مشخص می کند. ویژگی "text-box" قابلیت های "text-box-trim" و "text-box-edge" را ترکیب می کند.
- CSS شبه کلاس ":open" را اضافه کرده است تا به شما امکان می دهد عناصر را مشخص کنید و جعبه های محاوره ای باز هستند و برای عناصر و پنجره های انتخاب نشان داده شده است.
- moveBefore DOM primitive برای جابجایی یک عنصر در درخت DOM بدون تنظیم مجدد حالت آن اضافه شد.
- رابط FileSystemObserver اضافه شده است که به سایت ها اجازه می دهد تغییرات در سیستم فایل را نظارت کنند.
- متد getClientCapabilities() به PublicKeyCredential API اضافه شده است تا قابلیتهای WebAuthn را که توسط مرورگر پشتیبانی میشود مشخص شود.
- یک ویژگی pause() به شی Atomics اضافه شده است تا نشان دهد که کد منتظر انتشار یک قفل است.
- WebCrypto API پشتیبانی از طرح توافق کلید X25519 را اضافه کرده است که می تواند از طریق SubtleCrypto API (روش های generateKey، importKey، exportKey، deriveKey و deriveBits) استفاده شود.
- WebAssembly توانایی استفاده از اشاره گرهای 64 بیتی (Memory64) را معرفی می کند که به شما امکان می دهد با مناطق حافظه خطی بزرگتر از 4 گیگابایت کار کنید. این تغییر دستورالعملهای WebAssembly جدیدی اضافه نمیکند، بلکه فقط به دستورالعملهای موجود اجازه میدهد تا از فهرستهای ۶۴ بیتی برای جداول و مناطق حافظه استفاده کنند. کار در حالت Memory64 منجر به هزینه های سربار قابل توجهی می شود - بسته به نوع بار، کاهش سرعت 64٪ تا دو برابر مشاهده می شود.
- قابلیت های ابزار برای توسعه دهندگان وب گسترش یافته است. تاریخچه چت با دستیار هوش مصنوعی اکنون بین جلسات ذخیره می شود. یک پنل "What's new" با نمای کلی تغییرات در نسخه جدید اضافه شده است. قابلیت قرار دادن اسکریپت ها در لیست نادیده گرفته شده برای جلوگیری از نمایش آنها در نمودار نمایه عملکرد اضافه شده است. در پانل عملکرد، برگه Insights تصاویری را که میتوان اندازه آنها را تغییر داد برجسته میکند و تب Summary پشتهای از تماسهای جاوا اسکریپت (از جمله تماسهای ناهمزمان) را نشان میدهد.


علاوه بر نوآوری ها و رفع اشکال، نسخه جدید 12 آسیب پذیری را از بین می برد. بسیاری از آسیبپذیریها از طریق آزمایش خودکار با استفاده از ابزارهای AddressSanitizer، MemorySanitizer، Control Flow Integrity، LibFuzzer و AFL شناسایی شدند. دو مشکل بدون استفاده در موتور V8 و کتابخانه Skia به عنوان با شدت بالا رتبه بندی شده اند. هیچ مشکل مهمی شناسایی نشده است که به دور زدن تمام سطوح حفاظت مرورگر و اجرای کد در سیستم در خارج از محیط sandbox اجازه دهد. به عنوان بخشی از برنامه پرداخت پاداش نقدی برای کشف آسیبپذیریها برای نسخه فعلی، گوگل دو جایزه به مبلغ 2 دلار (یکی 9 دلار و دیگری 7000 دلاری) پرداخت کرده است. اندازه یک جایزه هنوز مشخص نشده است.
منبع: opennet.ru


