Kurze Information für Blog-Leser mit Systemen, in denen eine Intel iCore CPU ab 10. Generation verbaut ist. Stefan Kanthak sucht Freiwillige, die einen Test mit diesen Prozessoren durchführen. Es geht um die Beurteilung, ob die SHA 256-Berechnung der CPUs, die auf verschiedenen Wegen möglich ist, Geschwindigkeitsunterschiede aufweist.
Anzeige
Sicherheits-Experte Stefan Kanthak hatte mich bereits zum 20. April 2024 per E-Mail kontaktiert und gefragt, ob ich ein System mit Intel iCore CPU ab der 10. Generation besitze, was ich aber verneinen musste.
Worum geht es?
Neuere Intel iCore-Prozessoren können einen SHA-256 Hash-Wert mit den dort verfügbaren "SHA New Instructions" (Intel SHA extensions) auf zwei
Wegen berechnen. Die spannende Frage ist nun, ob sich die Ausführungszeiten von Programmen, abhängig von den verwendeten Instruktionen des Prozessors, verändern.
Laut Kanthak gibt es wohl auf der Linux Kernel Crypto-Mailing List eine Diskussion zum Thema. Kanthak selbst hat damit begonnen, das Thema auf seiner Seite Implementations of FIPS-180 (Secure Hash Standard) aufzubereiten.
Hinweis: Beim Besuch der Kanthak-Seite wird unter Windows der Defender anschlagen, weil im HTML-Quellcode der Code für das Eicar-Test-Virus als Preload-Link abgelegt ist. Sollte man wissen – nicht dass das Herz zum Knie fällt, wenn die Webseite von Kanthak im Browser aufgerufen wird.
Ein Testprogramm
Da sowohl meine Wenigkeit als auch weitere angefragte Personen wohl nicht über Intel iCore CPUs ab 10. Generation verfügen, stelle ich die Information hier im Blog ein. Vielleicht möchte jemand mit entsprechender Ausstattung den Test fahren. Stefan Kanthak hat inzwischen ein Testprogramm fips-180.cmd für diesen Zweck erstellt, welches als Batch-Script hier abgerufen werden kann.
Anzeige
Das .BAT-Programm enthält ein Base-64-kodiertes CAB-Archiv, das es mittels CERTUTIL.exe dekodiert, und dann mittels EXPAND.exe in den Ordner %TMP% entpackt. Im Anschluss werden dann die entpackten sech Programme ausführt:
- cycles{32,64}.exe berechnen SHA-256 nur mit den 8 (32-bittigen) bzw. 16 (64-bittigen) "general purpose" Registern;
- {cycl,tim}es-.exe berechnen SHA-256 mit den SHA-Instruktionen in der von Intel beschriebenen (verdrehten) Befehlssequenz;
- {cycl,tim}es+.exe berechnen SHA-256 mit den SHA-Instruktionen in einer (einfacheren) Befehlssequenz.
Die Quelltexte der Programme lassen sich auf der Webseite von Kanthak unter fips-180 einsehen. Sofern jemand den Test ausführt, die (nicht in eine Datei umleitbaren) Ausgaben bitte direkt an Stefan Kanthak (kanthak at arcor.de) schicken.
Anzeige
Done
Me too
" weil im HTML-Quellcode der Code für das Eicar-Test-Virus als Preload-Link abgelegt ist. Sollte man wissen"
Immer noch. Krank… jede gescheite AV-Lösung, jeder gescheite Proxy wird die Seite nicht durchlassen. So kann man effektiv Besucher aussperren.
Also wer sowas in der Seite hat, macht das ja nicht ausversehen.
Vermutlich testet er das Browserverhalten. Mein Firefox lädt die Seite anstandslos. Der Edge meckert.
ob vor Eicar gewarnt wird oder nicht ist eine philosophische und Optimierungs Frage.
MS sagt, wir warnen erst wenn der Virus zur Ausführung gebracht werden soll.
Andere Echtzeit AV schauen sich halt immer edes Byte an, das auf die Platte geschrieben werden soll. Das kostet Zeit.
Manche gar bei jedem lesen.
Und da Eicar ein realtime exe ist, wird er nie zur Ausführung gebracht werden.
Dazu kommt noch die Frage, warum man die Datei heute scannen sollte, wenn sie erst in 4 Monaten verwendet wird und da noch mal gegen die dann aktuellen AV-signaturen geprüft wird.
Natürlich sollte eicar bei einem extra plattenscan angezeigt werden.
insofern erschließt mir nicht der Sinn, warum mal seine Webseite vor schlechten(?) AV Systemen sperren lassen sollte.
ich habe keine Info gefunden, ist aber auch den Begriffen geschuldet.
Ja vermutlich, Ist ja gut das es solche gibt. Aber warum nimmt er so eine Seite zum Verteilen von Software, wenn er doch möchte, dass die Besucher ihm helfen? (Was sie sicher nicht mehr gerne tun, wenn sie so abgecancelt werden.)
Nerz, die rätselhaften Wesen :-)
ebenfalls
eicar?
eicar ist doch tot?
Zum einen würde ein Virus in der Form nicht mehr starten können und darum zum anderen testen "Seriöse" Anti Virus Hersteller nicht mehr auf eicar.
Ich hatte das mal eingesetzt um im Rahmen eines System Tests sicherzustellen,dass die Erkennung und Benachrichtigung funktioniert.
Vor vielen Jahren schlug der Test immer fehl, weil der Hersteller des AV sagte, das so ein Virus eh nicht mehr funktioniert.
Wurde das geändert?
(Es ist natürlich Stuss, deshalb den Test zu entfernen.
Ich glaube der AV Hersteller muss MS gewesen sein.?)
Also Bitdefender Total Security macht die Seite einfach dicht ;-)
Es liegt aber glaube auch daran, dass die Seite relativ unbekannt ist…
Bitdefender macht das an sich relativ selten.
——————————————————————————————–
Infizierte Web-Ressource gefunden
Funktion:
Online-Gefahrenabwehr
Wir haben diese gefährliche Seite zu Ihrem Schutz blockiert:
https://skanthak.hier-im-netz.de/
Aufgerufen durch: brave.exe
Gefährliche Seiten versuchen, Software zu installieren, die dem Gerät schaden, personenbezogene Daten sammeln oder ohne Ihre Zustimmung aktiv werden kann.
——————————————————————————————–
—Grüße—
Wirf diese Bitdefender Total INSECURITY weit weit weg: dieser SCHROTT macht (D)ein Windows UNSICHERER und verbreitet DUMMDREISTE LÜGEN: meine WebSeiten versuchen selbstverständlich nicht "Software zu installieren, die dem Gerät schaden, personenbezogene Daten sammeln oder ohne Ihre Zustimmung aktiv werden kann."
JFTR: Brave missbraucht .NET Framework und ist daher der UNSICHERSTE Browser auf dem Markt.
erledigt
Wenn ich helfen kann…
ob vor Eicar gewarnt wird oder nicht ist eine philosophische und Optimierungs Frage.
MS sagt, wir warnen erst wenn der Virus zur Ausführung gebracht werden soll.
Andere Echtzeit AV schauen sich halt immer edes Byte an, das auf die Platte geschrieben werden soll. Das kostet Zeit.
Manche gar bei jedem lesen.
Und da Eicar ein realtime exe ist, wird er nie zur Ausführung gebracht werden.
Dazu kommt noch die Frage, warum man die Datei heute scannen sollte, wenn sie erst in 4 Monaten verwendet wird und da noch mal gegen die dann aktuellen AV-signaturen geprüft wird.
Natürlich sollte eicar bei einem extra plattenscan angezeigt werden.
insofern erschließt mir nicht der Sinn, warum mal seine Webseite vor schlechten(?) AV Systemen sperren lassen sollte.
ich habe keine Info gefunden, ist aber auch den Begriffen geschuldet.
Danke an alle "Mitspieler": die bisher eingegangenen Messwerte belegen, dass meine einfachere Befehlssequenz für SHA-256 auch auf Intel-Prozessoren NICHT langsamer als Intels verdrehte Befehlssequenz ist; auf einigen Prozessoren ist sie sogar schneller.
Hintergrund: Intel hat im Juni 2013 "SHA Extensions" alias "SHA New Instructions" genannte Maschinenbefehle zur Berechnung von SHA-1 und SHA-256 vorgestellt, inklusive komisch verdrehtem Assembler-Code; Prozessoren, die diese Maschinenbefehle kannten, haben sie "schon" 3 Jahre später vorgestellt. 2015 (also bevor Prozessoren dafür verfügbar waren) haben sie auf Basis dieses verdrehten Codes dann (angeblich optimierte) Routinen zum Linux-Kernel beigetragen. Im Juni 2023 haben sie neue Maschinenbefehle zur Berechnung von SHA-512 in zukünftigen Prozessoren angekündigt.
Aufgrund dieser Ankündigung habe ich mir im letzten Monat einige OpenSource-Implementierungen für SHA-256 angesehen: ALLE von mir gefundenen wurden dummerweise von Intels verdrehtem Code abgeleitet bzw. sind direkte Kopien davon — und keiner der VIELEN Abschreiber hat in den letzten 9 Jahren gemerkt, dass dieser Assembler-Code NICHT richtig optimiert ist, bzw. dass die Frickler bei Intel ihre eigenen Prozessoren nicht richtig programmieren können.
Daraufhin habe ich auf der Linux-Kernel-Crypto-Mailingliste einige Änderungen gezeigt, die den resultierenden Maschinen-Code 6% und den Assembler-Quellcode ca. 256 Zeilen kürzer gemacht haben.
Die letzte meiner Änderungen sollte den komisch verdrehten Code durch einfacheren Code ersetzen, wurde aber nicht angenommen, da die Linux-Kernel-Frickler meinten, der könne langsamer sein.
Ist er aber nicht, wie meine bisher nur auf AMD Ryzen erfolgten Messungen zeigen, und jetzt die auch auf Intel-Prozessoren durchgeführten Messungen bestätigt haben.
Sehr interessant. Danke.
Was für ein Aufwand doch nötig ist.
Magst Du noch einen Link geben bezüglich der Hintergründe zum eicar Test?