Marc Haber schrieb:
>
> Manche MITM-Proxies erzeugen für jede Website ein Zertifikat mit
> passendem CN und Signatur der Proxy-CA.
OMG :-(
[ELSTER]
> Wer authentifiziert sich denn da zuerst?
Keine Ahnung. So tief steck' ich im TLS-Protokoll nicht drin.
Wenn man
openssl s_client -connect
datenannahme3.elster.de:443
macht, kriegt man aber erst mal das Serverzertifikat:
subject=/C=DE/ST=Bayern/L=M\xC3\xBCnchen/O=Bayerisches Landesamt fuer Steuern/OU=IuK 16/CN=*.
elster.de
issuer=/C=US/O=thawte, Inc./CN=thawte SSL CA - G2
und dann kommt die Info, welche CAs der Client-Zertifikate
(und welche Typen) denn so alles akzeptiert würden:
Acceptable client certificate CA names
/CN=Elster-Betrieb TLS CLIENT CA/OU=Elster/O=BayLfSt/ST=Bayern/C=DE
/C=DE/ST=Bayern/L=Muenchen/O=Bayerisches Landesamt fuer Steuern/OU=ELSTER/CN=offeneschnittstelle
/C=DE/ST=Bayern/L=Muenchen/O=Bayerisches Landesamt fuer Steuern/OU=ELSTER/CN=ERiC Client Certificate
/C=DE/O=DATEV eG/CN=CA DATEV DSI 03
/C=DE/ST=Bayern/L=Muenchen/O=Bayerisches Landesamt fuer Steuern/OU=ELSTER/CN=root-edako-ca
/C=DE/ST=Bayern/L=Muenchen/O=Bayerisches Landesamt fuer Steuern - Dienststelle Muenchen/OU=ELSTER/CN=Elster HTTPS-Client
Client Certificate Types: RSA sign, DSA sign, ECDSA sign
Requested Signature Algorithms: ECDSA+SHA512:RSA+SHA512:ECDSA+SHA384:RSA+SHA384:ECDSA+SHA256:RSA+SHA256:DSA+SHA256:ECDSA+SHA224:RSA+SHA224:DSA+SHA224:ECDSA+SHA1:RSA+SHA1:DSA+SHA1
Shared Requested Signature Algorithms: ECDSA+SHA512:RSA+SHA512:ECDSA+SHA384:RSA+SHA384:ECDSA+SHA256:RSA+SHA256:DSA+SHA256:ECDSA+SHA224:RSA+SHA224:DSA+SHA224:ECDSA+SHA1:RSA+SHA1:DSA+SHA1
Peer signing digest: SHA512
Allerdings...
> Ich würde einfach den Fingerprint vergleichen.
...hab ich in meiner Software gar keine TLS-Bibliotheken - da müsste
ich erst mal schauen, ob ich da was passendes finde.
Und abgesehen davon: Wenn ich den Fingerprint des Zertifikats selber
vergleiche, würde das ja bei jedem Zertifikatswechsel (alle drei
Monate) schiefgehen. Da müsste ich ja jedesmal in der infinitesimalen
Mikrosekunde des Zertifkatswechsels ein Update meines Programms mit
dem neuen Fingerprint rausbringen? Das geht nicht.
Oder ich prüfe nur die CA. MITM-Proxies haben doch hoffentlich niemals
Let's Encrypt als CA?
> Einen Tod muss man sterben und z.B.
https://www.elster.de/ abrufen,
> mit dem Schmerz, dass man dann den Zertifikatswechsel nachziehen muss.
Da gilt aber auch das obige, und sogar noch mit der zusätzlichen Ein-
schränkung, dass ich den Zeitpunkt von Zertifikatswechseln auf den
ELSTER-Servern nicht selbst bestimmen kann.
Gruß Matthias.
PS: Das Problem (also dass wegen Kaspersky & Co. keine ELSTER-Verbindung
hergestellt werden kann) ist derzeit noch nicht sooo groß, als dass
dringender Handlungsbedarf (für hochkomplexe Lösungen) bestünde. Aber
ich behalte die hier gemachten Lösungsvorschläge auf jeden Fall im
Hinterkopf, falls sich das noch auswächst...
PPS: Wie machen das eigentlich weitverbreitete Programme wie das Wiso
Sparbuch & Co.? Die müssten ja das gleiche Problem haben. Oder wissen
die, wie sie für sich selbst Ausnahmen in den gängigen "Security
Sites" eintragen können?
PPPS: Ich könnte ja mal im ELSTER-Entwicklerforum vorschlagen, die nichts-
sagende Fehlermeldung "Verbindung zu den ELSTER-Servern kann nicht
aufgebaut werden" durch was sinnvolleres (und/oder den Grund dafür)
zu ersetzen...