Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Есть ли уязвимость к CSRF?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Арикус
Отправлено: 02 Декабря, 2015 - 02:01:19
Post Id



Гость


Покинул форум
Сообщений всего: 123
Дата рег-ции: Июнь 2015  
Откуда: Москва, Россия


Помог: 0 раз(а)




Недавно узнал о CSRF-атаке и способе её предотвращения (токены). Но, так как у меня на сайте более 50 форм, хочу узнать, есть ли эта уязвимость в моём случае, прежде чем делать дурную работу.
В начале скрипта из сессии достаётся логин и пароль пользователя, и проверяется, есть ли такие логин и пароль в БД. Если есть, то устанавливается
CODE (htmlphp):
скопировать код в буфер обмена
  1. $dconnected = mysqli_fetch_row (mysqli_query($linki, "SELECT COUNT(*) FROM `users` WHERE `login` = '{$_SESSION['login']}' AND `password` = '{$_SESSION['password']}'"));

Так вот, нужно ли добавлять токены и их проверку, или достаточно к каждой обработки формы, доступной только пользователям добавить условие
CODE (htmlphp):
скопировать код в буфер обмена
  1. if ($dconnected[0] > 0)

?

(Отредактировано автором: 02 Декабря, 2015 - 03:57:47)

 
 Top
DeepVarvar Супермодератор
Отправлено: 02 Декабря, 2015 - 09:06:27
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Арикус пишет:
узнал о CSRF-атаке
И не понял как она работает.
Арикус пишет:
достаточно
Не достаточно.
Арикус пишет:
и способе её предотвращения (токены)
Через реферер будет одинаково эффективно.
Но щас опять набегут дядьки и начнут доказывать что реферер это швах, не рассматривая то, что токен это абсолютно такой же швах.
 
 Top
dcc0
Отправлено: 02 Декабря, 2015 - 16:41:20
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




А почему HTTP_REFERER плохо?
Нельзя ли детализировать?


-----
Март 2021. Бросил программирование
 
 Top
esterio
Отправлено: 02 Декабря, 2015 - 16:50:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




dcc0
недавно был топик аж на 4 страницы. загляните туда, там много полезной инфы
 
 Top
MiksIr
Отправлено: 02 Декабря, 2015 - 16:51:01
Post Id


Забанен


Покинул форум
Сообщений всего: 378
Дата рег-ции: Сент. 2014  


Помог: 10 раз(а)

[+]


dcc0 пишет:
А почему HTTP_REFERER плохо?
Нельзя ли детализировать?

Потому-что или придется посылать всех с пустым рефереом, т.е. тех, у кого он по какой-то причине блокируется (адд-оны, прокси и т.п.).
Или разрешать пустой реферер оставляя дырку для csrf, ибо есть возможность отправить csrf без реферера.


-----
self-banned
 
 Top
dcc0
Отправлено: 02 Декабря, 2015 - 17:11:01
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




MiksIr, а понял, спасибо. Я что-то не подумал об этом.


-----
Март 2021. Бросил программирование
 
 Top
DeepVarvar Супермодератор
Отправлено: 03 Декабря, 2015 - 11:54:15
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




MiksIr пишет:
адд-оны
Пользак в курсе и ССЗБ. Сокрытие попки и защита конкретного ресурса от конкретной атаки -- разные вещи.
MiksIr пишет:
прокси
1) Если соединение не секурное, то прокся может поменять и тело запроса, в том числе вырезать токен.
2) Если секурное, то:
а) при возможности (брут или наличие ключа) анализа и подмены трафа гото п. №1.
б) без расшифровки трафа, прокся не в состоянии поменять ни заголовки с реферером, ни тело запроса с токеном.
 
 Top
MiksIr
Отправлено: 03 Декабря, 2015 - 12:17:57
Post Id


Забанен


Покинул форум
Сообщений всего: 378
Дата рег-ции: Сент. 2014  


Помог: 10 раз(а)

[+]


DeepVarvar пишет:
Пользак в курсе и ССЗБ.

Нет. Антивирусы, банероблокировщики. Пользователь может быть не в курсе, что реферер блокируется. ПО мог установить кто-то еще. Сын - своим родителям, например.
DeepVarvar пишет:
Сокрытие попки и защита конкретного ресурса от конкретной атаки -- разные вещи.

Я уже писал это в той теме, но у вас плохо с понималкой и вы съехали с темы на "энтерпрайз", угу, когда сказать нечего.

Да, можно наплевать на таких людей. А можно и не наплевать. Если решение с токенами по каким-то причинам сложное - можно наплевать. Чаще всего токены можно внедрить без сильных затрат даже в существующий проект, и уж точно без проблем - в новый. Так зачем плевать на людей с блокированным реферером, если можно не плевать? Только потому, что у разработчика говно бурлит?

Если вы делаете форму получения беслатного подарка - то ССЗБ. А если что-то связанное с получением вами или вашим работодателем дохода - то ССЗБ уже вы. По большому счету, тем и отличается говнокодер он серьезного разработчика, даже мидла, наверное, не говоря уже о сеньорах - просчитыванием своих решений и их последствий.

Более того. Передача данных формы - это важная часть работы всего веба. Никто и никогда, никакие браузеры и т.п. не начнут резать половину данных. А вот с реферером - такого уже не скажешь. Ибо это наибесполезнейший заголовок, важный разве что сеошникам, и то уже не очень.

На сим закончим. Если для вас реферер - это местый бог интернета и вы на него молитесь и верите в него - ваше право.

DeepVarvar пишет:
Если соединение не секурное, то прокся может поменять и тело запроса, в том числе вырезать токен.

С чего бы это? Реферер может вырезать администратор прокси (да, я говорю про корпоративные прокси) просто так. Покажется ему, что так privacy пользователей фирмы соблюдается лучше (к слову, и будет прав). А пост данные то зачем ему резать? В данном случае ваша фантазия бред.

DeepVarvar пишет:
при возможности (брут или наличие ключа) анализа и подмены трафа гото п. №1

Не по теме, но корпоративные прокси поступают проще. У всех компьютеров фирмы установен свой собственный корневой сертификат как доверенный. С помощью его "на лету" выдается сертификат тому https домену, куда идет сотрудник.

(Отредактировано автором: 03 Декабря, 2015 - 12:25:36)



-----
self-banned
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB