Nu este nimic mai simplu!
Ce este un server de baze de date? Aceasta este o bază de date comună, care conține în sine toate informațiile necesare pentru MySQL. Aceasta stochează toate configurările de server, baza de date, informații despre plug-in-uri, data și ora, conturile de utilizator și privilegiile lor și parole. În cadrul acestui articol ne interesează valorile trecutului.
Pentru a afla parola MySQL, aveți nevoie pentru a merge la un server de sub administratorul său uchetki. Apoi, deschide baza de date de sistem cu numele de «MySQL» și de a face valorile de probă în tabelul de utilizator. Pentru claritate, toate informațiile (valorile parolă) obținem folosind phpmyadmin.
Deschideți sistemul de baze de date, si uita-te la conținutul ne este necesar „pentru a trage împreună“ de masă, într-una din coloanele sale sunt înregistrate toate parolele. După cum puteți vedea, nimic complicat, iar pentru acest lucru avem nevoie de doar câteva minute. Dar ce este? Cine „Stríbro“ clar din valorile din tabel de parole și le-au înlocuit cu unele „Abracadabra!“
Calm și liniște numai! Nimeni „nu Stribro,“ doar în tabelul specificat trunchiată deja parole. Ce ai ochii atât de surprins? Acum, tot ce ne extindem „pe rafturi“.
Cum criptare în MySQL
Faptul că această bază de date utilizează propriul algoritm de criptare a parolei. Mai precis, nu de criptare și hashing. Din acest motiv, nimeni nu a dat încă o modalitate de a decoda cum parolele în MySQL.
Există diferite algoritmi de hash, dar în cazul în care acesta va fi utilizat pentru acoperișuri criptografic, șansa de a obține o valoare a parolei este redusă la aproape 0. criptografic sare - un șir suplimentar, care este atașat la valoarea inițială. Ca urmare, ieșirea (după hashing) pot fi obținute de aproape „incasabil“ parola.
Pentru a seta parola bazei de date folosind funcția PASSWORD (). Ea nu a returnat o valoare, care a fost trimis să-l pentru prelucrare. Prin urmare, utilizați această funcție pentru a „citi“ parola nu va funcționa. Singurul lucru pe care îl poți face - este de a obtine o linie trunchiată din valoarea inițială. sintaxă interogare:
Această valoare poate fi găsită în tabelul de utilizator de sistem (de baze de date MySQL utilitate), care conține toate conturile de utilizator de bază de date de utilizatori și parole valori trunchiate.
Prin încercarea (dacă știi cel puțin structura aproximativă a materiei), puteți încerca să vă amintiți o parolă uitată. Dar recuperat o valoare atât de complet necunoscută este aproape imposibil. Nu uitați că toate operațiile descrise mai sus sunt efectuate în contul de administrator (root).
Utilizarea de criptare reversibilă
Aflați parola MySQL, sistemul implicit nu va fi capabil să cont de server. Dar poate fi pus în aplicare la nivelul bazei de date sau chiar tabele. Multe motoare si CMS, care lucreaza pe baza MySQL, au propriul lor sistem de autentificare (built-in).
De exemplu, dacă deschideți tabelul bazei de date WordPress în cazul în care motorul păstrează toate datele utilizatorului, coloana user_pass veți vedea același „Abracadabra“, la fel ca în baza de date MySQL sistem. Acest lucru sugereaza ca CMS foloseste, de asemenea, unul dintre algoritmi de criptare parolele ireversibile (MD5).
Dar este posibil să se pună în aplicare un sistem de autentificare bazat pe metode de criptare reversibile. Acestea vor face. Să nu ne dezamăgesc astăzi „negru“ de culoare și toate cererile SQL pentru a efectua la linia de comandă, și phpMyAdmin. Pentru experimente, voi folosi baza de date de testare «db1», care stochează un tabel cu „baby animale» (animale). Adăugați un nou tabel cu numele proprietarilor de animale și parola pentru a vă conecta la „celule“ lor
Rulați programul, la stânga în listă, selectați baza de date dorită. După aceea, du-te la tab-ul SQL și execută următorul cod:
Acum, înainte de a învăța parola MySQL-ul, să completeze datele din tabel create. Pentru a face acest lucru, vom folosi din nou interogările SQL ca dezvoltatorii devin realitate. Solicitare cod:
Modificarea valorilor în paranteze după declarația VALORILE, adăugați la tabel câteva rânduri. Acum face datele ei de probă:
De fapt, tulburarea se dovedește! Dintre toate parolele vizibile „dintr-o privire“. Acum avem micul lor „heshanem“ folosind funcția AES_ENCRYPT construit. Este nevoie de doi parametri: o coloană pentru valoarea hash și „săruri“:
Acum, să facem încă o dată o selecție din tabel și uita-te la rezultatele:
După cum puteți vedea, unele „pete“ au fost obținute în loc de parole. Acest lucru indică faptul că valoarea în siguranță, trunchiate, și fără „sare“ este practic imposibil să se crape. Dar noi știi, ce este „sare“. Acum, vă voi arăta cum să găsiți parole la baza de date MySQL, sau mai degrabă să le aducă într-o formă mai „ușor de citit“. Pentru a face acest lucru, utilizați o funcție diferită - AES_DECRYPT (). solicita codul, cu „participare“:
Rezultatele acestui eșantion:
După cum puteți vedea, pentru a afla parola MySQL, aveți nevoie pentru a înțelege corect ce „sare“ a problemei. Și dacă un străin urca pe garduri, puteți obține cu ușurință taxa de sare (cu un pistol) într-un loc care nu este în valoare de timp suplimentar pentru a căuta aventura. Este mai bine să-și petreacă timpul pe învățare MySQL.
Cele mai multe știri IT si dezvoltare web pe canalul nostru-Telegram