{"id":208298,"date":"2018-08-22T12:01:33","date_gmt":"2018-08-22T10:01:33","guid":{"rendered":"https:\/\/www.borncity.com\/blog\/?p=208298"},"modified":"2018-08-22T16:35:46","modified_gmt":"2018-08-22T14:35:46","slug":"sicherheit-microsoft-visual-c-runtime-kommt-mit-alten-wix-installern","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2018\/08\/22\/sicherheit-microsoft-visual-c-runtime-kommt-mit-alten-wix-installern\/","title":{"rendered":"Sicherheit: Microsoft Visual C++ Runtime kommt mit alten Wix-Installern und Schwachstellen"},"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\/Schutz.jpg\" width=\"40\" align=\"left\" height=\"47\"\/>[<a href=\"https:\/\/borncity.com\/win\/2018\/08\/22\/vulnerabilities-in-microsoft-visual-c-runtime\/\" target=\"_blank\">English<\/a>]Noch ein weiterer Hinweis auf Probleme mit Softwarepaketen aus dem Microsoft-Umfeld. Die von Microsoft bereitgestellten Visual C++ Runtime-Pakete werden mit veralteten Wix-Versionen zu Installer-Paketen zusammen gebaut. <\/p>\n<p><!--more--><\/p>\n<h2>Worum geht es bei&nbsp; der Visual C++ Runtime?<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/vg07.met.vgwort.de\/na\/bcac30c77bb6486cbb9a6176a82bd45b\" width=\"1\" height=\"1\"\/>F\u00fcr in Visual C++-Programme ist eine Visual C++-Laufzeitumgebung, die VC-Runtime, erforderlich. Microsoft bietet f\u00fcr Windows diverse Versionen seiner Visual C++ Runtime-Umgebung als Redistributable-Pakete an. <\/p>\n<p>Eine Aufstellung der VC-Redistributable-Versionen f\u00fcr Windows findet sich <a href=\"https:\/\/support.microsoft.com\/de-de\/help\/2977003\/the-latest-supported-visual-c-downloads\" target=\"_blank\">auf dieser Microsoft-Seite<\/a>. So weit so gut \u2013 vielleicht mal abgesehen von der Tatsache, dass es immer mal wieder \u00c4rger mit diesen Paketen gibt und dann Fehlfunktionen bei der Installation und Nutzung von Programmen gibt. <\/p>\n<h2>Wandelnde Schwachstelle Visual C++ Runtime?<\/h2>\n<p>Leider scheinen die Visual C++ Runtime-Pakete eine wandelnde Sicherheits-Baustelle zu sein. Ich bin heute <a href=\"https:\/\/twitter.com\/PhantomofMobile\/status\/1032058681708306432\" target=\"_blank\">auf Twitter<\/a> mal wieder an meine alten Beitr\u00e4ge vom Dezember 2017 erinnert worden. <\/p>\n<blockquote class=\"twitter-tweet\" data-lang=\"de\">\n<p lang=\"en\" dir=\"ltr\">The problem with C++ Redists &amp; 3rd Party security patches \u2013 I to III<\/p>\n<p>Posted on 2017-12-19 by <a href=\"https:\/\/twitter.com\/etguenni?ref_src=twsrc%5Etfw\">@etguenni<\/a><a href=\"https:\/\/t.co\/yAvtB8Ionl\">https:\/\/t.co\/yAvtB8Ionl<\/a><a href=\"https:\/\/t.co\/DDQvWwKeW2\">https:\/\/t.co\/DDQvWwKeW2<\/a><a href=\"https:\/\/t.co\/4tT7fFXoiu\">https:\/\/t.co\/4tT7fFXoiu<\/a><\/p>\n<p>\u2014 Crysta T. Lacey (@PhantomofMobile) <a href=\"https:\/\/twitter.com\/PhantomofMobile\/status\/1032058681708306432?ref_src=twsrc%5Etfw\">22. August 2018<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script> <\/p>\n<p>Nach einem Hinweis von Blog-Leser Karl hatte ich in der Artikelreihe auf potentielle Schwachstellen bei Sicherheitsupdates hingewiesen. Die deutschsprachigen Blog-Beitr\u00e4ge sind in den Artikeln verlinkt. Mit dem Tweet bekommt das Ganze m\u00f6glicherweise etwas mehr Aufmerksamkeit. <\/p>\n<p>Aber es gibt eine weitere Baustelle, die schon einige Tage bei mir als Thema schlummert und der Ver\u00f6ffentlichung harrt. Stefan Kanthak hat mich auf ein Problem und seinen Mail-Austausch mit Microsoft aufmerksam gemacht. Vor lauter Baustellen komme ich aber erst heute dazu, das aufzubereiten. <\/p>\n<h2>N\u00e4chste Baustelle Wix-Toolset f\u00fcr die vc-Installer<\/h2>\n<p>Es geht um das Wix Toolset, mit dem Microsoft seine Installer-Pakete baut. Auf der <a href=\"http:\/\/wixtoolset.org\/releases\/\" target=\"_blank\">Webseite des Anbieters<\/a> hei\u00dft es:<\/p>\n<blockquote>\n<p><strong>WiX Toolset build tools<\/strong> includes everything you need to create installations on your development and build machines.<\/p>\n<\/blockquote>\n<p><img decoding=\"async\" title=\"Wix-Toolset \" alt=\"Wix-Toolset \" src=\"https:\/\/i.imgur.com\/hlTg2FD.jpg\"\/><\/p>\n<p>Ausweislich des obigen Screenshots ist momentan das WIX Toolset v3.11.1 aktuell. Aufgefallen ist mir, dass die Webseite noch \u00fcber http angeboten wird \u2013 das Toolset selbst wird \u00fcber <a href=\"https:\/\/github.com\/wixtoolset\/wix3\/releases\/tag\/wix3111rtm\" target=\"_blank\">GitHub bereitgestellt<\/a>.&nbsp; Rob Mensching, ich meine, ein Ex-Microsoft-Mitarbeiter und Entwickler des WIX Toolset (siehe den <a href=\"https:\/\/de.wikipedia.org\/wiki\/Windows_Installer_XML\" target=\"_blank\">WikiPedia-Eintrag<\/a>), bietet auf dem <a href=\"https:\/\/marketplace.visualstudio.com\/\" target=\"_blank\">Visual Studio Market Place<\/a> die M\u00f6glichkeit, das <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=RobMensching.WixToolsetVisualStudio2017Extension\" target=\"_blank\">Wix Toolset Visual Studio 2017 Extension<\/a> f\u00fcr Visual Studio (kostenfrei) zu erwerben. <\/p>\n<h3>Microsoft nutzt WIX-Toolsets von Anno Dutt<\/h3>\n<p>Auf den <a href=\"https:\/\/support.microsoft.com\/en-us\/help\/2977003\/the-latest-supported-visual-c-downloads\" target=\"_blank\">Microsoft-Download-Seiten f\u00fcr die VC-Redistributable<\/a> kann man ja die betreffenden Pakete herunterladen. Diese wurden so vor ca. 6 Wochen aktualisiert \u2013 was zu begr\u00fc\u00dfen ist. Stefan Kanthak hat diese Pakete aber seit l\u00e4ngerem im Fokus, weil die Installer-Dateien von Microsoft mit dem WIX-Toolset erstellt werden. Das w\u00e4re erst einmal nicht schlimm. Aber es gibt 'Merkw\u00fcrdigkeiten', die ich kurz zusammen stelle:<\/p>\n<blockquote>\n<p>Die Installationspakete der VC-Redistributables vom Sommer 2018 wurden mit dem WIX Toolset Version 3.7.3813.0 (und \u00e4lter) erstellt. Bereits im Januar 2016 wurde die Version 3.10.2 des WIX-Toolset freigegeben. Bei FireGiant gibt es <a href=\"https:\/\/www.firegiant.com\/blog\/2016\/1\/20\/wix-v3.10.2-released\/\" target=\"_blank\">einen Artikel<\/a>, in dem man folgendes lesen kann: 'WiX v3.10.2 is an important security release of WiX. We encourage all users of WiX to upgrade to WiX v3.10.2.' Scheint Microsoft aber nicht zu jucken. <\/p>\n<\/blockquote>\n<p>Stefan Kanthak hat sich dann <a href=\"https:\/\/aka.ms\/vs\/15\/release\/vc_redist.x86.exe\" target=\"_blank\">diese VC-Redistributable<\/a> von Microsoft heruntergeladen und mit ein paar Tools analysiert. Hier die Ergebnisse der Inspektion:<\/p>\n<pre>Take 1:<br \/>~~~~~~~\n<p>| C:\\Users\\Stefan\\Downloads&gt;CURL.exe -q -I -L <a href=\"https:\/\/aka.ms\/vs\/15\/release\/vc_redist.x86.exe\" target=\"_blank\">https:\/\/aka.ms\/vs\/15\/release\/vc_redist.x86.exe<\/a><br \/>...<br \/>| Last-Modified: Tue, 22 May 2018 17:35:06 GMT<\/p>\n<p>The installer is quite new, published about 10 weeks ago.<\/p>\n<p><br \/>Take 2:<br \/>~~~~~~~<\/p>\n<p>| C:\\Users\\Stefan\\Downloads&gt;SIGNTOOL.exe Verify \/V vc_redist.x86.exe<br \/>...<br \/>| The signature is timestamped: Tue May 15 08:08:31 2018<\/p>\n<p>The installer was built or digitally signed about 11 weeks ago,<br \/>just one week prior to its release.<\/p>\n<p><br \/>Take 3:<br \/>~~~~~~~<\/p>\n<p>| C:\\Users\\Stefan\\Downloads&gt;FILEVER.exe \/V vc_redist.x86.exe<br \/>| --a-- W32i&nbsp;&nbsp; APP ENU&nbsp;&nbsp; 14.14.26429.4 shp 14,611,496 05-22-2018 vc_redist.x86.exe<br \/>|<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Language&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0x0409 (Englisch (USA))<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CharSet&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0x04e4 Windows, Multilingual<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OleSelfRegister Disabled<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CompanyName&nbsp;&nbsp;&nbsp;&nbsp; Microsoft Corporation<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FileDescription Microsoft Visual C++ 2017 Redistributable (x86) - 14.14.26429<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; InternalName&nbsp;&nbsp;&nbsp; setup<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; OriginalFilenam VC_redist.x86.exe<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ProductName&nbsp;&nbsp;&nbsp;&nbsp; Microsoft Visual C++ 2017 Redistributable (x86) - 14.14.26429<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ProductVersion&nbsp; 14.14.26429.4<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FileVersion&nbsp;&nbsp;&nbsp;&nbsp; 14.14.26429<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; LegalCopyright&nbsp; Copyright (c) Microsoft Corporation. All rights reserved.<\/p>\n<p><br \/>Take 4:<br \/>~~~~~~~<\/p>\n<p>| C:\\Users\\Stefan\\Downloads&gt;LINK.exe \/DUMP \/HEADERS \/DEPENDENTS vc_redist.x86.exe<br \/>...<br \/>| FILE HEADER VALUES<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 14C machine (x86)<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 7 number of sections<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 54DE53A8 time date stamp Fri Feb 13 20:42:32 2015<\/p><\/pre>\n<p>Da steckt schon Brisanz drin. Die VC-Redistributable tr\u00e4gt ein Dateidatum vom 15. Mai 2018, wurde aber am 13. Februar 2015 im Linker erstellt. Erstellt wurde die Installationsdatei mit der Laufzeitbibliothek mit dem Wix Toolset 3.7, wie in den folgenden Ausz\u00fcgen erkennbar ist:<\/p>\n<pre>Take 4, continued:<br \/>~~~~~~~~~~~~~~~~~~\n<p>| OPTIONAL HEADER VALUES<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10B magic # (PE32)<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10.00 linker version<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ~~~~~<br \/>...<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5.01 operating system version<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0.00 image version<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 5.01 subsystem version<\/p>\n<p>|&nbsp; Image has the following dependencies:<br \/>|<br \/>|&nbsp;&nbsp;&nbsp; gdiplus.dll<br \/>|&nbsp;&nbsp;&nbsp; ADVAPI32.dll<br \/>|&nbsp;&nbsp;&nbsp; USER32.dll<br \/>|&nbsp;&nbsp;&nbsp; OLEAUT32.dll<br \/>|&nbsp;&nbsp;&nbsp; GDI32.dll<br \/>|&nbsp;&nbsp;&nbsp; SHELL32.dll<br \/>|&nbsp;&nbsp;&nbsp; ole32.dll<br \/>|&nbsp;&nbsp;&nbsp; KERNEL32.dll<br \/>|&nbsp;&nbsp;&nbsp; Cabinet.dll<br \/>|&nbsp;&nbsp;&nbsp; CRYPT32.dll<br \/>|&nbsp;&nbsp;&nbsp; msi.dll<br \/>|&nbsp;&nbsp;&nbsp; RPCRT4.dll<br \/>|&nbsp;&nbsp;&nbsp; WININET.dll<br \/>|&nbsp;&nbsp;&nbsp; WINTRUST.dll<br \/>|&nbsp;&nbsp;&nbsp; VERSION.dll<\/p>\n<p>Debug Directories<br \/>|<br \/>|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Time Type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Size&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; RVA&nbsp; Pointer<br \/>|&nbsp;&nbsp;&nbsp; -------- ------ -------- -------- --------<br \/>|&nbsp;&nbsp;&nbsp; 54DE53A8 cv&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 46 00052F60&nbsp;&nbsp;&nbsp; 51760 ... E:\\delivery\\Dev\\wix37\\build\\ship\\x86\\burn.pdb<\/p><\/pre>\n<p>Ich bin da nicht so fit in der Versionierung \u2013 der Installer wurde mit Visual Studio 2010 zur Verwendung unter Windows XP und neueren Versionen erstellt. Im Februar 2015 war Windows XP aber l\u00e4ngst aus dem Support gefallen (April 2014 endete der Support). Irgendwie will Microsoft wohl noch die alte Plattform unterst\u00fctzen, stolpert aber \u00fcber die alten Probleme. <\/p>\n<p>Im Auszug sieht man zudem, dass eine ganze Sammlung an DLLs als Abh\u00e4ngigkeiten enthalten sind. Diese werden von Windows nicht als 'known DLLs' angesehen. Sprich: Bei der Installation k\u00f6nnte Malware diese Dateien im Verzeichnis mit den Installationsdateien ersetzen und sich in die Installation einklinken. Ich hatte die Problematik im Artikel <a href=\"https:\/\/borncity.com\/blog\/2018\/08\/11\/classic-shell-heit-jetzt-open-shell-men\/\">Classic Shell hei\u00dft jetzt Open-Shell-Men\u00fc<\/a> angesprochen. <\/p>\n<p>Die Liste der Probleme, die Stefan Kanthak mir geschickt hat, geht in diesem Gusto weiter \u2013 ich erspare deren Wiedergabe. Es ist eine Folge von Fehlern, die Sicherheitsl\u00fccke um Sicherheitsl\u00fccke aufrei\u00dfen. Und Microsoft verteilt das Ganze auf Millionen Windows-Maschinen. Kanthak hat versucht, Microsoft auf das Thema aufmerksam zu machen, ohne dass was passiert. Die Kollegen bei The Register haben das <a href=\"https:\/\/www.theregister.co.uk\/2018\/08\/22\/microsoft_installers_fail\/\" target=\"_blank\">gerade aufgegriffen<\/a>. Was l\u00e4uft da momentan bei Microsoft?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[English]Noch ein weiterer Hinweis auf Probleme mit Softwarepaketen aus dem Microsoft-Umfeld. Die von Microsoft bereitgestellten Visual C++ Runtime-Pakete werden mit veralteten Wix-Versionen zu Installer-Paketen zusammen gebaut.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[426],"tags":[4328,7190],"class_list":["post-208298","post","type-post","status-publish","format-standard","hentry","category-sicherheit","tag-sicherheit","tag-visual-c"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/208298","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=208298"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/208298\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=208298"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=208298"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=208298"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}