Windows Phone 8: to nie są certyfikaty, których szukacie

W skrĂłcie: SSL w Windows Phone 8 jest popsute

Testowaliśmy telefony z WP8 uĹźywając serwera, ktĂłry wymaga uwierzytelniania uĹźytkownika za pomocą certyfikatĂłw. Po wrzuceniu na urządzenie certyfikatu z naszego CA – telefon łączył się z serwerem. Czasem pokazywał się z certyfikatem naszego CA, a czasem z zupełnie innym.

PoniĹźej zrzuty ekranu z sesji SSL. Interesująco zaczyna się po tym, jak serwer zarząda certyfikatu wysyłając „Certificate Request” (kliknij w obrazek, Ĺźeby zobaczyć go w pełnej rozdzielczości):

Certificate Request

Nasz serwer zażądał certyfikatu klienta pasującego do DN naszego własnego CA.

A oto odpowiedĹş klienta:

Co tu widzimy? Telefon odpowiedział certyfikatem wydanym przez Microsoft, zamiast podać nasz certyfikat, lub po prostu anulować transakcję.

Hierarchia tego certyfikatu:

  • Certificate (id-at-commonName=urn:wp-ac-hash-2:PAzCfbUuekP_SrTA0NUecBjyqN1f5,id-at-organizationalUnitName=9DFF3EFECE1B1D3E352EF654DEFBB9DED7)
    • Certificate (id-at-commonName=Microsoft Genuine Windows Phone CA4,id-at-organizationalUnitName=GFS,id-at-organizationName=Microsoft Corporation,id-at-localityName=Redmond,id-at-stateOrProvinceName=WA,id-at-countryName=US)
      • Certificate (id-at-commonName=Microsoft Windows Phone PCA,id-at-organizationName=Microsoft Corporation,id-at-localityName=Redmond,id-at-stateOrProvinceName=Washington,id-at-countryName=US)

Wujek Google niestety nie pomĂłgł w odpowiedzi na pytanie czym jest „wp-ac-hash-2”, ale wygląda to na certyfikat urządzenia wystawiony przez Global Foundation Services (GLS) Microsoftu. Wg. http://www.globalfoundationservices.com/ jest to jednostka zarządzająca chmurą w MS, więc nie zdziwiłbym się, gdyby był to certyfikat odpowiedzialny za uwierzytelnianie telefonu z usługami Microsoftu takimi jak Zune, sklep etc.

Nie wygląda to ciekawie. Wnioski nasuwają mi się takie:

  • Uwierzytelnianie za pomocą certyfikatĂłw moĹźe działać lub nie – w zaleĹźności od tego czy telefon będzie miał dobry humor i odpowie poprawnym certyfikatem lub nie
  • Telefon moĹźe mieć problemy z kontaktem z usługami Microsoftu, jeĹźeli takowe wymagają certyfikatu. WyobraĹźam sobie, Ĺźe moĹźe przestać działać na telefonie sklep, lub telefon nie będzie w stanie uwierzytelnić oprogramowania
  • Certyfikaty mogą być wystawione na atak poprzez proxy wywołań telefonu do usług korzystających z uwierzytelniania za pomocą certyfikatĂłw. Atakujący nakłania uĹźytkownika do wejścia na swĂłj serwer w internecie, ktĂłry żąda certyfikatu i liczy na to, Ĺźe telefon uĹźytkownika przedstawi certyfikat wykorzystywany np. do korporacyjnej poczty. Następnie atakujący przekierowuje negocjację SSL do docelowego serwera, gdzie będzie wyglądało jakby to uĹźytkownik kontaktował się ze swoją skrzynką pocztową.

A tak przy okazji – wygląda na to, Ĺźe obsługa certyfikatĂłw w Windows Phone 8 została potraktowana po macoszemu. Wystarzczy obejrzeć ten dokument: Windows Phone 8 Certificate Installation. Jedyną opcją na dostarczenie certyfikatu jest poczta lub IE? Nie ma moĹźliwości instalowania certyfikatĂłw przez protokół MDM?

 

This post is also available in: English polski

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *