Обучение/Помощь новичкам | Ид взлом дцмс
668582623 (11.08.2021 в 16:04)
Пупсь , ты видимо, ещё и в школе плохо учился/учишься, что даже читать не умеешь.
https://www.php.net/manual/ru/mysqli.quickstart.prepared-statements.php
Пупсь , ты видимо, ещё и в школе плохо учился/учишься, что даже читать не умеешь.
https://www.php.net/manual/ru/mysqli.quickstart.prepared-statements.php
Заходи теперь и внимательно читай, а не куски сюда копируй, Васек
Пупсь , остановись, не позорься.
Допустим напишешь соц.сеть, форум, онлайн игру или любой проект со сложной структурой и с обильным выполнением запросов. Подготовленный запрос будет эффективнее.
________
посл. ред. 11.08.2021 в 16:24; всего 3 раз(а); by 668582623
Количество строк с текстом запроса, переданных клиентом на сервер:
Обычный запрос: n раз и каждый раз разбирается
Подготовленный запрос: 1 шаблон, n раз параметры, если есть
Обычный запрос: n раз и каждый раз разбирается
Подготовленный запрос: 1 шаблон, n раз параметры, если есть
Допустим напишешь соц.сеть, форум, онлайн игру или любой проект со сложной структурой и с обильным выполнением запросов. Подготовленный запрос будет эффективнее.
________
посл. ред. 11.08.2021 в 16:24; всего 3 раз(а); by 668582623
По поводу CSRF этим болеет как правило POST запрос.
Я себя защищаю так может кому пригодится :
ТОКЕН генерирую :
можно использовать конечно встроенные функции генератора вместо md5 но я этим не болею суть не меняется ....
Проверять можно по куках или сессиях токен.
Дабы не захаращивать лишний раз сервер сессиями я это делаю по куках
.
Форма отправки :
Перед отправкой забиваем в куку токен :
Время жизни куки 5 минут после токен мертвый!
Ну и проверка формы что то типа;
________
посл. ред. 11.08.2021 в 16:40; всего 1 раз(а); by Mr.Max
Я себя защищаю так может кому пригодится :
ТОКЕН генерирую :
php
$CSRF = md5('ТУТ ВАШ КЛЮЧ'.time().preg_replace('/[^0-9.]/', '', $_SERVER['REMOTE_ADDR']).time()); можно использовать конечно встроенные функции генератора вместо md5 но я этим не болею суть не меняется ....
Проверять можно по куках или сессиях токен.
Дабы не захаращивать лишний раз сервер сессиями я это делаю по куках
.
Форма отправки :
php
<form action="" method="post">
<input type="text" name="login" required="" value="">
<input name="CSRF" type="hidden" value="<?=$CSRF?>">
<input class="button" type="submit" name="submit" value="Отправить">
</form> Перед отправкой забиваем в куку токен :
php
if(!isset($_POST['submit']) ? setcookie('token', $CSRF, time() + 300) : null); Время жизни куки 5 минут после токен мертвый!
Ну и проверка формы что то типа;
php
<?
if(isset($_COOKIE['token']) != ОБРАБОТЧИК($_POST['CSRF'])):
echo 'Токен проверки неверный или его срок истек!';
endif;
?> ________
посл. ред. 11.08.2021 в 16:40; всего 1 раз(а); by Mr.Max
Авторизация так же можно защитить и подвязать как то так:
Добавляем :
Проверяем:
Типа если захотят слить куки то по этому методу получат болта так как привязка по токену + IP
________
посл. ред. 11.08.2021 в 16:48; всего 1 раз(а); by Mr.Max
php
$CSRF_avtorize = md5('КЛЮЧ'.preg_replace('/[^0-9.]/', '', $_SERVER['REMOTE_ADDR'])); Добавляем :
php
setcookie('csrf', $CSRF_avtorize, time() + 43200); Проверяем:
php
if(isset($_COOKIE['какойто логин']) && isset($_COOKIE['типа пасс']) && Обработчик($_COOKIE['csrf']) == $CSRF_avtorize):
echo 'НОРМ АВТОРИЗИРОВАЛИ';
endif; Типа если захотят слить куки то по этому методу получат болта так как привязка по токену + IP
________
посл. ред. 11.08.2021 в 16:48; всего 1 раз(а); by Mr.Max
Ну для начала купить букварь
Mr.Max , пишите дира он как будить я ишу в скрипт
Mr.Max , как будить элементарной фильтр
663497723 , научите как надо фильтруют
378019847 (11.08.2021 в 17:34)
Mr.Max , пишите дира он как будить я ишу в скрипт
Mr.Max , пишите дира он как будить я ишу в скрипт
Я ничего не понял ну да ладно
378019847 (11.08.2021 в 17:35)
Mr.Max , как будить элементарной фильтр
Mr.Max , как будить элементарной фильтр
Для текста htmlspecialchars(trim())
Для цыфр abs(intval())