Mam stare urządzenie, które łączy się ze stroną internetową HTTPS i pobiera niektóre treści. Chcę, aby to urządzenie pobierało zawartość z domeny, którą kontroluję, ale klient ma określonego osadzonego głównego urzędu certyfikacji i łączy się tylko wtedy, gdy połączenie SSL używa certyfikatu tego urzędu certyfikacji.
Z pewnością mogę to naprawić, zmieniając oprogramowanie na kliencie i zastępując adres URL https adresem HTTP, usuwając wszystkie elementy HTTPS z połączenia.
Jednak szukam sposobu, aby to zadziałało bez modyfikacji klienta (tylko zmiany w DNS) i teraz przeczytałem z „Szyfrów zerowych SSL”.
Mógłby za pomocą jednej z szyfrów SSL bez uwierzytelniania (na przykład, TLS_NULL_WITH_NULL_NULL
czy TLS_DH_anon_WITH_AES_256_CBC_SHA
może zrobić to urządzenie akceptuje mojego fałszywego połączenia? Może to akceptuje te fałszywe szyfrów ...
Ale nie mam pojęcia (i nie znalazłem wielu informacji w Internecie), w jaki sposób mogę zmusić mój serwer WWW do korzystania z tych szyfrów.
Obecnie używam Apache i próbowałem skonfigurować te szyfry, ale to nie działało, a dokumentacja stwierdza, że zerowe szyfry zostały usunięte, ponieważ są niepewne. Wiem jednak, że są niepewne i i tak chcieliby je wykorzystać ...
Czy istnieje inny serwer WWW, którego mógłbym użyć do wynegocjowania zerowego szyfru z tym klientem i mam nadzieję, że połączy się on z moim serwerem, mimo że nie ma ważnego certyfikatu?
Teoretycznie, jeśli urządzenie akceptuje te szyfry, powinno to działać z fałszywym serwerem, ponieważ szyfry te nie uwierzytelniają serwera, prawda?
openssl s_server -key k.pem -cert c.pem -accept 443 -www
i dane wyjściowe nie zawierały żadnego zerowego szyfru, a -cipher TLS_DH_anon_WITH_RC4_128_MD5
także nie działały. EDYCJA, OK, zmusił serwer do pracy -cipher ADH
. Zobaczmy, co mówi o nich klient ...
openssl s_server -cipher <list>
sprawdzić, czy klient połączy się z zerowym szyfrem. Może być konieczne skompilowanie OpenSSL, aby to polecenie również działało.