oins_certifigate



oins_certifigate

0 0


oins_certifigate


On Github wrauner / oins_certifigate

CERTIFI-GATE

Bartłomiej BoruckiWojciech Rauner

OINS 2015

Wstęp

  • Raport stworzony przez firmę Check Point
  • Narzędzia mobile Remote Support Tools
    • TeamViewer
    • RSupport
    • Communitake
    • AnySupport
  • Dodatkowe uprawnienia (aplikacje OEM)
    • INSTALL_PACKAGES - Instalacja aplikacji
    • READ_FRAME_BUFFER, ACCESS_SURFACE_FLINGER - Dostęp do ekranu
    • INJECT_EVENTS - Kontrola akcji użytkownika

Architektura mRST

  • Aplikacja
    • Podpisana przez developera
    • "Zwykłe" uprawnienia
    • Połaczenie z Internetem
    • Interfejs użytkownika
  • Plugin
    • Podpisana przez OEM
    • Podniesione uprawnienia
    • Udostępnia serwis
    • Bez interfejsu dla użytkownika

Komunikacja za pomocą Binder

Bezpieczeństwo? Weryfikacja aplikacji przez plugin

TeamViewer

  • TeamViewer Quick Support - od 1 do 5 milionów pobrań
  • Bezpieczeństwo?
    • Plugin weryfikuje numer seryjny certyfikatu aplikacji...
    • Certyfikat jest generowany przez developera...
      openssl genrsa -out server.key 2048
      openssl req -new -key server.key -out server.csr -set_serial 123456789
      openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt


... a wartość numeru seryjnego, która jest akceptowana można znaleźć dekompilując plugin

Inny przykład

  • RSupport
    • Weryfikacja hashCode obiektu Signature
    • Wynikiem działania funkcji hashCode jest Integer = 2^32 możliwości
    • Atak polega na wygenerowaniu certyfikatu, dla którego hashCode będzie się zgadzał z zahardkodowanym w aplikacji

Zagrożenia

  • Całkowite przejęcie kontroli nad urządzeniem!
    • Atakujący dzięki specjalnym uprawnieniom może symulować dotykanie ekranu czy wpisywanie z klawiatury
    • Instalacja kolejnych aplikacji
  • Analogia do udostępnienia swojego telefonu jako "zdalny pulpit"

Jak się zabezpieczyć?

  • Skaner podatności (CheckPoint)
  • Znajdź działające pluginy mRST i odinstaluj je jeżeli możesz
  • Zweryfikuj istniejące aplikacje oraz te, które planujesz zainstalować
  • Root i zainstalowanie innego ROM'a, np. CyanogenMod

CERTIFI-GATE

Bartłomiej BoruckiWojciech Rauner

OINS 2015
1/9
CERTIFI-GATE Bartłomiej BoruckiWojciech Rauner OINS 2015