Настройки безопасности движка, требующие к себе внимания.

Настройки безопасности Nano-CMS.

Выставляются всё в том же файле настроек ./data/settings.php относительно корня скрипта.

1) "Соль" для хэширования:

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

    'rnd' => md5('write here any random sentence!'),

Вы обязаны заменить фразу write here any random sentence! на собственную, написанную латиницей. Будет хорошо, если в качестве такой фразы фигурирует самая что ни на есть абракадабра знаков этак в 60 или даже больше.

2) Брутфорс:

При попытке подбора логина и пароля методом перебора по словарю полезно блокировать на час доступ с айпишника атакующего. Пусть взломщик лишится доступа к сервису авторизации при определённом числе неудачных попыток. Данная настройка как раз и задаёт число таких попыток:

    'brutt' => 5,

3) Content Security Policy:

Есть популярная статья про то, что это такое, зачем нужно, и как работает.

"Чистая CSP" политика прописана в настройках так:

   'csp' =>  " default-src 'self';"
            
." img-src data: 'self';"
            
." script-src 'unsafe-inline' 'self';"
            
." frame-src 'self';"
            
." object-src 'self';"
            
." connect-src 'self';"
            
." style-src 'unsafe-inline' 'self';"
            
." media-src *;"
            
." font-src 'self';"
            
." form-action 'self';",

Если Вам не нужен данный элемент безопасности, сотрите его целиком.

Контроль содержимого URL-ов.

ЧПУ движка работает только с определёнными символами в адресах документов, задаваемых отдельно для папок и файлов:

    'conf' => array(                            # Допустимые символы:
      
'dir' => 'a-z0-9-/',                      # в имени директорий.
      
'fil' => 'a-z0-9-_',                      # в имени файла.
   
),

Всё, что не подпадает под такую регулярку, игнорируется.
GET-параметры также не принимаются в расчёт.