в фале view.php и viewp.php
найти строчку 10
$adse=limpiar($_GET["ad"])
заменить на
$adse=(int)limpiar($_GET["ad"])
для защиты от накрутки (версия 2) следует сделать:
1. Войдите в PhpMyAdmin в панеле управления сайтом.
2. Выбираем базу данных SQL на которой стоит ваш скрипт Bux.
3. Далее в левой колонке мы видем открывшиеся дампы SQL базы. В левой колонке нажимаем на дамп tb_ads. У нас открылась новая страница. Выбираем строку ident и жмём её редактирование.
4. Далее, в новом окне мы видим настройки: varchar - 150 - not null. Теперь меняем настроки: varchar на INT, 150 на 11, Not null на Null и сохраняем. Всё, теперь у вас баг накрутки закрыт.
2. Добавление поля WMID
переписать файлы profile.php register.php в архиве на ваш хостинг.
подредактировать дизайн если нужно
теперь поле (pemail) назвать WMZ
а новое поле WMID
также в базе выпонить SQL запрос
ALTER TABLE `tb_users` ADD `wmid` varchar(150) NOT NULL;
и оповестить всех пользоватлей чтобы внесли изменнения
3. Для исправления даты входа
файл login.php
найти строчку
$lastlogdate=date ($lastlogdate=time();)
заменить на
$lastlogdate=date("d.m.Y");
4. Для исправления даты регистрации
файл login.php
найти строчку
$joindate=date ($joindate=time();)
заменить на
$joindate=date("d.m.Y");
5. для защиты от SQL и XSS
взять файлик .zsecurity.php скопировать в корень
в файлы advertise.php convert.php login.php register.php
в самом начале файлов
session_start();
?>
заменить на
require_once('.zsecurity.php');
session_start();
?>
УЯЗВИМОСТЬ:
$sendfrom=$_COOKIE["usNick"]; заменить на $sendfrom=limpiar($_COOKIE["usNick"]);
в реплисмс.пхп
-----------------------------------------------------------------
$trok=uc($_COOKIE["usNick"]);
заменить это
на это:
if(isset($_COOKIE["usNick"]) && isset($_COOKIE["usPass"])) { $trok=uc($_COOKIE["usNick"])
;
заменить это
$queryb = "UPDATE tb_users SET password='$password', ip='$laip', email='$email', pemail='$pemail', country='$country' WHERE username='$trok'"; mysql_query($queryb) or die(mysql_error());
echo "..."; ?>
<META HTTP-EQUIV="REFRESH" CONTENT="1;URL=logoutp.php">
на это:
$queryb = "UPDATE tb_users SET password='$password', ip='$laip', email='$email', pemail='$pemail', country='$country' WHERE username='$trok'"; mysql_query($queryb) or die(mysql_error());
echo "..."; ?>
<META HTTP-EQUIV="REFRESH" CONTENT="1;URL=logoutp.php">
<? }else{ exit('Анти хак защита, ваш IP отправл
яен на рассмотрение в соответсвующие органы!'); }
в профил.пхп
---------------------------------------------------------------------
function limpiarez($mensaje)
{ $mensaje = str_replace("'"," ",$mensaje);
$mensaje = str_replace(";"," ",$mensaje);
$mensaje = str_replace("$"," ",$mensaje); return $mensaje; }
замени на
function limpiarez($mensaje) { $mensaje = str_replace("'"," ",$mensaje); $mensaje = str_replace(";"," ",$mensaje); $mensaje = str_replace("$"," ",$mensaje); $mensaje = str_replace("<"," ",$mensaje); $mensaje = str_replace(">"," ",$mensaje); return $mensaje; }
в адвертайс.пхп
---------------------------------------------------------------------
$adse=limpiar($_GET["ad"]);
на
if(preg_match("|^[d]*$|",$_GET['ad']))
{
$adse=$_GET["ad"];
} else die("Invalid advert ID.");
в виев.пхп и виевп.пхп
Защита:
Файлы которые нужно исправить: advertise.php, contact.php, convert.php, register.php, profile.php, logoun.php
в файле advertise.php
после
$pemail=limpiarez($_POST["pemail"]);
$plan=limpiarez($_POST["plan"]);
$url=limpiarez($_POST["url"]);
$description=limpiarez($_POST["description"]);
$bold=limpiarez($_POST["bold"]);
$highlight=limpiarez($_POST["highlight"]);
добавить
$url=htmlspecialchars($url); // Защита от взлома
$pemail=htmlspecialchars($pemail); // Защита от взлома
$description=htmlspecialchars($description); // Защита от взлома
в файле contact.php после(можно не удалять!)
$name=limpiar($_POST["name"]);
$email=limpiar($_POST["email"]);
$topic=limpiar($_POST["topic"]);
$subject=limpiar($_POST["subject"]);
$comments=limpiar($_POST["comments"]);
добавить
$name=htmlspecialchars($name); // Защита от взлома
$email=htmlspecialchars($email); // Защита от взлома
$topic=htmlspecialchars($topic); // Защита от взлома
$subject=htmlspecialchars($subject); // Защита от взлома
$comments=htmlspecialchars($comments); // Защита от взлома
в файле convert.php
после
$link=limpiar($_POST["link"]);
$description=limpiar($_POST["description"]);
добавить
$link=htmlspecialchars($link); [i]// Защита от взлома[/i]
$description=htmlspecialchars($description); [i]// Защита от взлома[/i]
Поставь ето система зашиты.
___В файле register.php поставить ограничения на ввод WMZ и емайл до 25символов!(обязательно!)
___Контакты удалить и написать свою асю и емайл.
___В форме "вход" поставить ограничения на поле пароль(20 символов)
___В форме "Рекламодателю" поставить ограничения на ввод текста ссылки(40символов) и WMZ(15символов) - желательно!
___Желательно сделать в файле profile.php чтоб пользователи не могли менять свои данные сами(были случаи кражи паролей админа и других пользователей)