Wiem wiem, dubluję temat, ale w poprzednim takim samym było trochę błędów, których nie wiem dlaczego nie mogłem edytować, bo po naciśnięciu edytuj pokazał się tylko fragment mojej wiadomości i do tego nie ten który chciałem edytować, więc proszę o usunięcie poprzedniego.
Napisałem obsługę edycji filmów w bazie danych i starałem się go zabezpieczyć przed sql injection, jednak nie wiem czy mi się udało.
Na tą stronę można się dostać tylko poprzez zalogowanie, więc mój atak sprawdzający skuteczność polegał na zaznaczeniu zamiast danych edytowanego filmu to danych użytkownika.
Skrypt wygląda następująco:
Plik add.php:
}
Plik edit.php:
<?php require('conn.php'); if($ile != 1){ } require_once('funkcje.php'); naglowek('Edytuj'); $wys_tytul=($edit[tytul]); $wys_ilosc=($edit[ilosc]); $wys_pochodzenie=($edit[pochodzenie]); $wys_typ=($edit[typ]); $wys_rodzaj=($edit[rodzaj]); } ?>
Próbowałem wpisać adres tak:
Cytat
http://localhost/FILMY/add.php?edytuj=0 UNION SELECT `login`,`imie`,`nazwisko`,`email`,`password` FROM `user` WHERE `id` = 1 /*
Lecz na szczęście z niepowodzeniem ;p
Dodam, że id jest dobre, id=1 to akurat admin.
Jeżeli, ktoś się na tym zna lepiej, niech napisze odpowiednio spreparowanego linka, ażeby wyświetlić dane użytkownika admin w polu z filmem.
A no i jeszcze wyświetlane dane w pliku edit.php
<tr class="hov"> <td valign="top" class="trescc"> <?php echo $wys_tytul; ?> </td> <td valign="top" class="trescc"> <?php echo $wys_ilosc; ?> </td> <td valign="top" class="trescc"> <?php echo $wys_pochodzenie; ?> </td> <td valign="top" class="trescc"> <?php echo $wys_typ; ?> </td> <td valign="top" class="trescc"> <?php echo $wys_rodzaj; ?> </td> </tr>
Poproszę jakiegoś eksperta o potwierdzenie bezpieczeństwa skryptu bądź podanie linka do wyświetlenia danych użytkownika w miejscu wyświetlania filmu.
Z góry dziękuję.