Na wlasne potrzeby stworzylem nastepujacy formularz logowania oparty o sesje.
Składa sie ze standardowej bazy mysql w ktorej stworzona jest tabela adimin oraz z trzech plikow:
conf.php:
<? ?>
ktory hosta, usera i password pobiera za pomoca explode z osobnego pliku php:
<? nazwa_hosta | user | password ?>
kolejny plik to admin.php:
<? include_once('katalog/logadm.php'); include_once('katalog/conf_adm.php'); if($_SESSION['logadm'] == 'ok') { ?> <BR><P class=title><B>Witaj w panelu administracyjnym</B></P> <?php } else { ?> <BR><P class=title><B>Witaj w panelu administracyjnym - zaloguj się aby uzyskać pełen dostęp do serwisu</B></P> <?php } ?> <?php ?>
oraz logadm.php:
<?php include('conf_adm.php'); $dane = @mysql_query('SELECT login, password FROM admin WHERE login = "'.$_POST['loginadm'].'" AND password= "'.$_POST['passadm'].'"') or die(mysql_error()); $_SESSION['logadm'] = 'ok'; } else { $_SESSION['logadm'] = '<P class=blad>Błędny login lub hasło!'; } } } function logadm() { if($_SESSION['logadm'] == 'ok') { $string .= ' <input type="submit" name="unlogadm" value="Wyloguj" />'; $string .= '</form>'; } else { $string .= ' <ul style="list-style-type: none; margin: 0; padding: 0;">'; $string .= '<li>'.$_SESSION['logadm'].'</li>'; $string .= '<li><P class=normal>Login: <input type="text" name="loginadm" style="width: 130px"/></li>'; $string .= '<li><P class=normal>Haslo: <input type="password" name="passadm" style="width: 130px"/></P></li>'; $string .= '<li><input type="submit" name="logadm" value="Logowanie" /></li>'; $string .= '</ul>'; $string .= '<BR><TABLE align=center class=haslo CELLPADDING="0" CELLSPACING="0"><TR><TD ALIGN=center>'; $string .= '<a href=admin_instal_adm.php>instalacja bazy</A> '; $string .= '</TD><TD ALIGN=center><P class="title">|</P>'; $string .= '</TD><TD ALIGN=center> <a href=admin_instal_adm.php>help</A>'; $string .= '</TD></TR></TABLE>'; $string .= '</form>'; } return $string; } ?>
pliki conf.php, logadm oraz ten z hostem, adminem i haslem umiescilem w katalogu chronionym przez .htaccess
Problem polega na tym czy mechnizm jaki stworzylem oprze sie atakom hakershitow i czy da sie zastosowac jeszcze jakies mechnizmy, zeby wzmocnic obrone?? Jesli znajdziecie jakies dziury to prosze o sygnaly i zgloszenia.
Z gory dzieki za lawinowo odsylane odpowiedzi
