rootsupd.exe wird gelöscht

Mögliche Workarounds für DownloadUpdates.cmd

Postby hbuhrmester » 08.05.2015, 11:14

Ich habe in den letzen Tagen zwei mögliche Workarounds für DownloadUpdates.cmd getestet. Das Ziel ist jeweils, die Option "Verify Downloads" aktiviert zu lassen, aber eine Ausnahme für die Datei rootsupd.exe zu machen.

Der erste Workaround vergleicht einfach nur den Namen. Man ersetzt diesen Code-Block ab Zeile 1482 in der Datei DownloadUpdates.cmd:

Code: Select all
rem *** Verifying digital file signatures for %1 %2 ***
if not exist ..\bin\sigcheck.exe goto NoSigCheck
echo Verifying digital file signatures for %1 %2...
..\bin\sigcheck.exe %SIGCHK_COPT% -s ..\client\%1\%2 >"%TEMP%\sigcheck-%1-%2.txt"
for /F "tokens=1 delims=," %%i in ('%SystemRoot%\System32\findstr.exe /I "Unsigned" "%TEMP%\sigcheck-%1-%2.txt"') do (
  del %%i
  echo Warning: Deleted unsigned file %%i.
  echo %DATE% %TIME% - Warning: Deleted unsigned file %%i>>%DOWNLOAD_LOGFILE%
)


durch diesen:

Code: Select all
rem *** Verifying digital file signatures for %1 %2 ***
if not exist ..\bin\sigcheck.exe goto NoSigCheck
echo Verifying digital file signatures for %1 %2...
..\bin\sigcheck.exe %SIGCHK_COPT% -s ..\client\%1\%2 >"%TEMP%\sigcheck-%1-%2.txt"
for /F "tokens=1 delims=," %%i in ('%SystemRoot%\System32\findstr.exe /I "Unsigned" "%TEMP%\sigcheck-%1-%2.txt"') do (

  if "%%~nxi"=="rootsupd.exe" (
    echo Warning: Kept unsigned file %%i.
    echo %DATE% %TIME% - Warning: Kept unsigned file %%i>>%DOWNLOAD_LOGFILE%
  ) else (
    del %%i
    echo Warning: Deleted unsigned file %%i.
    echo %DATE% %TIME% - Warning: Deleted unsigned file %%i>>%DOWNLOAD_LOGFILE%
  )

)


Der zweite Workaround ist etwas aufwändiger: Man erstellt mit hashdeep eine zusätzliche Prüfsummendatei für bekannte, aber unsignierte Dateien. Die Prüfsummendatei heißt bei mir "hashes-known-good-files.txt" und hat den Inhalt:

Code: Select all
%%%% HASHDEEP-1.0
%%%% size,md5,sha1,sha256,filename
## Invoked from: G:\WSUS Offline Update\rootsupd 2014-11-12 unsigned
## G:\WSUS Offline Update\rootsupd 2014-11-12 unsigned> G:\wsusoffline\client\bin\hashdeep -c md5,sha1,sha256 -W hashes-known-good-files.txt -b rootsupd.exe
##
414720,22a4ac3835595d84fe5b155c1e146481,9232833004cf02135dba887d2037c4487fadd42d,d7a732a4234da5a1f703b013e90b9531efeb60c05b6ad0adf98c9f87d2087f5a,rootsupd.exe


Diese Prüfsummendatei gehört in den Ordner wsusoffline/cmd, sodass sie von DownloadUpdates.cmd direkt aufgerufen werden kann. Mit hashdeep und dem Matching-Modus kann man dann einzelne Dateien testen:

Code: Select all
rem *** Verifying digital file signatures for %1 %2 ***
if not exist ..\bin\sigcheck.exe goto NoSigCheck
echo Verifying digital file signatures for %1 %2...
..\bin\sigcheck.exe %SIGCHK_COPT% -s ..\client\%1\%2 >"%TEMP%\sigcheck-%1-%2.txt"
for /F "tokens=1 delims=," %%i in ('%SystemRoot%\System32\findstr.exe /I "Unsigned" "%TEMP%\sigcheck-%1-%2.txt"') do (

  ..\client\bin\%HASHDEEP_EXE% -k hashes-known-good-files.txt -m %%i > nul
  if errorlevel 1 (
    del %%i
    echo Warning: Deleted unsigned file %%i
    echo %DATE% %TIME% - Warning: Deleted unsigned file %%i>>%DOWNLOAD_LOGFILE%
  ) else (
    echo Warning: Kept unsigned file %%i
    echo %DATE% %TIME% - Warning: Kept unsigned file %%i>>%DOWNLOAD_LOGFILE%
  )

)


Die verwendeten hashdeep-Optionen sind -b und -m:

Code: Select all
-b    Enables bare mode. Strips any leading directory information from
      displayed filenames.  This flag may not be used  in  conjunction
      with the -l flag.

-m    Positive  matching,  requires  at  least one use of the -k flag.
      The input files are examined one at a time, and only those files
      that match the list of known hashes are output. The only accept‐
      able format for known hashes is the output of previous  hashdeep
      runs.
       If standard input is used with the -m flag, displays "stdin" if
      the input matches one of the hashes in the list of known hashes.
      If the hash does not match, the program displays no output.
       This flag may not be used in conjunction with the -x, -X, or -a
      flags.  See the section "UNICODE SUPPORT" below.



Viele Grüße
hbuhrmester
 
Posts: 525
Joined: 11.10.2013, 20:59

Re: rootsupd.exe wird gelöscht

Postby WSUSUpdateAdmin » 08.05.2015, 15:19

Vielen Dank für Deine Mühe, Hartmut,

ich hatte viel anderes Zeugs zu tun und hoffe, ich komme demnächst dazu, mich mit der (von Microsoft wohl so gewollten) Ablösung von rootsupd.exe und rvkroots.exe durch authrootstl.cab und disallowedcertstl.cab (vgl. viewtopic.php?f=3&t=4920) zu beschäftigen.

Viele Grüße und ein schönes Wochenende,
Torsten

p.S.: Siehe auch viewtopic.php?f=3&t=4942.
WSUSUpdateAdmin
Administrator
 
Posts: 2245
Joined: 07.07.2009, 14:38

Re: rootsupd.exe wird gelöscht

Postby WSUSUpdateAdmin » 25.06.2015, 13:44

Moin!

Ich habe nun (mit r667) die "unsigned"-Ausnahme für "rootsupd.exe" eingebaut und das Skript "CheckTRCerts.cmd" ersatzlos gestrichen, denn aktuelle Betriebssysteme (Vista+) sollten durch die automatische Online-Aktualisierung der Zertifikate in der Lage sein, die Prüfung durch "sigcheck.exe" auch ohne vorherige Installation der (offenbar abgekündigten) "rootsupd.exe" erfolgreich durchzuführen.

Gruß
Torsten

p.S.: Ich bin mir bewusst, dass meine Reaktionszeiten derzeit nicht so kurz sind wie in der Vergangenheit. Leider habe ich Gründe dafür.
WSUSUpdateAdmin
Administrator
 
Posts: 2245
Joined: 07.07.2009, 14:38

Re: rootsupd.exe wird gelöscht

Postby David » 02.02.2018, 16:04

Wie es aussieht, hat mich dieses Problem nun mit jahrelanger Verspätung ereilt...
In einer XP-VM muß ich vcredist2013_x86.exe installieren. Das beschwert sich mit einem Fehler 0x800b010a. Da das was mit Zertifikaten zu tun hat, wollte ich die rootsupd.exe aus einem Wsusoffline-Backup einspielen. Leider fehlt die Datei dort und ist auch bei MS nicht mehr zu finden.
Hat jemand einen Downloadlink oder könnte sie mir bitte senden? Das wäre sehr nett
David
 
Posts: 16
Joined: 11.10.2013, 14:49

Re: rootsupd.exe wird gelöscht

Postby Dalai » 02.02.2018, 17:37

@David:
Bin nicht sicher, ob das die jeweils aktuelle/letzte Version ist, aber da sie bei mir noch rumliegen, hab ich sie zu FileHorst hochgeladen (zusammen mit der rvkroots.exe): Klick. Da die Dateien digital signiert sind, sollte auch die Verifizierung kein Problem darstellen.

Die enthaltene rootsupd.exe ist vom 14.02.2014, die rvkroots.exe vom 24.03.2015.

Grüße
Dalai
Dalai
 
Posts: 1041
Joined: 12.07.2016, 21:00

Re: rootsupd.exe wird gelöscht

Postby hbuhrmester » 02.02.2018, 18:00

Die Wayback Machine auf archive.org sichert nicht nur ganze Webseiten, sondern auch einzelne Dateien.
https://web.archive.org/

Für "rootsupd.exe" gibt es zahlreiche Snapshots der beiden Originallinks.

Ursprüngliche Download-Links auf Microsoft:

http://download.windowsupdate.com/msdow ... otsupd.exe

http://download.microsoft.com/download/ ... otsupd.exe

Snapshots auf archive.org:

https://web.archive.org/web/*/http://do ... otsupd.exe

https://web.archive.org/web/*/http://do ... otsupd.exe

Die Datei rootsupd.exe hat sich seit Dezember 2014 nicht mehr geändert, und die letzten Snapshots ergeben auch auf archive.org einen Fehler 404 - File not found.

Die letzte verfügbare Version vom Dezember 2014 ist tatsächlich nicht die neueste Version - die Vorversion vom Februar 2014 hat eine höhere Versionsnummer, wenn man den tatsächlichen Inhalt der Datei untersucht. Außerdem ist die Version vom Februar 2014 digital signiert, während die Version vom Dezember 2014 unsigniert ist.
viewtopic.php?f=3&t=4820#p15361

Deshalb sollte die Version vom Februar 2014 bevorzugt werden. Sie kann über diese beiden Links gefunden werden:

https://web.archive.org/web/20141115093 ... otsupd.exe

https://web.archive.org/web/20140406002 ... otsupd.exe

Die MD5-Prüfsumme für beide Downloads ist "9909aa216b30b502f677bfff05000b0e".

Diese Links kann man auch mit wget direkt verwenden. Leider funktioniert das Timestamping nicht, weil das Original-Änderungsdatum der Dateien nicht erhalten bleibt. Es wird nur in einem X-Header angegeben, der von wget aber nicht ausgewertet wird:

Code: Select all
hb1@debian:~/Downloads$ wget --server-response https://web.archive.org/web/20141115093839/http://download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe
--2018-02-02 17:59:06--  https://web.archive.org/web/20141115093839/http://download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe
Auflösen des Hostnamens »web.archive.org (web.archive.org)« … 207.241.225.186
Verbindungsaufbau zu web.archive.org (web.archive.org)|207.241.225.186|:443 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet …
  HTTP/1.1 200 OK
  Server: Tengine/2.1.0
  Date: Fri, 02 Feb 2018 16:59:07 GMT
  Content-Type: application/octet-stream
  Transfer-Encoding: chunked
  Connection: keep-alive
  X-Archive-Orig-content-length: 459080
  X-Archive-Orig-x-cid: 2
  X-Archive-Orig-x-powered-by: ASP.NET
  X-Archive-Orig-accept-ranges: bytes
  X-Archive-Orig-server: Microsoft-IIS/7.5
  X-Archive-Orig-last-modified: Thu, 13 Feb 2014 23:09:21 GMT
  X-Archive-Orig-connection: keep-alive
  X-Archive-Orig-etag: "8026bda01029cf1:0"
  X-Archive-Orig-x-ccc: CA
  X-Archive-Orig-date: Sat, 15 Nov 2014 09:38:39 GMT
  Cache-Control: max-age=1800
  X-Archive-Guessed-Content-Type: application/x-dosexec
  Memento-Datetime: Sat, 15 Nov 2014 09:38:39 GMT
  Link: <http://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="original", <https://web.archive.org/web/timemap/link/http://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="timemap"; type="application/link-format", <https://web.archive.org/web/http://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="timegate", <https://web.archive.org/web/20030817000441/http://download.windowsupdate.com:80/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="first memento"; datetime="Sun, 17 Aug 2003 00:04:41 GMT", <https://web.archive.org/web/20140831030908/http://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="prev memento"; datetime="Sun, 31 Aug 2014 03:09:08 GMT", <https://web.archive.org/web/20141115093839/http://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="memento"; datetime="Sat, 15 Nov 2014 09:38:39 GMT", <https://web.archive.org/web/20141212230530/http://download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="next memento"; datetime="Fri, 12 Dec 2014 23:05:30 GMT", <https://web.archive.org/web/20180102001016/http://www.download.windowsupdate.com/msdownload/update/v3/static/trustedr/en/rootsupd.exe>; rel="last memento"; datetime="Tue, 02 Jan 2018 00:10:16 GMT"
  Content-Security-Policy: default-src 'self' 'unsafe-eval' 'unsafe-inline' data: blob: archive.org web.archive.org analytics.archive.org
  X-App-Server: wwwb-app19
  X-ts: ----
  X-Archive-Playback: 0
  X-location: All
  X-Page-Cache: HIT
Länge: nicht spezifiziert [application/octet-stream]
Wird in »»rootsupd.exe«« gespeichert.

rootsupd.exe            [      <=>           ] 448,32K   348KB/s    in 1,3s   

2018-02-02 17:59:09 (348 KB/s) - »rootsupd.exe« gespeichert [459080]
hbuhrmester
 
Posts: 525
Joined: 11.10.2013, 20:59

Re: rootsupd.exe wird gelöscht

Postby David » 02.02.2018, 18:05

Vielen Dank für die schnelle Hilfe! Vor allem der Hinweis auf wget ist genial. :-)
David
 
Posts: 16
Joined: 11.10.2013, 14:49

Previous

Return to Download

Who is online

Users browsing this forum: No registered users and 49 guests