Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL][PHP] Ataki SQL
Xart
post
Post #1





Grupa: Zarejestrowani
Postów: 267
Pomógł: 6
Dołączył: 8.04.2013

Ostrzeżenie: (0%)
-----


Witam tak się ostatnio zastanawiam bo mam pewien niby przestarzały, banalny skrypt do logowania w którym nie ma filtrowania danych ale itak wydaje mi się że nie dałoby się zalogować na admina bez hasła biggrin.gif

Wygląda on tak:

  1. <?
  2. include("config.php");
  3.  
  4. $login=$_POST['USRlogin'];
  5. $haslo=$_POST['USRhaslo'];
  6.  
  7. $wynik = mysql_query("SELECT * FROM users WHERE login='".$login."'") or die("<center>błąd w pytaniu</center>");
  8. $rekord = mysql_fetch_assoc($wynik);
  9. if(md5($haslo)==$rekord['haslo']){
  10. $log=md5("zalogowanyOKzalogowany");
  11. $news=$rekord['news'];
  12. $page=$rekord['page'];
  13. $zmiany=$rekord['zmiany'];
  14. session_register('zmiany');
  15. $user=$rekord['user'];
  16. $galeria=$rekord['galeria'];
  17. session_register('galeria');
  18. ?>
  19. <frameset cols="175px,*">
  20. <frame src="menu.php"/>
  21. <frame src="pusty.html" name='okno'/>
  22. </frameset>
  23. <?
  24. }else{
  25. header("Location: index.php");
  26. };
  27. ?>


Atak na zmiane zapytania odpada bo nic nie wniesie.
union select nic nie zrobi bo dane nie są nigdzie wyświetlane
zakomentować w kodzie nie ma zbytnio czego bo tylko pobiera użytkownika
wyświetlenia niczego też nie ma jak dokleić...
za hasło nie można podać żadnego kodu bo if(md5($haslo)==$rekord['haslo']) zakoduje go na md5

Ogólnie chyba nic się z tym nie da zrobić... Nie ma żadnego sposobu obejścia. Czyżby to if(md5($haslo)==$rekord['haslo']) było lepszym rozwiązaniem od filtrowania ITP ?
Macie jakieś pomysły na obejście tego mhm ?
Go to the top of the page
+Quote Post

Posty w temacie


Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 04:52