![]() |
HTTPS und Zertifikate - wie mache ich es richtg?
Hallo Zusammen!
HTTPS und die dadurch gegebene Verschlüsselung des Datenverkehrs ist ja gut und schon, aber nur, wenn man auch sicher gehen kann, das es auch funktioniert. Vielleicht mache ich etwas falsch oder habe es nicht verstanden... Ich verbinde mich mit der nativen HTTP-Komponete zu einem REST Service. Im
Delphi-Quellcode:
prüfe ich, ob es überhaupt das richtige Zertifikat ist. (Sonst macht das ganze keinen Sinn)
OnValidateCertificate
Vom Zertifikat habe ich bisher immer die URL und den Issuer geprüft. (z.B. Let's Entcrypt) Leider musste ich feststellen, das wenn auf dem Kundenrechner Kaspersky installiert ist, der
Delphi-Quellcode:
"Kaspersky" lautet.
Certificate.Issuer
Eigentlich sagt mir das doch das Kaspersky hier ein Man-In-The-Middle spielt, oder? In diesem Fall kann es doch nicht mehr sicher sein... Übersehe ich etwas oder mache ich etwas falsch? Grüsse Mavarik :coder: |
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Kaspersky agiert hier als Proxy, deshalb sieht der Client das lokale Zertifikat und nicht dasjenige des Servers. Siehe z.B.
![]() |
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Zitat:
|
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Ja, im Endeffekt ist das "Man in the Middle" was Kaspersky da macht. Der Grund ist, dass sich somit der gesamte HTTPS-Traffic vom Virenscannern prüfen lässt bevor es an die Anwendung auf deinem PC weiterkommt. Ob das jetzt eine gute oder schlechte Sache ist kann ich nicht beurteilen, damit kenne ich mich nicht aus. Ich glaube mein persönlicher Geschmack wäre es nicht. Wenn du jetzt einem Virenscanner hast dem du nicht traust macht das natürlich keinen Sinn 😉
Falls du es deaktiveren möchtest: Zitat:
![]() PS: Waren Kaspersky nicht die, welche die ShadowBrokers der NSA haben auffliegen lassen? Ich glaube die beiden werden keine Freunde mehr. |
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Zitat:
Kunde: Ich kann die Software nicht installieren, da kommt immer eine Fehlermeldung: Zertifikat ungültig! Ich: Hab Sie gelesen, dass es an Ihrem Virenscanner liegt? Schalten Sie die HTTP Kontrolle bitte ab. Kunde: Nein, das mache ich auf keinen Fall das ist mir zu unsicher. Ich: Sorry dann funktioniert die Installation nicht. Kunde: Dann gebe ich die Software zurück, bitte erstatten Sie mir sofort mein Geld. Ich: Hier ist ein neuer Installer. (Der akzeptiert auch Kaspersky-Zertifikate) Kunde: Na geht doch... WTF... |
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Man könnte auch bei einem ungültigen Zertifikat den Kunden darauf hinweisen, ihm aber die Möglichkeit bieten, es auf eigene Gefahr trotzdem zu akzeptieren. Wenn man sehr freundlich ist, kann man auch einen Abschnitt in die Doku schreiben, der den Sachverhalt erklärt.
|
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Zitat:
Warum soll man eine SQL Server nicht öffentlich ins Netz hängen? Damit keiner damit Mist baut. Wenn ich aber einen REST-Service für die gleichen Funktionalitäten einsetze, möchte ich auch nicht, dass ein 3. den Traffic abhört und dann die Schnittstelle nutzt um genau das gleiche zu machen. Jetzt könnte man sagen, Kaspersky kann man vertrauen, aber wie weit soll man gehen... Fiddler sicherlich nicht. Mavarik |
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Ich verstehe noch nicht so ganz weshalb der gute Mann normal im Internetz-Surfen kann, aber deine Anwendung streikt. Hast du im Event-Handler hartkodiert dass das Zertifikat von "Lets's Encrypt" ausgestellt sein muss? Ich hätte mich auf den Boolean-Parameter "Accepted" verlassen, denn ob das ok ist oder nicht (z.B. abgelaufen oder dem Zertifikat vertraut das System nicht) prüft ja das Betriebssystem.
|
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Das Betriebssystem prüft nur, ob die Kommunikation verschlüsselt ist.
Erst mit Certificate Pinning stellt man sicher, dass man mit der bekannten Gegenseite kommuniziert. Da gibt es auf diversen Ebenen Möglichkeiten; dass es ein Zertifikat von Lets Encrypt sein muss, kann man etwa auch per DNS einstellen, dann prüft es das Betriebssystem auc. Wenn man niemanden auf der Leitung schnüffeln haben möchte, ist ein Pinning auf ein konkretes Zertifikat hilfreich. Sei es um Reverse Engineering zu erschweren oder tatsächlich Daten zu schützen. |
AW: HTTPS und Zertifikate - wie mache ich es richtg?
Danke für das Fachwort. Wenn man in der Suchmaschine seines Vertrauens nach "Certificate Pinning" sucht findet man ja doch hilfreiche Infos und Meinungen von verschiedenen Seiten. Seinen persönlichen Schluss muss man wohl selber ziehen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz