{"id":180345,"date":"2016-08-11T00:10:00","date_gmt":"2016-08-10T22:10:00","guid":{"rendered":"http:\/\/www.borncity.com\/blog\/?p=180345"},"modified":"2024-08-12T12:42:53","modified_gmt":"2024-08-12T10:42:53","slug":"secure-boot-durch-windows-10-anniversary-update-backdoor-ausgehebelt","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2016\/08\/11\/secure-boot-durch-windows-10-anniversary-update-backdoor-ausgehebelt\/","title":{"rendered":"Secure Boot durch Windows 10 Anniversary Update-Backdoor ausgehebelt"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" style=\"float: left; margin: 0px 10px 0px 0px; display: inline;\" src=\"https:\/\/borncity.com\/blog\/wp-content\/uploads\/2015\/01\/win102.jpg\" width=\"58\" height=\"58\" align=\"left\" \/>Microsoft hat durch ein Versehen den Secure Boot-Mechanismus von UEFI-Systemen mit einer Backdoor (Debug-Funktionen) in einer der Redstone 1 Builds (Vorbereitung zum Anniversary Update) abschaltbar gemacht. Und Versuche, das zu beheben, sind zwischenzeitlich zwei Mal gescheitert.<\/p>\n<p><!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ssl-vg03.met.vgwort.de\/na\/94368965a5114ab996477387a9702c18\" alt=\"\" width=\"1\" height=\"1\" \/>Sie k\u00f6nnen es nicht, die Leute bei Microsoft \u2013 n\u00e4mlich Secure Boot und TPM 2.0 f\u00fcr \"ihre Anwender\" zuverl\u00e4ssig verwalten. Das ist nicht meine Aussage, sondern der Standpunkt von <a href=\"https:\/\/de.wikipedia.org\/wiki\/R%C3%BCdiger_Weis\" target=\"_blank\" rel=\"noopener\">R\u00fcdiger Weis<\/a>.\u00a0 Dieser ist Mathematiker, Kryptograph und promovierter Informatiker und h\u00e4lt einen Lehrstuhl f\u00fcr Informatik an der Beuth-Hochschule f\u00fcr Technik in Berlin. Wenn Weis etwas sagt, ist das kein Gelaber eines Scriptkiddies, sondern durch Wissen und langj\u00e4hrige Erfahrungen abgedeckt.<\/p>\n<p>(Quelle: <a href=\"https:\/\/www.youtube.com\/watch?v=EzxFHZV0L2w\" target=\"_blank\" rel=\"noopener\">YouTube<\/a>)<\/p>\n<p>Das obige Video stammt von einem Vortrag, den Weis zum Thema gehalten hat (siehe auch die Artikel in der Link-Liste am Beitragsende). Die Kritik von Weis an Windows 10 richtet sich gegen die \"verpflichtenden Updates\", das Thema \"Trusted Computing\" und den Umstand, dass Microsoft das Ganze nicht im Griff habe. Weis kann einige Flops, wie den Versuch das veraltete SHA-1-Absicherungsverfahren rauszuwerfen, vorweisen, bei dem mal eben der Dual-Boot f\u00fcr Linux zerschossen und die Privateinstellungen der Nutzer ruiniert wurden. Weis spricht von handwerklichen Katastrophen \u2026<\/p>\n<h3>Secure Boot-Backdoor in Windows 10 Anniversary Update<\/h3>\n<p>Konnte man die Ausf\u00fchrungen von Weis noch als Aluhut-Tr\u00e4gertum abtun, hat Microsoft nun die n\u00e4chste Kostprobe, quasi das Gesellenst\u00fcck, abgeliefert. Bei der Entwicklung von Windows 10 Version 1607 (Anniversary Update) wurde eine sogenannte Secure Boot Policy in den Microsoft Windows-Bootloader eingebaut, die es einem Administrator auf einem System erlaubt, den Secure-Boot-Schutz (remote) zu umgehen \u2013 und aus Versehen wohl an Insider ausgerollt. Dies Policy erm\u00f6glicht beliebige eigene (aber signierte) Betriebssystem-Komponenten zu booten. Es reicht, den Code mit einer selbst erstellten Signatur zu versehen, um im Bootlader ausgef\u00fchrt zu werden. Ist f\u00fcr Frickler und Entwickler gut, aber Microsofts Idee von Secure Boot war ja eigentlich, dass nur von Microsoft signierte Codeteile geladen werden k\u00f6nnen (die Kritik aus der Linux-Community war ja, dass Microsoft alternative Betriebssysteme aussperrt).<\/p>\n<p>Dar\u00fcber m\u00fcssen wir uns nicht mehr wirklich Sorgen machen, seit der neueste Flop bekannt wurde. Sicherheitscracks haben herausgefunden, dass die Security Policy wohl eine Art Debug-Funktion ist, mit der Administratoren den Secure Boot Remote \u00fcber das Netz abschalten k\u00f6nnen (also nicht mehr in die UEFI-Funktionen des Ger\u00e4ts hinein m\u00fcssen). Bei Surfaces und Smartphones k\u00f6nnte Microsoft die Abschaltung des Secure Boot blockieren (ich habe keines dieser Ger\u00e4te, um das zu testen).<\/p>\n<h3>'Backdoor'\u00a0 \u2013 Secure Boot ausgehebelt<\/h3>\n<p>In <a href=\"http:\/\/web.archive.org\/web\/20170604013028\/https:\/\/rol.im\/securegoldenkeyboot\/\" target=\"_blank\" rel=\"noopener\">einem Blog-Beitrag<\/a> (Vorsicht, ziemlich eigenwillig in der Darstellung) beschreiben die Leute das Ganze und haben die Details zum Entsperren des Bootloaders in Phones, Tablets und anderen UEFI-Ger\u00e4ten ins Netz gestellt.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/i.imgur.com\/kjHbkJp.jpg\" \/><\/p>\n<p>Einige Medien schreiben zwar von \"golden Keys\", was aber wohl nicht stimmt. Mit der Security Policy (die Microsofts Entwickler in den Insider Preview Builds benutzten) k\u00f6nnen Dritte ihren Code beliebig signieren und dann auf den Ger\u00e4ten mit UEFI ausf\u00fchren. Der Secure Boot wird ja ausgehebelt. Der Ansatz er\u00f6ffnet die M\u00f6glichkeit, auch alternative Betriebssysteme auf Microsoft-Hardware zu frickeln.<\/p>\n<blockquote><p>Diese Policy sollte nur intern bei Microsoft Verwendung zum Testen des Codes finden, wurde aber irrt\u00fcmlich mit einer Insider Preview ausgerollt.<\/p><\/blockquote>\n<p>F\u00fcr Nutzer, die aus Sicherheitsgr\u00fcnden auf UEFI\/Secure Boot setzen, erweist sich das Ganze ein St\u00fcck wirkungslos und wirft ein Schlaglicht auf den gesamten Ansatz. Denn nat\u00fcrlich k\u00f6nnten auch Hacker und Cyber-Kriminelle sowie die Geheimdienste diese Technik verwenden. Ist zwar nicht mehr so ganz einfach, weil Microsoft versucht, diese Policy zur\u00fcckzuziehen, Aber die Geschichte geht noch weiter bzw. hat einen g\u00e4nzlich anderen Aspekt \u2026<\/p>\n<h3>Die Box der Pandora \u2013 vergebliche Versuche zum Fixen<\/h3>\n<p>Von den Hackern Slip und MY123 (im Netz als 'Sicherheitsforscher' betitelt), die den Flop entdeckten, wurde Microsofts Sicherheitsteam bereits im M\u00e4rz 2016 informiert. Der Code zum Entsperren des Secure Boot fand sich in der Redstone 1 Build 14381:<\/p>\n<blockquote><p>I saw some additional code in the load-legacy-policy function in<br \/>\nredstone 14381.rs1_release<\/p><\/blockquote>\n<p>Der lapidare Kommentar von Microsoft war (laut <a href=\"http:\/\/www.heise.de\/newsticker\/meldung\/Kardinalfehler-Microsoft-setzt-aus-Versehen-Secure-Boot-schachmatt-3291946.html\" target=\"_blank\" rel=\"noopener\">heise.de<\/a>), dass man das Problem nicht beheben wolle. Klingt logisch, denn es war ja eine \"Insider Build\" und die Funktion eigentlich nur f\u00fcr Microsofts Entwickler gedacht. [Nachtrag: Martin Geu\u00df <a href=\"http:\/\/www.drwindows.de\/content\/10713-secure-boot-backdoor-windows-10-dran.html\" target=\"_blank\" rel=\"noopener\">schreibt hier<\/a> und WinFuture <a href=\"http:\/\/winfuture.de\/news,93558.html\" target=\"_blank\" rel=\"noopener\">hier<\/a>, dass die Leute im Rahmen eines Bug Bounty Programms sp\u00e4ter sogar eine Belohnung bekommen h\u00e4tte.]\u00a0 Aber die Info zum Signieren war da schon \u00f6ffentlich. Also versuchte Microsoft das wieder zu fixen, indem die Policy als \"zur\u00fcckgezogen\" gekennzeichnet wurde. Der erste Patch kam im Juli in Form des Update MS16-094 (siehe <a href=\"https:\/\/borncity.com\/blog\/2016\/07\/12\/microsoft-patchday-updates-juli-2016\/\">Microsoft Patchday: Updates Juli 2016<\/a>, Sicherheitsupdate f\u00fcr den sicheren Start (3177404) hier im Blog). Die Hacker schreiben:<\/p>\n<blockquote><p>Anyway, MS's first patch attempt. I say \"attempt\" because it surely doesn't do anything useful. It blacklists (in boot.stl), most (not all!) of the policies.<br \/>\nNow, about boot.stl. It's a file that gets cloned to a UEFI variable only boot<br \/>\nservices can touch, and only when the boot.stl signing time is later than the<br \/>\ntime this UEFI variable was set.<\/p>\n<p>However, this is done AFTER a secure boot policy gets loaded. Redstone's<br \/>\nbootmgr has extra code to use the boot.stl in the UEFI variable to check<br \/>\npolicy revocation, but the bootmgrs of TH2 and earlier does NOT have such code.<\/p>\n<p>So, an attacker can just replace a later bootmgr with an earlier one.<\/p><\/blockquote>\n<p>Es gibt zwar Code im aktuellen Windows 10 Version 1607 Bootlader, der zur\u00fcckgezogene Policies pr\u00fcft. Ersetzt man den neuen Bootlader aus dem Anniversary Update mit einem alten Bootlader aus der erw\u00e4hnten Insider Build, klappt die Backdoor wieder.<\/p>\n<p>Beim August 2016 Patchday gab es dann MS16-100 (siehe <a href=\"https:\/\/borncity.com\/blog\/2016\/08\/09\/microsoft-patchday-updates-august-2016\/\">Microsoft Patchday: Updates August 2016<\/a>), in dem ein weiterer Versuch zum Beheben des Flops unternommen wurde. Dieser erschwert das Ausnutzen der L\u00fccke, verhindert das Ganze aber wohl nicht wirklich. Hier der Text:<\/p>\n<blockquote><p>On August 9th, 2016, another patch came about, this one was given the designation MS16-100 and CVE-2016-3320. This one updates dbx. The advisory says it revokes bootmgrs. The dbx update seems to add these SHA256 hashes (unless I screwed up my parsing)<\/p>\n<p>\u2026.<\/p>\n<p>I checked the hash in the signature of several bootmgrs of several<br \/>\narchitectures against this list, and found no matches. So either this<br \/>\nrevokes many \"obscure\" bootmgrs and bootmgfws, or I'm checking the wrong hash.<\/p>\n<p>Either way, it'd be impossible in practise for MS to revoke every bootmgr<br \/>\nearlier than a certain point, as they'd break install media, recovery partitions, backups, etc.<\/p><\/blockquote>\n<p>Und damit ist die B\u00fcchse der Pandora ge\u00f6ffnet \u2013 mit der Materie befasste Insider bezweifeln, dass sich das Problem jemals ganz fixen l\u00e4sst. Zwischenzeitlich geht die Story im Internet herum. Bei The Register als <a href=\"http:\/\/www.theregister.co.uk\/2016\/08\/10\/microsoft_secure_boot_ms16_100\/?mt=1470827608472\" target=\"_blank\" rel=\"noopener\">Bungling Microsoft singlehandedly proves that golden backdoor keys are a terrible idea<\/a>, bei ZDnet.com als <a href=\"http:\/\/www.zdnet.com\/article\/microsoft-secure-boot-key-debacle-causes-security-panic\/\" target=\"_blank\" rel=\"noopener\">Microsoft Secure Boot key debacle causes security panic<\/a> und bei heise.de gibt es den deutschsprachigen Beitrag <a href=\"http:\/\/www.heise.de\/newsticker\/meldung\/Kardinalfehler-Microsoft-setzt-aus-Versehen-Secure-Boot-schachmatt-3291946.html\" target=\"_blank\" rel=\"noopener\">Kardinalfehler: Microsoft setzt aus Versehen Secure Boot schachmatt<\/a>.<\/p>\n<h3>Erg\u00e4nzung: Das Problem verstehen<\/h3>\n<p>Im Netz finden sich diverse Artikel, die das Thema als \"Sicherheitsproblem\" verharmlosen. Daher noch eine kleine Erg\u00e4nzung, um zu verstehen, was da schief gegangen ist.<\/p>\n<p>Secure Boot wurde ja im Rahmen der UEFI-Initiative eingef\u00fchrt, um nur noch das Laden von signiertem Code zuzulassen. Die betreffende Maschine l\u00e4dt also nur Betriebssysteme oder Code, der mit von Microsoft ausgestellten Schl\u00fcsseln signiert wurde. Neben Windows 8, 8.1 und Windows 10 hat Microsoft auch Signaturschl\u00fcssel f\u00fcr Drittanbieter aus dem Linux-Umfeld freigegeben. Aber die Kontrolle, was bootbar ist, lag\/liegt bei Microsoft.<\/p>\n<p>Hintergrund f\u00fcr diese Ans\u00e4tze waren die vor Jahren aufgetauchten Root-Kits, die sich parallel zum Betriebssystem einnisteten. Das sollte sich mit Secure Boot verhindern lassen. Zus\u00e4tzlich gibt es noch TPM 2.0 (<a href=\"https:\/\/de.wikipedia.org\/wiki\/Trusted_Platform_Module\" target=\"_blank\" rel=\"noopener\">Trusted Platform Module<\/a>) zur Speicherung und Absicherung diverser, an die Maschine gebundener, Schl\u00fcssel. Microsoft macht aus diesem Grunde die Unterst\u00fctzung von TPM 2.0 bei neuer Hardware (und damit UEFI samt Secure Boot) verpflichtend (siehe mein Blog-Beitrag <a href=\"https:\/\/borncity.com\/blog\/2016\/05\/15\/windows-10-version-1607-erfordert-tpm-2-0-bei-neuer-hw\/\">Windows 10 Version 1607 erfordert TPM 2.0 bei neuer HW<\/a>).<\/p>\n<p>Zur\u00fcck zum Kern: Secure Boot l\u00e4sst sich zwar nach wie vor im UEFI abschalten, wenn ich Zugang zur Maschine habe. Setzen aber Firmen oder Anwender zur Sicherung ihrer Systeme auf Secure Boot, muss sichergestellt sein, dass dieser Mechanismus in allen F\u00e4llen zuverl\u00e4ssig funktioniert. Es darf nicht sein, dass ein falscher Key den Start eines legalen Windows (oder Betriebssystems) verhindert. Und es darf erst Recht nicht sein, dass durch irgend eine Ma\u00dfnahme der Start beliebigen Codes m\u00f6glich ist.<\/p>\n<p>Beide F\u00e4lle sind in der Vergangenheit passiert, denn Microsoft kann die zul\u00e4ssigen Schl\u00fcssel f\u00fcr Secure Boot im UEFI aktualisieren und hat nun auch den Bootlader so manipuliert, dass ein Secure Boot umgangen werden konnte. Das mag f\u00fcr Entwicklungszwecke sinnvoll sein \u2013 aber dann h\u00e4tte man ein Microsoft Entwickler-Zertifikat verwenden sollen. Der Fehler war, dass man auf selbst ausgestellte Zertifikate zum Signieren des Codes gesetzt hat.<\/p>\n<p>Mit der oben aufgef\u00fchrten Redstone 1 Insider Preview Build <em>redstone 14381.rs1_release<\/em> liegt nun ein (von Microsoft signierter) Bootlader vor, der den Secure Boot umgehen kann. Damit kann\/konnte sich also quasi jeder Entwickler zur vertrauenswerten Institution erkl\u00e4ren, deren Code mit Secure Boot ausf\u00fchrbar ist. Da hilft es nicht, sich auf den Punkt \"kann nur mit Administratorrechten ausgef\u00fchrt werden\" zur\u00fcckzuziehen. Bei fast jedem Microsoft Patchday werden \"privilege escalation\"-L\u00fccken geschlossen \u2013 also Sicherheitsl\u00fccken, die eine Rechteausweitung erm\u00f6glichen. Wer die L\u00fccken kennt, kann sich u.U. Administratorrechte verschaffen. Und die in der letzten Zeit kreisenden Erpressungstrojaner versuchten durch Aufruf der Benutzerkontensteuerung Administratorrechte anzufordern. Offenbar gibt es gen\u00fcgend Anwender, die bei der Installation einer Software genau das zulassen. Und so kommt es, dass auch Erpressungstrojaner, die den Master Boot Record austauschen, aufgefallen sind.<\/p>\n<p>Genau diese Mechanismen k\u00f6nnen nat\u00fcrlich genutzt werden, um den betreffenden Redstone 1-Bootlader auf das System zu bringen. Der Versuch, die urspr\u00fcngliche Policy, die das Laden von selbst signierendem Code zul\u00e4sst, f\u00fcr ung\u00fcltig zu erkl\u00e4ren und zur\u00fcckzuziehen, ist m\u00fchsam und wohl auch fehleranf\u00e4llig. Kern und Angelpunkt ist die Erkenntnis, dass Secure Boot nicht wirklich die Sicherheit bringt, die man sich versprochen hat (quasi eine \"Sch\u00f6nwetter-L\u00f6sung\").<\/p>\n<h3>Abschlie\u00dfende Gedanken<\/h3>\n<p>Tja, mir wirft man hier in Kommentaren schon mal eine \"Vendetta\" gegen Microsoft und Windows 10 vor und ich w\u00fcrde das alles nur schlecht schreiben. Mal abgesehen von der Tatsache, dass ich nix gegen Microsoft habe, aber als Blogger dieses und jenes halt aufspie\u00dfe: Mein Blog ist eine Nische (was kratzt es den Berg, wenn eine Ameise an diesen pisst). Da geht Microsoft auch sehr souver\u00e4n mit um \u2013 die lesen es und lassen es unkommentiert. Die 'Sargn\u00e4gel' schl\u00e4gt Microsoft schon selbst ein \u2013 und das (gef\u00fchlt) fast t\u00e4glich. Apple Insider hat dies <a href=\"http:\/\/appleinsider.com\/articles\/16\/08\/10\/oops-microsoft-leaks-its-golden-key-unlocking-windows-secure-boot-and-exposing-the-danger-of-backdoors\" target=\"_blank\" rel=\"noopener\">sch\u00f6n aufgespie\u00dft<\/a>.<\/p>\n<p>Man kann jetzt argumentieren, dass der Fehler selbst nicht so schlimm sei, weil man ja Administrator sein muss. Und es ist schon ein \"sehr spezielles Szenario\", um das auszunutzen. Und auf den meisten Maschinen l\u00e4sst sich Secure Boot ja im UEFI abschalten. Viel L\u00e4rm um nichts und alles gut?<\/p>\n<p>Imho nein, denn es geht ums Prinzip: Microsoft will die IT-Sicherheit in seine H\u00e4nde gelegt wissen. Das reicht von Clients \u00fcber Server bis zu Azure. Und dann diese Fehler, mit der mal eben die \"Chain of Trust\" geschlachtet wird. Ich hatte hier im Blog diverse Male \u00fcber Comodo berichtet, die als Zertifikats-Authority agieren wollen, sich aber einen Flop nach dem anderen leisten. Ein Notar, der st\u00e4ndig patzt ist obsolet. Und das ist der springende Punkt.<\/p>\n<p>Ist nicht wirklich Schadenfreude, mir w\u00e4re es lieber, hier berichten zu k\u00f6nnen, dass Microsoft wieder \"in der Spur l\u00e4uft\" und ein brauchbares Windows f\u00fcr Privatanwender und kleine Firmen anbietet. Leider hat man wohl im letzten Jahr ein paar Leute zu viel entlassen. Aber m\u00f6glicherweise k\u00f6nnen sich Firmen wie Microsoft, Google, Facebook zwischenzeitlich alles erlauben. Hauptsache sch\u00f6n bunt und gratis, denn folgen die Lemminge mit Begeisterung. Oder wie seht ihr das?<\/p>\n<p><strong>\u00c4hnliche Artikel:<\/strong><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2016\/01\/01\/warnung-von-botnetz-windows-10\/\">Warnung vor \"Botnetz\" Windows 10 \u2026<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2016\/04\/14\/windows-7-patchday-nachwehen-secure-boot-violation\/\">Windows 7: Patchday-Nachwehen \"Secure Boot Violation\"<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2016\/05\/15\/windows-10-version-1607-erfordert-tpm-2-0-bei-neuer-hw\/\">Windows 10 Version 1607 erfordert TPM 2.0 bei neuer HW<\/a><br \/>\nAufzeichnung \"Technical Summit 2015\" abrufbar<\/p>\n<p><a href=\"https:\/\/borncity.com\/blog\/2016\/07\/12\/microsoft-patchday-updates-juli-2016\/\">Microsoft Patchday: Updates Juli 2016<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2016\/08\/09\/microsoft-patchday-updates-august-2016\/\">Microsoft Patchday: Updates August 2016<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Microsoft hat durch ein Versehen den Secure Boot-Mechanismus von UEFI-Systemen mit einer Backdoor (Debug-Funktionen) in einer der Redstone 1 Builds (Vorbereitung zum Anniversary Update) abschaltbar gemacht. Und Versuche, das zu beheben, sind zwischenzeitlich zwei Mal gescheitert.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3694],"tags":[1463,1108,4378],"class_list":["post-180345","post","type-post","status-publish","format-standard","hentry","category-windows-10","tag-secure-boot","tag-uefi","tag-windows-10"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/180345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/comments?post=180345"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/180345\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=180345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=180345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=180345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}