Безопасность

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
gax
Сообщения: 30
Зарегистрирован: 2014.08.21, 17:12

Безопасность

Сообщение gax »

У меня админка - единственное место где используется авторизация. Нужно сильна сильна её защитить, но не имея никаких знаний в области взлома, я даж не понимаю от чего её защищать.
Вот например, модуль админа называется admin.
то есть при переходе на site.c/admin вылезет форма входа, которую по логике можно брутить, от этого можно каптчу поставить наверно. Но вообще правильно ли так делать?
Дальше, достаточно ли валидации:

Код: Выделить всё

            
array('username, password', 'required'),
array('username, password', 'length', 'min'=>3, 'max'=>64),
array('username, password', 'match', 'pattern'=>'#^[a-zA-Z0-9_\.-]+$#', 'message'=>'Wrong symbols'),
 
И еще, если после логина или регистрации не производить редирект, то в поле ввода логина и пароля появляется логин и пароль. Я так понял, это связано с тем что на полях формы висят атрибуты модели. Достаточно ли будет переименовать небезопасные поля формы, и присвоить их в ручную в к атрибутам? И есть ли в этом смысл вообще?

Мне тяжело сейчас, я начитался всяких крутых книжек по ооп и пытаюсь все делать красиво и правильно, но опыта не хватает и каждая проблема вызывает когнитивный диссонанс :(
Аватара пользователя
SiZE
Сообщения: 2817
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Безопасность

Сообщение SiZE »

'#^[a-zA-Z0-9_\.-]+$#'
Спасибо, что сузил количество вариантов логина и пароля. =)

В версии 1.1.14 появился класс CPasswordHelper используй его для записи и проверки пароля. Почитай про crypt, blowfish. Ну и как вариант использовать не admin, а какое нибудь другое название.
yan
Сообщения: 942
Зарегистрирован: 2011.03.23, 09:28
Откуда: Уфа

Re: Безопасность

Сообщение yan »

капча встроенная идет, как ее подключить - ищите примеры, лучше всего показывать ее после какой-то по счету неверной попытки авторизации с данным логином, тогда и пользователю не будет проблем и брутфорсить сложнее
gax
Сообщения: 30
Зарегистрирован: 2014.08.21, 17:12

Re: Безопасность

Сообщение gax »

Я использую пасвордхелпер.
Про капчу тоже знаю.
Может ктонбудь структурировать информацию?

вот тот же пассвордхелпер используется в примере регистрации на элисдн:
if ($this->new_password)
{
$this->salt = $this->generateSalt();
$this->password = $this->hashPassword($this->new_password, $this->salt);
}
return true;
Hashpassword() метода там нет, но если предположить что он из мануала и выглядит как
public function hashPassword($password)
{
return CPasswordHelper::hashPassword($password);
}
То в нем нет никакого смысла потому что в хелпере и так генерируется соль.
Я понимаю что может он там другой, но зачем он вообще нужен, если хелпер можно применить сразу в контроллере без лишних танцев с бубном и методами?
Как с вашей точки зрения, как профессионального программиста, должна выглядеть форма входа и какие элементы защиты будут для неё рациональны?
Как правильно выполнить валидацию? нужно ли скрывать вход в админку? Какого рода атаки могут происходить на этот модуль и от чего yii защищает, а от чего нет?
Ни одной нормальной статьи на эту тему в инете не нашел.
Аватара пользователя
SiZE
Сообщения: 2817
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: Безопасность

Сообщение SiZE »

Если ты все знаешь, то должен знать и то, что при хешировании пароля через bcrypt осуществляется задержка в 1-2 секунды, что делает подбор пароля практически невозможным в короткое время.

Самая надежная защита от дистанционного взлома на данный момент это ЭЦП (ключ на флешке) + все запросы с SSL. ИМХО.
gax
Сообщения: 30
Зарегистрирован: 2014.08.21, 17:12

Re: Безопасность

Сообщение gax »

Я написал 2 поста с конкретными вопросами, а вы мне посоветовали то что косвенно относится к теме и о чем я не спрашивал.
Спасибо, что сузил количество вариантов логина и пароля. =)
вот это вот шутка юмора смешная, или что. я вообще не понял. Объясни.
Я очень ценю, что вы тратите время на помощь мне, но нам всем будет лучше, если вы будете тратить его, давая продуктивные комментарии.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Безопасность

Сообщение samdark »

Чем меньше вариантов, тем проще сбрутфорсить...
Аватара пользователя
ElisDN
Сообщения: 5845
Зарегистрирован: 2012.10.07, 10:24
Контактная информация:

Re: Безопасность

Сообщение ElisDN »

gax писал(а):вот это вот шутка юмора смешная, или что. я вообще не понял. Объясни.
Уберите password из третьего правила, чтобы Wrong symbols только для username работало.
Ответить