Безопасность прежде всего!

Полезные советы по обеспечению безопасности вашей установки Webasyst

Содержание...

1. Изменение адреса бекенда

По умолчанию используется адрес /webasyst/. Для его изменения необходимо добавить следующую строку в файл wa-config/config.php:

'backend_url' => 'admin',    // в этом случае бекенд будет открываться по адресу /admin/

Фрагмент 'admin' в приведённом выше примере можно заменить на любую другую строку.

URL входа в бекенд можно сделать динамическим, например:

'backend_url' => 'admin'.date('d'),

Вызов PHP-функции date('d') возвращает число месяца; например, 8 июня эта функция вернёт 08. Таким образом, для доступа в бекенд именно в этот день необходимо будет использовать адрес /admin08/.

2. Изменение функции генерации хеша паролей пользователей

Фреймворк не хранит пароли пользователей в открытом виде ­— хранится только хеш пароля. Для совместимости с другими системами и прежними версиями скриптов WebAsyst по умолчанию в качестве функции хеша используется функция md5($password).

Современные графические процессоры позволяют довольно быстро перебирать пароли, зашифрованные с использованием алгоритма md5. Это значит, что в случае утечки хешей паролей ваших пользователей многие пароли могут быть быстро расшифрованы.

Начиная с версии фреймворка 1.0.8 появилась возможность задать свою функцию формирования хеша пароля. Для этого нужно в конце файла wa-config/SystemConfig.class.php добавить объявление функции wa_password_hash(), например:

function wa_password_hash($password)
{
    return md5(sha1("S!aL:T1%(#".$password)."_s+A=lT,2?*");
}

Строки S!aL:T1% и _s+A=lT,2?* в этом примере называют «солью». При редактировании функции задайте ваши собственные значения этим строкам. Добавление «соли» сделает хеши более устойчивыми к расшифровке (брутфорсу).