Здравейте колеги,
Ще ви помоля за мемието ви дали тези два скрипта са достатъчно сигурни за което за предазначени.
Доста търсих из интернета, а и книги четох и това успях да измисля:
Целта ми в пръвия е да почисти входните данни от пост масива, като в същото верме, като и
прекрати автоматизирани ботове.
GeSHi (PHP):
<?php
if ((isset($_POST['add']) && $_POST['add']=='1')) { if (isset($_SESSION['token']) && $_POST['token'] == $_SESSION['token']) {
$token_age = time() - $_SESSION['token_time'];
if (($token_age < $maxTime) && ($token_age > $minTime ))
{
$valueTitle=array('Господин','Госпожа','Госпожица');text
if(in_array($_POST['title'],$valueTitle)) {$clean['title']=$_POST['title'];
} if(preg_match("/^[a-zA-ZА]{3,32}$/",$_POST['name'])) {$clean['name']=$_POST['name'];
} }}}
$_SESSION['token_timestamp'] = time();
echo "<form action='' method='POST'> Username: <input type='text' name='username' />
<input type='hidden' value=".$token." name='token' />
<input type='submit' />
</form>";
?>
А врория от тях е създаването на сесия, за оторизиран потребител, до ограничена част на сайта.
GeSHi (PHP):
//someWhereInSite.php
<?php
if (isset($_SESSION['HTTP_USER_AGENT'])) {
if ($_SESSION['HTTP_USER_AGENT'] != md5($_SERVER['HTTP_USER_AGENT'])) {
echo "<form action='login_check.php' method='POST'> Username: <input type='text' name='username' />
<input type='submit' />
</form>";
/* Prompt for password */
}
else
{ echo "Inside security zone";
}
}
if (!isset($_SESSION['HTTP_USER_AGENT'])) {
echo "<form action='login_check.php' method='POST'> Username: <input type='text' name='username' />
<input type='submit' />
</form>";
}
?>
//login_check.php
<?php
if (!isset($_SESSION['HTTP_USER_AGENT']) && isset($_POST['username'])) {
if ($_POST['username'] == 1)
{
$_SESSION['HTTP_USER_AGENT'] = md5($_SERVER['HTTP_USER_AGENT']);
echo "Inside security zone<br>";
}
else {echo "greshna parola";exit;
}
?>
Моля дайте ваште мнения, изказвания и препръки.