Introducere în injecția LDAP

Aplicația web în aceste zile se presupune a fi mult mai mult decât doar platforma care procesează întrebările utilizatorului. În perioada anterioară, aplicația web se referea la locul în care utilizatorii pot veni să își facă munca și să se deconecteze, iar la momentul deconectării, aplicația nu mai funcționează. Însă în aceste zile aplicația web trebuie să funcționeze chiar dacă utilizatorul nu o folosește, ceea ce ar putea fi implementat folosind cookie-uri. Facebook a confirmat recent că utilizează cookie-uri pentru a verifica activitățile utilizatorilor pentru a se asigura că sistemul lor nu este abuzat. Așadar, în momentul în care aplicațiile online trebuie să fie mai puternice, securitatea aplicației este pe lista cerințelor. Aici ne vom concentra asupra unui tip de mod de atac cibernetic care trebuie să fie îngrijit pentru a asigura siguranța sistemului.

Ce este injectarea LDAP?

  • LDAP înseamnă protocolul de acces ușor la director. Poate fi definit ca un protocol care este neutru de la furnizor și funcționează pe strat peste TCP / IP stack. Este utilizat pentru a introduce mecanismul de verificare și autentificare a autorității în aplicația web pentru a asigura siguranța acesteia și foarte frecvent utilizat în timpul dezvoltării aplicațiilor web. LDAP este utilizat foarte des în aplicațiile web care sunt utilizate pe internet sau pe intranet. Este foarte important ca aplicația web să meargă cu LDAP, deoarece este un factor foarte comun și important care facilitează dezvoltarea sigură a aplicației web.
  • LDAP poate fi, de asemenea, definit ca setul de standarde care sunt utilizate pentru a efectua verificările de securitate pentru a afla dacă utilizatorul are toată permisiunea de a accesa sistemul existent. Există mai multe modalități de efectuare a controalelor, dar în cele din urmă, motivul tuturor controalelor este de a asigura siguranța aplicației web. Acesta interzice accesul neautorizat al utilizatorilor care nu au privilegiile corespunzătoare. Pe baza drepturilor pe care utilizatorul le deține pentru o anumită aplicație web, se asigură că utilizatorul ar putea fi capabil să acceseze numai acele lucruri pentru care au dreptul. Deși este folosit pentru a avea grijă de securitatea aplicației web, hackerii pot fi păcăliți să extragă sucul din aplicație.

Efectuarea injecției LDAP cu exemplu

  • Aplicația web trebuie să ia informațiile de la utilizator pentru a o prelucra în continuare. Atacatorul poate profita de acest lucru dacă valoarea introdusă de utilizatori nu este igienizată corect și merge direct la baza de date pentru executare. Aici vom vedea cum poate fi lansată injecția LDAP pe oricare dintre aplicațiile web care este predispusă la acest atac.

IEnter your name

  • Interogarea menționată mai sus va fi transformată în comandă prietenoasă LDAP, astfel încât aplicația să ușureze executarea interogării.

String ldapQueryToSearch= "(sq=" + $userName + ")";
System.out.println(ldapQueryToSearch);

  • În cazul de mai sus, dacă valoarea transmisă de utilizator nu este igienizată, aceasta poate duce la obținerea numelui tuturor utilizatorilor existenți prin introducerea „*” în caseta de introducere. Un asterisc indică toate opțiunile disponibile, astfel încât atunci când baza de date va prelucra asteriscul, mai degrabă orice nume de utilizator particular, i se vor da toate obiectele stocate în baza de date LDAP. Întrebarea reală care va fi executată în baza de date va fi

findingLogin="(&(usrid="+username+")(userPwd=(MD5)"+base64(pack("H*", md5(pass)))+"))";

  • Când datele nu sunt igienizate și baza de date acceptă valoarea asteriscului procesului, codul va fi ca mai jos.

findingLogin="(&(usrid=*)(usrid=*))(|(usrid=*)(userPwd=(MD5)Xkjr1Hj5LydgyfeuILpxM==))";

De îndată ce codul vulnerabil de mai sus va rula în baza de date LDAP, acesta va trece prin toate obiectele stocate în baza de date LDAP și va duce la vătămarea aplicației web. Rezultatul injecției LDAP va fi folosit de hacker pentru a abuza de sistem și a provoca încălcarea securității.

Cum puteți proteja atacurile de injectare LDAP?

  • Dacă există o vulnerabilitate în aplicație, trebuie să existe și remedierea acesteia. Aproape că nu există nici o vulnerabilitate care nu poate fi rezolvată sau fixată pentru a proteja sistemul. În același mod, există mai multe moduri care pot fi utilizate pentru a proteja aplicația web de injecția LDAP.
  • Primul și cel mai esențial mod este să igienizați aportul înainte de a-l duce mai departe pentru procesare. Introducerea transmisă de utilizator trebuie validată dacă se potrivește cerinței care se potrivește cu orice cerere așteaptă prin câmpul text. De exemplu, dacă utilizatorul încearcă să trimită caractere speciale în câmpul de text care solicită numele, atunci utilizatorul ar trebui să fie avertizat că nu pot completa un caracter special în acel câmp. Aceasta este validarea din partea clientului. Acum, de asemenea, validarea din partea serverului va fi necesară pentru a vă asigura că datele furnizate sunt autentice.
  • Următoarea este să configurezi LDAP, ținând cont de siguranță. Configurația LDAP trebuie făcută într-o manieră care să restricționeze utilizatorii neautorizați să facă orice modificări rău intenționate în sistem. De asemenea, următorul este, rezultatul interogării LDAP trebuie să fie limitat și nu poate dezvălui date care ar putea duce la încălcări ale securității. Dacă datele nu vor fi suficiente pentru a dăuna sistemului, atacatorul nu va putea afecta în niciun fel aplicația web, chiar dacă ar putea lansa atacul de injecție LDAP.

Concluzie

Protocolul de acces la directorii ușoare oferă calea către aplicație pentru a se asigura că utilizatorul care încearcă să acceseze sistemul este autentificat și autorizat să folosească sistemul. Este foarte important să aveți în vedere LDAP, având în vedere toate problemele de securitate. Sistemul ar trebui să fie amplu până la puternic pentru a nu lăsa niciun hacker să lanseze un atac LDAP. Întrucât baza de date LDAP deține informații foarte profitabile, administratorul trebuie să se asigure că intrarea de la utilizator a fost igienizată foarte atent și configurația trebuie făcută ținând cont de toți factorii de securitate.

Articole recomandate

Acesta este un ghid pentru injectarea LDAP. Aici vom discuta despre ce este LDAP Injection, exemplele sale și cum să protejăm atacul LDAP Injection. Puteți, de asemenea, să parcurgeți alte articole conexe pentru a afla mai multe-

  1. Ce este SQL Injection?
  2. Ce este Laravel?
  3. Testare de securitate
  4. Ce este interfața Java?