Securitate Microsoft ActiveSync, j3qx

de securitate Microsoft ActiveSync

[ActiveSync utilizează protocolul de rețea nu deține apă în ceea ce privește cerințele moderne de securitate.]







ActiveSync Interfețe de interacțiune

Cele mai frecvente interacțiune interfețe, PDA și PC este un COM și porturi USB, precum și o conexiune în infraroșu. Toate aceste metode necesită o conexiune fizică și computer, sau prezența unui strat de aer mic (în cazul IR) între ele, și nu sunt de interes special pentru hacker de rețea. Deoarece „Dacă băieții răi au un acces fizic complet la computer, acesta nu mai este calculatorul.“

cs553 / paper3.pdf), dar, AFAIK, control critic prin proiectarea și punerea în aplicare a protocolului de securitate ActiveSync-comunitate nu a fost expus.

În principiu, măsurile de protecție construit în protocol (autentificare PC folosind o parolă) pentru a sincroniza prin IR / USB / COM este suficient. Utilizatorul are întotdeauna capacitatea de a autentifica vizual PC și terminalul mobil.

Cu toate acestea, totul se schimbă atunci când apare rețea (a se vedea. Figura 1).

Microsoft ActiveSync

Figura 1. Bine ați venit la Real Cuvântul!

Tot mai multe PDA-uri echipate cu interfețe wireless, 802.11, și, desigur, proprietarii lor doresc să utilizeze potențialul de deschidere. Microsoft este, desigur, le oferă această oportunitate, permițând dispozitivului pentru a sincroniza printr-o rețea. sincronizare rețea este dezactivată în mod implicit, și este una dintre puținele decizii bune în punerea în aplicare a ActiveSync. Dar, judecând după numărul de „cum-se sincroniza prin Wi-Fi“ în rețea, mulți proprietari de PDA-uri folosesc această opțiune. Ei bine, să începem.

Analiza Protocol de rețea

Primul lucru pe care capturile ochi - transferul traficului în clar. Este normal pentru o conexiune directă (componentă troian pe un PC să fie în continuare posibilitatea de a avea acces la trafic), dar este total inacceptabil în cazul rețelelor. Mai ales atunci când ia în considerare faptul că principalul canal de comunicare între dispozitiv si computer este Wi-Fi, „securitate“ din care atât de mult se spune cuvinte calde (OK, OK, știu ce 802.11i). Cu toate acestea, acest fapt este descris în documentația Microsoft, respectiv bug-uri din regiunea de descărcare trece în funcții.

După pornirea serverului ActiveSync se deschide portul 5679 pe toate interfețele de rețea.

C: \> netstat -anb
Conexiuni active
Proto Adresa locală externă Adresa de stat
TCP 0.0.0.0:5679 0.0.0.0:0 ASCULTARE
wcescomm.exe

Astfel, simpla scanare prin intermediul Nmap -p 5679 dezvaluie masina instalat ActiveSync.

PC-ul și PDA comunică folosind mai multe conexiuni TCP. Primul PDA stabilește o conexiune TCP pe portul 5679 în IANA înregistrată ca (Manager de Direct Connect Cable) DCCM.

Dacă sincronizarea prin intermediul / utilizator COM USB / IR este capabil de a proteja dispozitivul de atacurile de injectare de server false. Acesta utilizează fie un 4 cifre de cod PIN sau o parolă alfanumerică a simbolurilor 40ka. Înainte de serverul de sincronizare trebuie să prezinte un dispozitiv de parolă. Din câte știu eu, singura parola instrument ghicitul este experiența utilizatorului emulator în GUI, scris în VBScript. În prezent, protocolul ActiveSync destul de bine înțeles de către SyncCE echipa de proiect, și nu o problemă pentru a crea pe baza codului lor mai „utilitate avansat.“







Cu toate acestea, pentru punerea în aplicare a atacurilor „false
server de mii „folosind sincronizarea TCP / IP astfel de delicatese nu au nevoie. Dispozitivul nu necesită o parolă, în cazul de sincronizare de rețea! chiar mi se pare greu de spus ce este - un spațiu de securitate sau mod de a îmbunătăți securitatea. La urma urmei, în cazul în care sincronizarea are loc prin intermediul COM / USB / IR, parola este trimis în text clar. Acest lucru este cu siguranță inacceptabil la trimiterea parolei prin rețea. Ei bine, atunci nu vom trece-l la toate!

Prin urmare, pentru punerea în aplicare a introducerii de a realiza suficient de fals server de „jumătate“ MITM atac (om la mijloc), și de a face acest lucru ar fi atunci când PDA-ul serverului conecta conectarea la mașina noastră.

Acest lucru se poate face folosind tehnici cunoscute 1,2,3 ... (alegeți dumneavoastră preferat) strat al modelului OSI. Studiul a folosit o opțiune cu DNS-spoofing, deoarece dispozitivul identifică computer după nume, dar atacul este încă o mulțime de alte posibilități. Nu cred că această abordare va fi popular cu reale „băieții răi“, ca cele mai multe rețea SOHO de rezoluție folosind numele NetBIOS.

Un alt element constitutiv necesare pentru punerea în aplicare a atacului în sine este un „server de fals.“ În acest caz, nevoia de programare suplimentare nu sunt suficiente capabilități ActiveSync încorporate.

Cu toate acestea, ne confruntăm cu o altă problemă. Prima dată când vă conectați prin intermediul COM USB dispozitiv / / IR și PC coordonează schimbul de parametri și de a crea așa-numitele „parteneriate“. metode documentate de creare a lor în cazul a fost detectat de sincronizare de rețea. Parametrul bine dovedit HKLM \ SOFTWARE \ Microsoft \ Windows CE Services \ GuestOnly = 1, vă permite să conectați orice dispozitiv ca un „invitat“ în acest caz, nu funcționează.

La o examinare mai atentă, sa constatat că „parteneriatele“ sunt definite prin prezența registrului cheie HKCU \ Software \ Microsoft \ Windows CE Services \ Parteneri \ pe PC și setarea HKLM \ Software \ Microsoft \ Windows CE Services \ Parteneri \\ Pid = pe PDA. unde - 32 biți de identificare a „parteneriate“, și - numărul de serie al partenerului (P1, P2).

Atunci când identificatorul de sincronizare de rețea „parteneriate“, dispozitivul este transmis în plaintext, respectiv „server de fals“ are capacitatea de a intercepta (figura 2), scoateți cererea de la client și configurați ActiveSync pentru a accepta conexiuni de la aparat.

Microsoft ActiveSync

Figura 2. Identificator de conectare

  1. Punerea în aplicare a MITM sau condiții similare.
  2. Așteptați conectarea pe portul 5679.
  3. Extras din ID-ul dispozitivului de pachete.
  4. Importați „șablon“ (puteți lua o copie a registrului de orice mașină configurat cu un partener) parteneriate în registru.
  5. Schimbați valoarea identificatorului partener (HKCU \ Software \ Microsoft \ Windows CE Services \ Parteneri \) La o valoare interceptate.
  6. Așteptați reconectare.

În timpul experimentelor a fost obținut posibilitatea de acces deplin la dispozitivul în „modul clienților“, adică un control virtual complet asupra PDA. Punerea în aplicare a atacului poate fi simplificată prin scrierea unui server proxy, adaugă automat ID-ul partener interceptat la setările ActiveSync.

Atac „client fals“ vă permite să se conecteze la server și dispozitivul mobil pentru a primi date, configurate pentru a sincroniza în mod automat, astfel de e-mail-uri, fișiere, contacte, etc. În plus, atunci când detectează un erorile de tip „buffer overflow“ în ActiveSync Module formate de conversie, aceasta poate conduce la executarea de cod arbitrar.

Pentru a crea un client fals necesită aceleași informații ca și pentru creșterea server de fals - hostname cu ActiveSync și PARTNERID.

Identificatorul „Parteneriatele“ pot fi obținute prin interceptarea pachetelor de rețea sau bust. În al doilea caz, cantitatea de combinatii cautate este destul de mare și este de 2 ^ 32. Cu toate acestea, în practică, este ceva mai mică ca o interogare poate fi transmisă o dată 2 ID (vezi. Figura 2) și, în plus, atunci când generează partnerid ActiveSync încearcă să evite „extreme“ intervalul de valori.

HKLM \ Software \ Microsoft \ Windows CE Services \ Parteneri \ P1
Pname [STRING] =
Pid [DWORD] =

Ulterior, în ActiveSync PDA rulează un client și inițiază conexiunea la PC.

La proiectarea Microsoft ActiveSync ar putea folosi SSL / TLS pe ​​certificatul auto semnat generat de crearea de parteneriate. Asta ar rezolva problema dispozitivului de autentificare reciprocă și un computer desktop, precum și posibilitatea de a cripta traficul trimis.

Primele două sunt destul de potrivite pentru rezolvarea problemei ActiveSync protecție. La selectarea de autentificare WPA poate fi operat pe baza unei chei comune (WPA / PSK) sau prin certificate și parole (802.1X PEAP-MSCHAPV2 sau EAP-TLS). Folosind PEAP sau EAP este o opțiune mai sigură, dar presupune setarea componentelor client PKI pe PDA-ul, cum ar fi ajustarea server RADIUS pentru a avea încredere certificat.