Mit WordPress Version 5.2 ist eine neue Funktion verify_file_signature()
eingeführt worden, mit dem vermieden werden soll, dass dir beim Update eine manipulierte Version untergeschoben wird. Eine ausführlichere Beschreibung findest du in diesem Beitrag: https://www.heise.de/security/meldung/WordPress-5-2-sichert-Auto-Updates-durch-Signaturpruefung-4417267.html
Rufst du den Header von der Download-Datei für https://wordpress.org/wordpress-5.6.zip
ab, bekommst du aktuell mit curl -I https://wordpress.org/wordpress-5.6.zip
folgende Header angezeigt:
HTTP/1.1 200 OK
Server: nginx
Date: Sat, 12 Dec 2020 14:19:45 GMT
Content-Type: application/zip
Content-Length: 16528923
Connection: keep-alive
Cache-control: private
Content-Disposition: attachment; filename=wordpress-5.6.zip
Last-Modified: Tue, 08 Dec 2020 22:14:16 GMT
X-Frame-Options: SAMEORIGIN
Content-MD5: 0751eb2bffaa955ffa1913bcdd7e0a3c
X-nc: HIT ord 2
Accept-Ranges: bytes
Der Header Content-MD5
ist die Signatur, also ein Hashwert der zip-Datei. Ändert jemand etwas an der Datei, ändert sich die Dateigröße, was einen anderen Hashwert ergibt. Die Signaturen stimmen nicht überein.
Die Ausgabe Die Echtheit von wordpress-5.6.zip konnte nicht verifiziert werden, da keine Signatur gefunden wurde
besagt, dass dieser Header mit dem Hashwert nicht gefunden wurde. Warum das bei dir so war, kann ich dir allerdings nicht sagen.
Die Ausgabe „Die REST-API hat den Abfrageparameter *** nicht korrekt verarbeitet“ weist darauf hin, dass ein Plugin oder Theme einen REST-API-Endpunkt nicht richtig registriert hat, was wohl aktuell bei diversen Plugins erst auffällt (und vorher einfach nicht ausgegeben wurde).
Thread-Starter
pezi
(@pezi)
Ok, danke.
Habe es jetzt ein bisschen kapiert.
Und auch überprüft, mal einfach per gaijin.at Tools und im WP Archiv steht das unter https://wordpress.org/wordpress-5.6.zip.md5 auch so.
Nur wie weiß mein Update-Script welcher Wert richtig ist? Da muss ja ein Vergleich stattfinden? Wie das genau funzt kapiere ich trotz Studiums von Heise und Paragon nicht heraus.
Und: „keine Signatur gefunden“ hieße ja, wörtlich genommen, das Update hätte den Header, dessen MD 5 Zeile nicht lesen können … oder so. Seltsam…
Naja, dann hoffe ich, dass ich eine echte Kopie bekommen habe, es war ja nur ein „soft fail“ …
Nur wie weiß mein Update-Script welcher Wert richtig ist?
„Hashwert“ stimmt wohl nicht so ganz. Vielmehr wird aus dem Hashwert mit einem privaten Schlüssel eine Signatur erzeugt, die mit einem öffentlichen Schlüssel geprüft werden kann.
Und: „keine Signatur gefunden“ hieße ja, wörtlich genommen, das Update hätte den Header, dessen MD 5 Zeile nicht lesen können … oder so.
Ja, genau. Bei der Umsetzung scheint es wohl (noch?) nicht ganz rund zu laufen.
Thread-Starter
pezi
(@pezi)
Ok, verstehe …
Anm.: lt. Update Dialog (bei den weiteren Updates der restlichen Sites) sah ich, das eigentlich von https://downloads.wordpress.org/release/de_DE/wordpress-5.6.zip geladen wird.
Was einen anderen MD5 Wert gibt, weils eine andere, neuere zip Datei lädt.
Aber jedes Mal wieder die Meldung mit Echtheit und Signatur …
Kopfzeilen von https://wordpress.org/wordpress-5.6.zip: (Auszug der Unterschiede)
Content-Length: 16528923
Content-Disposition: attachment; filename=wordpress-5.6.zip
Last-Modified: Tue, 08 Dec 2020 22:14:16 GMT
Content-MD5: 0751eb2bffaa955ffa1913bcdd7e0a3c
X-nc: EXPIRED ord 1
Kopfzeilen von https://downloads.wordpress.org/release/de_DE/wordpress-5.6.zip: (Auszug der Unterschiede)
Content-Length: 18981179
Connection: close
Cache-control: private
Content-Disposition: attachment; filename=wordpress-5.6-de_DE.zip
Last-Modified: Wed, 09 Dec 2020 00:03:25 GMT
Content-MD5: 0432d51557aba0680883e651822bec6e
X-nc: HIT ord 8
Thread-Starter
pezi
(@pezi)
Nachtrag:
Website Zustand (mit aktivem Health Check) -> Werkzeuge -> Datei-Integrität meint: „Alle Dateien haben den Test bestanden. Alles scheint in Ordnung zu sein!“
Na dann sag ich mal gelöst dazu.