Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Włamanie na stronę w php
Forum PHP.pl > Forum > Przedszkole
tkostek
zrobiłem następujący kodzik:
Kod
<form action="logowanie.php" method="GET">
login: <input type=text name=f1><br>
hasło: <input type=password name=f2><br>
<input type=submit value="Wyslij">
<input type=reset><br>

<?
$login=$_GET['f1'];
$haslo=$_GET['f2'];
$plogin=admin;
$phaslo=1234;
if($login == $plogin)
{
if($haslo == $phaslo)
{
echo '<a href="strona.php">kliknij tu!</a>';
}
else
{
print "złe hasło <br> spróbuj jeszcze raz!";
}
}
else{
print "zły login <br> spróbuj jeszcze raz!";
}
?>



jak się można domyślić pobiera on od użytkownika login i hasło, a następnie porównuje je z właściwymi danymi. bez żadnego SQL ani innych baz danych. pomyślałem sobie że spróbuje się włamać na własną stronę. Najpierw spróbowałem wszystkich kodów SQL injection z książek, ale nie działały. W końcu poddałem się i wpisałem w pole login: "$plogin"-w tej zmiennej w moim kodzie zapisany jest poprawny login, a w pole hasło: "$phaslo" (poprawne hasło) wydawało by się że powinno zadziałać gdyż powstała by instrukcja :
..........if ($plogin==$plogin){.....
a tu kapota. pisze że niepoprawnie.

moje pytanie brzmi: DLACZEGO?questionmark.gif
thek
A od kiedy słowo $plogin jest równe zawartości zmiennej $plogin? winksmiley.jpg Czy otwierając na kompie obrazek o nazwie plik.txt zobaczysz napis plik.txt? winksmiley.jpg Może tam przecież być cokolwiek.
tkostek
w takim razie jak komp rozróżnia nazwę "$a" od wartości "$a"? według mnie jeśli $a=1 to $a=$a, bo 1=1
Pawel_W
Cytat(tkostek @ 13.06.2010, 09:26:40 ) *
w takim razie jak komp rozróżnia nazwę "$a" od wartości "$a"? według mnie jeśli $a=1 to $a=$a, bo 1=1

dane pobrane przez $_POST są zdefiniowane jako ciąg znaków a nie zmienna...

do czegoś takiego możesz użyć eval
tkostek
aha, rozumiem dzięki.


a czy na tak zrobioną stronę da się w ogóle włamać? czy jest jakiś sposób żeby komp potraktował $_POST jako zmienną? np. poprzez to eval?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.