In fast jeder Version von Chrome gibt es eine beträchtliche Anzahl von Updates und Verbesserungen des Produkts, seiner Leistung und auch der Funktionen der Web-Plattform. In diesem Artikel werden die Einstellungen in Chrome 56 beschrieben, die sich am 8. Dezember in der Betaphase befinden. Diese Liste kann sich jederzeit ändern.
Unterstützung für SHA-1-Zertifikate entfernen
Der kryptografische Hash-Algorithmus SHA-1 zeigte vor mehr als elf Jahren zum ersten Mal Anzeichen von Schwachstelle. Kürzliche Untersuchungen deuten jedoch auf die unmittelbare Möglichkeit von Angriffen hin, die sich direkt auf die Integrität der Public-Key-Infrastruktur (PKI) für das Web auswirken könnten.
Um Nutzer vor solchen Angriffen zu schützen, unterstützt Chrome ab Chrome 56 keine SHA-1-Zertifikate mehr. Die stabile Version ist im Januar 2017 verfügbar. Wenn Sie eine Website mit einem solchen Zertifikat besuchen, wird eine Interstitial-Warnung angezeigt. Mehr dazu erfahren Sie im Blog zur Chrome-Sicherheit.
Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler
ECDSA-Chiffren im CBC-Modus in TLS entfernen
Die Konstruktion im CBC-Modus von TLS ist fehlerhaft, was die sichere Implementierung instabil und sehr schwierig macht. Obwohl die Verschlüsselung im CBC-Modus bei RSA immer noch weit verbreitet ist, sind sie bei ECDSA praktisch nicht vorhanden. Auch andere Browser unterstützen diese Chiffren. Wir gehen jedoch davon aus, dass das Risiko gering ist. Darüber hinaus wird ECDSA in TLS von wenigen Organisationen und in der Regel mit einer komplexeren Einrichtung verwendet (einige ältere Clients unterstützen nur RSA). Daher erwarten wir, dass ECDSA-Websites besser gepflegt werden und im Fall von Problemen schneller reagieren.
Mit TLS 1.2 wurden neue auf AEADs basierende Chiffren hinzugefügt, um diese Probleme zu vermeiden, insbesondere AES_128_GCM, AES_256_GCM oder CHACHA20_POLY1305. Obwohl dies derzeit nur für ECDSA-basierte Websites erforderlich ist, wird sie allen Administratoren empfohlen. AEAD-basierte Chiffren verbessern nicht nur die Sicherheit, sondern auch die Leistung. AES-GCM unterstützt neuere CPUs und ChaCha20-Poly1305 unterstützt schnelle Softwareimplementierungen. Währenddessen erfordern CBC-Chiffren langsame, komplexe Risikominderungen und einen PRNG-Zugriff auf jeden ausgehenden Datensatz. AEAD-basierte Chiffren sind auch eine Voraussetzung für HTTP/2- und Falschstart-Optimierungen.
Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler
Nutzergesten vom Scrollen durch Berührung entfernen
Wir haben mehrere Beispiele für schlecht geschriebene oder schädliche Anzeigen gesehen, die bei touchstart
- oder allen touchend
-Ereignissen eine Navigation durch Touch-Scrollen auslösen. Wenn durch ein Wheel-Ereignis kein Pop-up geöffnet werden kann, sollte das Scrollen durch Tippen nicht funktionieren. Dadurch können einige Szenarien beeinträchtigt werden, z. B. wenn Medien bei Berührung nicht abgespielt werden oder Pop-ups bei Berührung nicht geöffnet werden. In all diesen Fällen kann Safari keine Pop-ups mehr öffnen.
Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler
Alle Abrufe von Skripts mit ungültigen Typ-/Sprachattributen nicht zulassen
Derzeit ruft der Vorabladescanner von Chrome Elemente in <scripts>
-Elementen unabhängig vom Wert des Attributs type
oder language
ab. Das Skript wird jedoch beim Parsen nicht ausgeführt. Wenn Sie den Abruf verwerfen, haben der Vorabladescanner und der Parser die gleiche Semantik und wir initiieren keine Abrufe für Skripts, die nicht verwendet werden. Damit sollen Daten für Nutzer gespeichert werden, die Websites mit vielen benutzerdefinierten Script-Tags aufrufen, die nachbearbeitet werden (z. B. type="text/template"
).
Der Anwendungsfall für die Verwendung ungültiger Skripts an Ping-Server wird von der sendBeacon API angemessen abgedeckt.
Durch diese Änderung stimmen Chrome mit Safari überein, obwohl Firefox weiterhin Skripts anfordert, unabhängig von Typ oder Sprache.
Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler
MediaStreamTrack.getSources() entfernen
Diese Methode ist nicht mehr Teil der Spezifikation und wird von keinem anderen großen Browser unterstützt. Sie wurde durch MediaDevices.enumerateDevices()
ersetzt, das Blink seit Version 47 ohne Flags unterstützt und auch von anderen Browsern unterstützt wird. Ein Beispiel dafür sehen Sie unten. Diese hypothetische Funktion getCameras()
verwendet zuerst die Featureerkennung, um enumerateDevices()
zu finden und zu verwenden. Wenn die Featureerkennung fehlschlägt, wird in MediaStreamTrack
nach getSources()
gesucht. Wenn keine API-Unterstützung vorhanden ist, geben Sie schließlich das leere cameras
-Array zurück.
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);
}
};
Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler
CSP-Anweisung „reflektierte Xss“ entfernen
Frühe Entwürfe der Spezifikation Content Security Policy Level 2 enthielten eine reflected-xss
-Anweisung, die lediglich eine andere Syntax als den Header X-XSS-Protection
bot. Diese Anweisung wurde 2015 aus der Spezifikation entfernt, jedoch nicht vor der Implementierung in Chrome.
Diese Anweisung wird nicht mehr unterstützt.
Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler
CSP-Anweisung „referrer“ ersetzen
Mit der CSP-Anweisung referrer
konnten Websiteinhaber eine Verweisrichtlinie aus einem HTTP-Header festlegen. Diese Funktion wird nicht nur sehr wenig genutzt, sie ist auch nicht mehr Teil einer W3C-Spezifikation.
Websites, für die diese Funktion weiterhin erforderlich ist, sollten <meta name="referrer">
oder den neuen Referrer-Policy-Header verwenden.
Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler
Feld „PaymentAddress.careOf“ entfernen
Die Schnittstelle PaymentAddress
hat ein nicht standardmäßiges careOf
-Feld, das von keinem bekannten Adressstandard unterstützt wird. Das Feld careOf
ist ebenfalls nicht erforderlich. Die Felder für Empfänger und Organisation unterstützen alle erforderlichen Anwendungsfälle ausreichend. Das Hinzufügen von careOf
verursacht erhebliche Probleme in Bezug auf die Interoperabilität mit vorhandenen Adressschemas und APIs. Eine ausführlichere Beschreibung finden Sie im Vorschlag zur Entfernung von Spezifikationen auf GitHub (in englischer Sprache).
Absicht der Entfernung | Chromium-Fehler
„SVGViewElement.viewTarget“ entfernen
Das Attribut SVGViewElement.viewTarget
ist nicht Teil der Spezifikation SVG 2.0 und wird nur selten oder gar nicht verwendet. Dieses Attribut wurde in Chrome 54 eingestellt und ist nun entfernt.