ďťż

[PHP] Panel Administracyjne czy dobrze...

       

Podstrony


telcocafe

Witam!

Ostatnio włamano się na stronę mojego autorstwa.
Wtedy jak pisałem ją to było może dwa dni po tym jak zacząłem cokolwiek robić w PHP.
No i zrobiłem takie prościutkie zabezpieczenia (jeżeli można to tak nazwać :P ).
Postanowiłem napisać dzisiaj PA (od nowa).
Już jestem trochę bardziej obeznany z PHP...

Jeżeli ktoś ma chwilę to niech spojrzy na mój kod i powie czy jest wystarczająco dobry. (w PHP nie jestem jeszcze jakimś mistrzem, ale bądźmy dobrej myśli :P )

Zawartość index.php:
<?php session_start(); $_SESSION['ip'] = getenv("REMOTE_ADDR"); $ip = $_SESSION['ip']; $bany = file('ban.txt'); $liczba_banow = count($bany); for ($sprawdz = 0; $sprawdz<=$liczba_banow; $sprawdz++) { if($ip == $bany[$sprawdz]) { echo '<html><head><title>BAN!</title></head><body> Twój IP jest zbanowany!</body></html>'; exit; } } ?> <html> <head> <title>PA</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" /> </head> <body> <form action="admin.php" method="post"> Login: <input type="text" name="login" /> Hasło: <input type="password" name="pass" /> <input type="submit" value="Loguj!" /> </form> </body> </html>

A to zawartość admin.php:
<?php session_start(); $login = $_POST['login']; $pass = $_POST['pass']; $ip = $_SESSION['ip']; $bany = file('ban.txt'); $liczba_banow = count($bany); for ($sprawdz = 0; $sprawdz<=$liczba_banow; $sprawdz++) { if($ip == $bany[$sprawdz]) { echo '<html><head><title>BAN!</title></head><body> Twój IP jest zbanowany!</body></html>'; exit; } } ?> <html> <head> <title>PA</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" /> </head> <body> <?php if($_SESSION['ban'] == 3||$_SESSION['ban'] > 3) { echo 'Podano 3x niewłaściwe dane... Żegnaj lolku! Twój IP został zbanowany!'; echo '</body></html>'; $bany = file_get_contents('ban.txt'); $plik = fopen('ban.txt', "r+"); fwrite($plik, $bany."\r\n".$ip); fclose($plik); exit; } else { if($login != 'jakistamlogin') { echo 'Wyjazd lolku!'; echo '</body></html>'; $_SESSION['ban']++; exit; } else { if($pass != 'jakistampass') { echo 'Wyjazd lolku!'; echo '</body></html>'; $_SESSION['ban']++; exit; } else { echo 'Witaj w Panlu Administracyjnym!'; } } } ?> </body> </html>

Co sądzicie o tym kodzie?
Na tej stronie nie ma baz danych...

Pozdro. :)

// Może jeszcze zrobić tak aby np w ciągu 15 sekund można tylko raz spróbować się zalogować?
Użytkownik master_dos edytował ten post 07 styczeń 2007, 18:30


Ja bym proponowal zebyś podał linka. Wtedy w praktyce będzie można przetestować panelik;]

Proszę bardzo:
http://www.yourpc.yoyo.pl/index.php

Ja bym nie mieszał kody PHP z kodem HTML.



Ale mniejsza o to...
Chodzi o poprawność skryptu logowania...
Więc jak jest?

$login = $_POST['login']; $pass = $_POST['pass'];

przydało by się filtrowanie tych zmiennych :)

To znaczy oczyścić ja z tych: " '
Tak?
Ale próbowałem na takiej zasadzie złamać kod i się nie dało...
Ale mogę to zrobić :P

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.