/ / Czy istnieje jakiś powód do podpisywania treści wiadomości podczas korzystania z wzajemnego protokołu SSL z certyfikatem klienta - usługi sieciowe, bezpieczeństwo, uwierzytelnianie, ssl

Czy istnieje jakikolwiek powód, aby podpisywać komunikaty, gdy korzystasz z protokołu SSL z certyfikatem klienta - usługi sieciowe, bezpieczeństwo, uwierzytelnianie, ssl

Niedawno musiałem zaimplementować przesyłanie komunikatów XMLdwa duże podmioty, które wymagały od nas dostarczenia certyfikatu klienta SSL, a także podpisania treści komunikatu SOAP innym certyfikatem podpisującym. Oprócz redundancji, podpisywanie treści wiadomości Z INNYM CERTYFIKATEM zapewnić dodatkową ochronę?

Edytowane w celu wyjaśnienia pytania i wskazania wieloletniego nieporozumienia między mną a EJP.

Wartość podpisania wiadomości opróczużywanie SSL z wzajemnym uwierzytelnianiem (klient cert) oznacza, że ​​otrzymujesz niezaprzeczalność. Otrzymujesz jednak to, niezależnie od tego, czy certyfikat klienta jest używany do podpisywania wiadomości, czy inny certyfikat podpisywania jest używany.

Odpowiedzi:

4 dla odpowiedzi № 1

Podpisanie wiadomości zapewnia wykonalność prawnąniezaprzeczalność transakcji. Masz dowód, że ten klient i tylko ten klient mógł wysłać tę wiadomość, i możesz powtórzyć weryfikację podpisu w sądzie w celu wykazania. SSL daje ci to samo technicznie na niższym poziomie, ale nie masz żadnego sposobu na wyciągnięcie podpisu, więc nie możesz go przedstawić w sądzie: jesteś zmuszony do machania ręką na dowodach, w przeciwieństwie do faktycznego cyfrowego podpis, który jest legalnym podpisem, a zatem prima facie dowód.


0 dla odpowiedzi nr 2

Nie wiem, czy mógłbym to nazwać „ochroną”, ale są to dwie różne rzeczy. Certyfikaty SSL służą do weryfikacji Twojej tożsamości do celów szyfrowania / transmisji.

Podpisywanie SOAP pozwala użytkownikowi końcowemu na sprawdzenie, czy XML nie został zmieniony od czasu podpisania go przez twórcę (Ciebie).


0 dla odpowiedzi № 3

Dzięki zabezpieczeniom warstwy transportowej Twoje bezpieczeństwo kończy się na warstwie transportu. Podpisując wiadomość SOAP, zapewniasz kompleksowe uwierzytelnianie dla podanie warstwa.

Bez certyfikatu klienta SSL każdy w Internecie może rozmawiać z serwerami zaplecza. To zwiększa twoją powierzchnię ataku.

Bez zabezpieczeń warstwy aplikacji wyobraź sobie, comoże się zdarzyć, jeśli osoba atakująca przejmie kontrolę nad modułem równoważenia obciążenia SSL / odwrotnym proxy. (Mogą wysłać dowolną wiadomość SOAP na serwer zaplecza bez uwierzytelnienia ?!)

Wygląda więc na to, że oba zapewniają pewną wartość, tak.

Drugie pytanie, które zadałbym, brzmi: jak się mająklucze (czyli certyfikat klienta SSL i certyfikat podpisywania SOAP) zabezpieczone? Jeśli atakujący jest trywialny, może przejąć kontrolę nad obydwoma kluczami, zmniejszyłoby to zwrot tego podejścia.

Używając innego klucza do podpisywania wiadomości SOAPniż w celu uwierzytelnienia połączenia, zyskujesz także większą elastyczność w zakresie wykonywania swojej infrastruktury kluczy publicznych. Na przykład zespół administracji sieci może chcieć wystawić jeden certyfikat klienta SSL na organizację, ale zespół aplikacji może chcieć jednego certyfikatu podpisującego wiadomość SOAP na jednostkę w tej organizacji.