Chrome'un hemen hemen her sürümünde üründe, performansında ve Web Platformu'nun özelliklerinde çok sayıda güncelleme ve iyileştirme görüyoruz. Bu makalede, 8 Aralık itibarıyla beta sürümünde olan Chrome 56'daki desteği sonlandırma ve kaldırma işlemleri açıklanmaktadır. Bu liste herhangi bir zamanda değiştirilebilir.
SHA-1 sertifikalarına yönelik desteği kaldırma
SHA-1 kriptografik karma algoritması, ilk olarak on bir yıldan uzun bir süre önce zayıf noktaları gösterdi. Yakın zamanda yapılan araştırmalar ise web ortak anahtar altyapısının (PKI) bütünlüğünü doğrudan etkileyebilecek saldırılar olasılığına işaret ediyor.
Kullanıcıları bu tür saldırılara karşı korumak için Chrome, kararlı sürümü Ocak 2017'de olan Chrome 56'dan itibaren SHA-1 sertifikalarını artık desteklememektedir. Böyle bir sertifika kullanan bir siteyi ziyaret edildiğinde bir ara sayfa uyarısı verilir. Chrome Güvenlik Blogu'nda daha fazla ayrıntı bulabilirsiniz.
Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası
TLS'de CBC modu ECDSA şifrelerini kaldırma
TLS'nin CBC-mod yapısı hatalıdır, bu yüzden kırılgan ve güvenli bir şekilde uygulanması çok zordur. CBC modundaki şifreler RSA ile yaygın olarak kullanılmaya devam etse de ECDSA ile neredeyse yoktur. Diğer tarayıcılar bu şifreleri desteklemeye devam ettiğinden, riskin düşük olduğuna inanıyoruz. Buna ek olarak, TLS'de ECDSA birkaç kuruluş tarafından ve genellikle daha karmaşık bir kurulumla kullanılmaktadır (bazı eski istemciler yalnızca RSA'yı destekler). Bu nedenle, ECDSA sitelerinin daha iyi korunmasını ve sorun yaşandığında daha hızlı yanıt vermesini bekliyoruz.
TLS 1.2, bu sorunları önleyen AEAD'leri temel alan yeni şifreler (özellikle AES_128_GCM, AES_256_GCM veya CHACHA20_POLY1305) ekledi. Şu an için bunu yalnızca ECDSA tabanlı siteler için zorunlu kılsak da tüm yöneticiler için önerilir. AEAD tabanlı şifreler yalnızca güvenliği değil, performansı da artırır. AES-GCM, son CPU'lar için donanım desteğine sahiptir ve ChaCha20-Poly1305 hızlı yazılım uygulamalarını kabul eder. Bu arada, CBC şifreleri, her giden kayıtta yavaş ve karmaşık risk azaltma yöntemleri ve PRNG erişimi gerektirir. AEAD tabanlı şifreler de HTTP/2 ve Yanlış Başlatma optimizasyonları için ön koşuldur.
Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası
Dokunmatik kaydırmadan kullanıcı hareketlerini kaldır
touchstart
veya tüm touchend
etkinliklerinde, dokunma kaydırmalarında gezinmeyi tetikleyen kötü yazılmış veya kötü amaçlı reklamlara ilişkin birçok örnek gördük. "Tekerlek" etkinliğinde bir pop-up açılamıyorsa dokunarak kaydırma da açılmaz. Bu durum, dokunulduğunda medya oynatılmaması veya
dokunulduğunda açılmayan pop-up'lar gibi bazı senaryoları bozabilir. Safari, tüm bu senaryolarda
pop-up'ları sessizce alamıyor.
Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası
Geçersiz tür/dil özelliklerine sahip komut dosyaları için hiçbir getirme işlemine izin verme
Şu anda Chrome'un önceden yükleme tarayıcısı, type
veya language
özelliğinin değerinden bağımsız olarak <scripts>
öğelerindeki öğeleri getirmektedir, ancak komut dosyası ayrıştırıldığında yürütülmez. Getirme işleminin kullanımdan kaldırılmasıyla, ön yükleme tarayıcısı ve ayrıştırıcı aynı anlamlara sahip olacak ve kullanmayacağımız komut dosyaları için getirme işlemi başlatmayacağız. Buradaki amaç, işlenmiş (örneğin, type="text/template"
gibi) çok sayıda özel komut dosyası etiketinin bulunduğu sitelere giden kullanıcılar için veri kaydetmektir.
Sunuculara ping atmak için geçersiz komut dosyaları kullanma durumu, sendBeacon API'si kapsamındadır.
Bu değişiklik, Chrome ile Safari'yi uyumlu hale getirse de Firefox, tür veya dilden bağımsız olarak komut dosyaları istemeye devam etmektedir.
Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası
MediaStreamTrack.getSources() öğesini kaldırma
Bu yöntem artık spesifikasyonun bir parçası değildir ve başka hiçbir ana tarayıcı tarafından desteklenmemektedir. Bu sürüm, Blink'in 47 sürümünden beri bayrak olmadan ve diğer tarayıcılar tarafından da desteklenen MediaDevices.enumerateDevices()
ile değiştirilmiştir. Bunun bir örneği aşağıda gösterilmiştir. Bu varsayımsal getCameras()
işlevi, ilk olarak enumerateDevices()
öğesini bulup kullanmak için özellik algılamayı kullanır. Özellik algılama başarısız olursa MediaStreamTrack
içinde getSources()
araması yapılır. Son olarak, hiçbir türde API desteği yoksa boş cameras
dizisini döndürün.
function getCameras(camerasCallback) {
var cameras = [];
if('enumerateDevices' in navigator.mediaDevices) {
navigator.mediaDevices.enumerateDevices()
.then(function(sources) {
return sources.filter(function(source) {
return source.kind == 'videoinput'
});
})
.then(function(sources) {
sources.forEach(function(source) {
if(source.label.indexOf('facing back') >= 0) {
// move front facing to the front.
cameras.unshift(source);
}
else {
cameras.push(source);
}
});
camerasCallback(cameras);
});
}
else if('getSources' in MediaStreamTrack) {
MediaStreamTrack.getSources(function(sources) {
for(var i = 0; i < sources.length; i++) {
var source = sources[i];
if(source.kind === 'video') {
if(source.facing === 'environment') {
// cameras facing the environment are pushed to the front of the page
cameras.unshift(source);
}
else {
cameras.push(source);
}
}
}
camerasCallback(cameras);
});
}
else {
// We can't pick the correct camera because the API doesn't support it.
camerasCallback(cameras);
}
};
Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası
Yansıtılan-xss CSP yönergesini kaldır
İçerik Güvenliği Politikası Düzey 2 spesifikasyonunun ilk taslakları, farklı bir söz dizimi dışında X-XSS-Protection
üstbilgisinden başka hiçbir şey sunmayan bir reflected-xss
yönergesi içeriyordu. Bu yönerge 2015'te spesifikasyondan kaldırılmış, ancak Chrome'da uygulanmadan önce kaldırılmamıştır.
Bu yönergeyle ilgili destek şu anda kaldırılıyor.
Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası
CSP "yönlendiren" yönergesini değiştirin
CSP referrer
yönergesi, site sahiplerinin HTTP başlığından yönlendiren politikası belirlemesine olanak tanıyordu. Bu özellik sadece çok düşük kullanım sağlamakla kalmaz, aynı zamanda artık herhangi bir W3C spesifikasyonunda da yer almaz.
Bu işleve ihtiyaç duyan siteler, <meta name="referrer">
veya yeni Referrer-Policy üst bilgisini kullanmalıdır.
Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası
PaymentAddress.careOf alanını kaldır
PaymentAddress
arayüzünde standart olmayan bir careOf
alanı var (iyi bilinen adres standartları tarafından desteklenmez). careOf
alanı da gerekli değildir. Alıcı ve kuruluş alanları, gerekli tüm kullanım alanlarını yeterince destekler. careOf
etiketinin eklenmesi, mevcut posta adresi şemaları ve API'leriyle birlikte çalışabilme açısından önemli sorunlar oluşturur. Daha ayrıntılı bilgi için GitHub'daki özellik kaldırma teklifini okuyun.
Kaldırma Amacı | Chromium Hatası
SVGViewElement.viewTarget öğesini kaldır
SVGViewElement.viewTarget
özelliği, SVG2.0 spesifikasyonunun bir parçası değildir ve kullanımı azdır veya yoktur. Bu özellik Chrome 54'te kullanımdan kaldırıldı ve artık kaldırılmış durumda.