Pull to refresh
0
0
vandroid @vandroid

User

Send message
Касательно HTTPS у меня есть одна проблемка, которая не дает покоя.

Допустим, на сайте существует приватная зона, где редактируется профиль, пароль и т.п.
На том же сайте есть каталог производителей и товаров. Я хочу, чтобы на каждой странице каталога пользователь мог оставить комментарий и поставить оценку.
Как мне лучше это реализовать с точки зрения безопасности?

Вижу 3 варианта:

1. Отдавать залогинившимся пользователям все страницы каталога только по https
    + наилучшая защита
    -  коллеги по работе, посетители и конкуренты решат, что разработчик - придурок и параноик

2. Страницы каталога отдавать по http, для комментариев использовать iframe с https
    + "нормальный, привычный" вид адресной строки
    -  считается, что небезопасно смешивать на одной странице данные http/https

3. Страницы каталога отдавать по http, комментирующие идентифицируются небезопасной кукой.
    + наиболее часто используемый вариант, довольно простой
    -  система комментирования будет подвержена атакам (cookie hijacking и т.п.)

Что из этого мне предпочесть? Может есть варианты получше?
IMHO виноваты не только «глупые» пользователи. Плохо, что большинство систем регистрации ограничивают возможную длину пароля. Я не понимаю, какого черта они это делают? Есть же такая замечательная штука, как парольные фразы. И пользователям удобно, и взломщикам неприятно.
Хотелось бы увидеть конкретные примеры функции редукции. Есть ли какие-либо рекомендации по их выбору, кроме инъективности? В свое время искал и не нашел.
Я думал, что проблема SQL injection раз и навсегда решена с помощью prepared statements.

$stmt = $mysqli->prepare(«SELECT User FROM Accounts WHERE Name=?»);
$stmt->bind_param(«s», $user);
$stmt->execute();

Поправьте пожалуйста, если я ошибаюсь.
Если бы я раздобыл пароль от фтп, то обязательно внедрился бы в серверный код :))
А ваш краулер, периодически опрашивающий сайты, обладает характеристиками браузера? (user agent, cookies и т.п.)? Иначе взломщики выявят его и отдадут чистую индексную страницу :)
Подход к решению проблемы выбран конечно интересный, но, как уже написали выше, можно ведь «допилить» враждебный жскрипт так, что его характеристики не отличить от обычных. Все-таки найти коллизию для хэш-функции куда сложнее.
На вашем сайте написано:

An error has occurred
Error
No global config file could be found
Powered by Seagull PHP Framework

Не самая лучшая реклама для, пожалуй, одного из самых лучших PHP-фреймворков.

Information

Rating
Does not participate
Location
Уфа, Башкортостан(Башкирия), Россия
Registered
Activity