Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Signierte Datei wird von Windows trotzdem bemängelt (https://www.delphipraxis.net/194296-signierte-datei-wird-von-windows-trotzdem-bemaengelt.html)

Alfonso 7. Nov 2017 08:24

Signierte Datei wird von Windows trotzdem bemängelt
 
Hallo,

habe eine Setupdatei mit Signtool signiert. Wenn ich die Datei von einem Netzlaufwerk aufrufe, kommt richtig die Meldung "Möchten Sie zulassen ..." und als Verifizierter Herausgeber wird unsere Firma angezeigt.
Wenn ich die selbe Datei nun aus dem Internet runterlade und aus dem Downloadsordner starte, erhalte ich die Windows 10 Meldung: "Von Windows Defender Smartscreen wurde der Start einer unbekannten App verhindert ..." Unter Weitere Informationen erhalte ich den Hinweis "Unbekannter Herausgeber".

Was habe ich falsch gemacht? Ich habe ein Zertifikat extra gekauft, um genau dieses zu verhindern.

Aufruf mit: "c:\Program Files (x86)\Windows Kits\10\bin\x64\signtool.exe" sign /f "[PFAD ZUM CERT]/cert.pfx" /p [PASSWORT] /d "[PRODUKTNAME]" /du "[URL]" /n "[FIRMENNAME]" /t http://timestamp.verisign.com/scripts/timstamp.dll [PFAD DER EXE]

Bernhard Geyer 7. Nov 2017 08:30

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Die alte Signatur nach SHA1 wird nicht mehr als Sicher angesehen.
Dies ist nur nötig, wenn die Anwendung noch unter XP laufen muss und dort als sicher angesehen werden soll.

Ab Vista ist die (zusätzliche) Signierung nach SHA256 nötig:

"signtool.exe" sign /q /as /fd SHA256 /f ... http://sha256timestamp.ws.symantec.c.../timestamp/tsa ...

CCRDude 7. Nov 2017 08:48

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Darüber hinaus hilft übrigens eine Signatur mit EV-Zertifikat, um von Smartscreen besser eingestuft zu werden.

himitsu 7. Nov 2017 10:33

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Zitat von CCRDude (Beitrag 1385440)
StundeDie alte Signatur nach SHA1 wird nicht mehr als Sicher angesehen.

Soll heißen, dass Windows diese Signaturen grundsätzlich ablehnt.

Im Notfall doppelt signieren.
> SHA1 für XP
> SHA256 für neueres Windows

Bernhard Geyer 7. Nov 2017 13:17

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Zitat von himitsu (Beitrag 1385458)
Zitat:

Zitat von CCRDude (Beitrag 1385440)
StundeDie alte Signatur nach SHA1 wird nicht mehr als Sicher angesehen.

Soll heißen, dass Windows diese Signaturen grundsätzlich ablehnt.

SHA1 kann als geknackt angesehen werden.
D.h. es ist keine Sicherheitsgewinn vorhanden wenn man einer SHA1-Signatur vertrauen würde.
AFAIK lehnen auch Browser Zertifikate von Webseiten ab welche nur SHA1 verwenden würden.

sh17 7. Nov 2017 14:08

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Welcher EV-Zertifikat-Anbieter ist denn vertrauenswürdig und ist es ggf. auch noch in einem halben Jahr? Die Frage nach günstig stelle ich gar nicht erst.

Bernhard Geyer 7. Nov 2017 14:10

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Zitat von sh17 (Beitrag 1385495)
Welcher EV-Zertifikat-Anbieter ist denn vertrauenswürdig und ist es ggf. auch noch in einem halben Jahr? Die Frage nach günstig stelle ich gar nicht erst.

Gibt den diese für normale Windows-Exe-Signierung?
https://de.wikipedia.org/wiki/Extend...ion-Zertifikat

CCRDude 7. Nov 2017 16:03

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
EV gibt's auch für codesigning, ja :)

z.B. von DigiCert. Siehe auch Microsoft dazu.

Sonst würd ich's ja nicht schreiben :)
Wir verwenden eines, daher kenne ich den Unterschied im Smartscreen aus eigener Erfahrung.

Alfonso 7. Nov 2017 22:17

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Smartscreen liefert immernoch den gleichen Fehler und immernoch keinen Herausgeber.

"c:\Program Files (x86)\Windows Kits\10\bin\x64\signtool.exe" sign /as /fd SHA256 /f "D:\projekte\Zertifikat.pfx" /p xxxxxxx /d "AAAAAA" /du "http://www.test.de" /n "Test GmbH" /tr http://sha256timestamp.ws.symantec.c.../timestamp/tsa D:\projekte\svn\Installation\Output\ver_11.0.5.729 e.exe

Was läuft falsch? Ich habe ein Zertifikat von ksoftware.net.

Michael II 8. Nov 2017 19:30

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Hallo Alfonso

hast du mal versucht, deine exe mit dem von ksoftware z.V. gestellten Tool zu signieren?

Ich rufe die CMD Version von ksoftware in einem Batchfile auf:

"C:\Program Files (x86)\kSign\kSignCMD.exe" /d "<produkt>" /du <www.firma.ch> /f "<key.pfx>" /p <Passwort> "<setup.exe>"

Windows 10 akzeptiert die Signatur.

Gruss
M

CCRDude 9. Nov 2017 05:52

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Es geht hier aber nicht um Windows allgemein, sondern um SmartScreen nach einem Download!

Ein Unterschied zu meinen Signaturen sehe ich noch spontan: ich signiere mit page hashing. Das ist auch so vom Windows Logo-Programm her vorgeschrieben meine ich, insofern kann ich mir gut vorstellen, dass das auch in die Reputation einfliesst.

Sonst würde ich erst einmal in eine andere Richtung suchen: ist die Datei nach dem Download wirklich noch original? Gast Du mal Hashes verglichen? Geschaut ob die Signatur in den Dateieigenschaften als gültig angezeigt wird?

Bernhard Geyer 9. Nov 2017 07:25

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Zitat von CCRDude (Beitrag 1385728)
ich signiere mit page hashing.

Was ist das?

Zitat:

Zitat von CCRDude (Beitrag 1385728)
Sonst würde ich erst einmal in eine andere Richtung suchen: ist die Datei nach dem Download wirklich noch original? Gast Du mal Hashes verglichen? Geschaut ob die Signatur in den Dateieigenschaften als gültig angezeigt wird?

Gute Idee. Wir haben z.B. mit Firefox und Kaspersky das Problem das Downloads unvollständig sind.

CCRDude 9. Nov 2017 08:15

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Ah, ich wollte noch /ph ergänzen, habe das aber vergessen.

Page hashing meint, dass alle Speicherseiten auch einzeln signiert werden. Leider finde ich außerhalb von nicht-öffentlichen MS-Dokumenten so auf die Schnelle nichts online. Am ehesten hier:
Zitat:

Page hash enforcement verifies the signature on each page of the executable file as it loads into memory.
Da page hashing alleine nicht schadet und keinen zusätzlichen Aufwand (außer dem zusätzlich angegeben Parameter) bedeutet, verwende ich das auf jede Datei, nicht nur auf die, wo es zusammen mit force integrity Pflicht ist.

Ach ja, und spontan fällt mir auch noch signtool verify ein - was spuckt das denn zur heruntergeladenen Datei aus?

Und sagt eventuell das Event-Protokoll von Windows etwas mehr zu den Gründen aus, warum die Datei als unbekannt eingestuft wird (könnte ja sein, dass SmartScreen das dort passenderweise protokolliert)?

Bernhard Geyer 9. Nov 2017 09:30

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Zitat von CCRDude (Beitrag 1385739)
Ah, ich wollte noch /ph ergänzen, habe das aber vergessen.

Wenn das ein Parameter beim Signieren ist reicht mir das als Info.
Da kann dann mal mir "rumspielen".

Michael II 9. Nov 2017 13:29

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Es geht hier aber nicht um Windows allgemein, sondern um SmartScreen nach einem Download!
Danke Dude für deinen Hwinweis. Ich hatte das schon richtig verstanden und auch so getestet. exe signiert - auf meinen Server geladen und runtergeladen. Ich les mich nur nicht so gern und hab's deshalb etwas abgekürzt geschrieben.

Dass "Unbekannter Herausgeber" angegeben wird ist doch eher seltsam. Ich würde die auf den Webserver raufgeladene und die heruntergeladene Datei auf Gleichheit checken.

Wie erwähnt wurde: Die nötige "Reputation" in Bezug auf Smart Screen kannst du mit einem EV Zertifikat erkaufen, sonst musst du sie erarbeiten [u.a. genügend Downloads/Installationen].

Ich glaube nicht, dass /ph in deinem Fall was bringt.

Bernhard Geyer 9. Nov 2017 13:43

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Ist den das Root-Zertifikat vom Herausgeber deines Zertifikat auch Standardmäßig in Windows registriert?

CCRDude 9. Nov 2017 14:09

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Der Zusammenhang zwischen /ph und Reputation ist nur ein indirekter ;)

Hier ist eine gute Diskussion dazu - der Ansatz über WACK sollte helfen (ist aber ein echter Klotz und braucht, sich da einzuarbeiten).

Ansonsten ist die Frage von Bernhard auch noch sehr gut - ich hatte zwar in Erinnerung, dass ksoftware Comodo-Zertifikate vergibt, aber tun sie das direkt?

Alfonso 10. Nov 2017 18:17

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Ich weiss nicht was los ist, aber Windows 10 erkennt es nicht und gibt immernoch unbekannter Herausgeber. Wenn ich es direkt auf der platte aufrufe, erkennt er den Herausgeber.

mensch72 10. Nov 2017 19:24

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Zitat von Alfonso (Beitrag 1385967)
Ich weiss nicht was los ist, aber Windows 10 erkennt es nicht und gibt immernoch unbekannter Herausgeber. Wenn ich es direkt auf der platte aufrufe, erkennt er den Herausgeber.

wenn du es nicht direkt von der Platte aufrufts... wie denn dann???

Für Updates ist es definitiv zu empfehlen, mit einem eigenen vorherigem lokal signiertem Programm per eigener (INet) rein speicher basierter Downloadfunktion sich selbst alle Updatedaten von irgendwo zu holen und sie dann selbst per vom eigenem Prozess erzeugter Datei auf die loakte HD mit .xyz als Extension zu schreiben. Erst wenn komplett und CRC/Signatur selbst überprüft simmen, dann diese Datei in ".exe" umbenennen. Und man vermeide einfach "setup" oder "install" mit im Dateinamen! Dann klappt es auch mit dem "normalem" Start einer signierten Anwendung unter Windows.

Wer per z.B. Chrome per FTP/HTTP(s) eine durchaus richtig signierte EXE-Datei aus dem INet ins sagen wir ins lokale Downloadverzeichnis lädt und diese von dort umkopiert oder dort startet bekommt eine "gelbe" Warnung, wegen Dateiherkunft aus unsicherer Quelle.

Dalai 10. Nov 2017 21:14

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
@Alfonso: Was steht denn in den Eigenschaften der Datei im Register Signatur? Wieviele Signaturen sind dort zu sehen, mit welchem Typ? Sind die Signaturen gültig? Enthalten sie den erwarteten Herausgeber?

Grüße
Dalai

Alfonso 10. Nov 2017 21:21

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Liste der Anhänge anzeigen (Anzahl: 1)
Signaturgeber: COMODO SHA-256 Time Stamping Signer
(Siehe Anlage).

Die Eigenschaften sehen sowohl in der Originaldatei und auch nach dem Runterladen identisch aus.

Alfonso 10. Nov 2017 21:34

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Zitat:

Zitat von CCRDude (Beitrag 1385739)
AAch ja, und spontan fällt mir auch noch signtool verify ein - was spuckt das denn zur heruntergeladenen Datei aus?

SignTool Error: A certificate chain processed, but terminated in a root
certificate which is not trusted by the trust provider.

CCRDude 12. Nov 2017 08:36

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Da fehlt also ein /ac mit cross certificate, allerdings sehe ich keines für Comodo oder KSoftware, bei letzteren aber im Support. Ja, da steht "nur für kernel mode", aber ich habe das auch schon abseits von Treibern erlebt, dass das fehlte...

Alfonso 12. Nov 2017 08:51

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
@CCRDude: Sorry, aber ich verstehe überhaupt nicht was du schreibst. Was willst du mir sagen. Was muss ich tun?

Sherlock 13. Nov 2017 07:40

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Ich hätte ja diesem ganzen Brimborium mit Zertifikaten schon längst ein Ende bereitet. Erst kostet es, dann klappt es nicht. Moment, hab ich ja schon längst, und die Kunden akzeptieren es auch so.

Sherlock

CCRDude 14. Nov 2017 07:23

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
@Alfonso: lesen :D Hinter den Links steht ja schon einiges, die Fehlermeldung sagt auch etwas aus.

Erstmal zum verify... hast Du /pa verwendet?

Und zum /ac: besorg Dir das passende Cross-Certificate und gib es mit /ac dateiname mit in den Parametern an, damit die Kette ("chain") der Zertifikate bis zum einem vertrauenswürdigen Root runter gehen kann.

@Sherlock: es klappt eigentlich sehr zuverlässig, man muss sich nur wie bei so vielen Werkzeugen erst einmal einarbeiten ;)

Alfonso 14. Nov 2017 20:31

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Ich habe Kontakt mit kSoftware aufgenommen und einen langen Mailverkehr gehabt. Sie können es sich nicht erklären, warum der Herausgeber beim SmartScreen nicht bei mir angezeigt wird. Bei ihnen in der USA wird es auf 6 Rechner mit meiner Software korrekt angezeigt unter Windows 10.
Habt Ihr eine Idee?

Ansonsten schrieben sie:

SmartScreen is a reputation based filter/scanner so they're just seeing the new file with the new signature as new (which it is), but there is a relatively easy way around that and you only have to do it once with one signed file. All you need to do is use IE or Edge and download the untrusted file. When the SmartScreen warning comes up click “More” or “More Info” and “Run Anyway”. Do that about 10-15 times and in an hour or so after that the messages go away. Make sure you're downloading your signed file though, this only works if the downloaded file is signed. Once one of your signed files gains reputation, any other file you sign will share in that.

However, you seem to be having an additional problem in that the publisher is showing as Unknown on your PC. I've tested now on 6 PCs here running various versions of Windows and they are all showing the correct information, so I'm a bit puzzled. Do you have additional PCs with which to test

CCRDude 15. Nov 2017 08:38

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Ich kann mich nur wiederholen... ohne /pa ist es zu erwarten, dass signtool die zitierte Fehlermeldung ausspuckt!

Siehe auch Microsoft: Using SignTool to Verify a File Signature

Zitat:

SignTool verify MyControl.exe

If the preceding example fails, it could be that the signature used a code-signing certificate. SignTool defaults to the Windows driver policy for verification.

The following command verifies the signature, using the Default Authentication Verification Policy:

SignTool verify /pa MyControl.exe

philipp.hofmann 16. Feb 2019 23:54

AW: Signierte Datei wird von Windows trotzdem bemängelt
 
Kleiner Workaround: Wenn die Setup-Datei nicht mit einem EV-Zertifikat signiert ist, braucht man einige Downloads mit bestätigter Ausführung, bevor SmartScreen aufhört zu meckern und/oder die Datei bei Microsoft einreichen (https://www.microsoft.com/en-us/wdsi/filesubmission/).
Wem das zu aufwändig ist: Die signierte Setup-Datei als Zip-Datei downloadbar machen, ist ein Klick für den Kunden mehr, aber dann meckert SmartScreen nicht mehr bei Setup-Dateien mit Nicht-EV-Zertifikaten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz