Безопасность ЛС: Раскрытие директорий в ЛС
Вряд ли это можно назвать серьезной дырой, но все же это есть:
Вызов по прямой ссылке любого модуля из директории модулей ядра ЛС вызывает ошибку, которая раскрывает полный путь в файловой системе и имя аккаунта на сервере. Например, прямое обращение в модулю кеширования:
В результате получаем ошибку не нахождения класса конфига (Config):
В ошибке высвечивается username — имя аккаунта на сервере.
Для некоторых модулей ошибка будет связана с не нахождением класса модуля (Module)
В каждый файл в /engine/modules/*/ после 1 строки вставить код:
ИЛИ (рекомендуется)
Положить в директорию /engine/modules/ файл .htaccess с следующим содержимым:
Оригинал здесь
- Уровень опасности: низкий
- Тип: раскрытие имени пользователя (аккаунта) на сервере
- Версии движка, которые подвержены данной опасности: все, начиная с LS 0.4
Вызов по прямой ссылке любого модуля из директории модулей ядра ЛС вызывает ошибку, которая раскрывает полный путь в файловой системе и имя аккаунта на сервере. Например, прямое обращение в модулю кеширования:
http://site.com/engine/modules/cache/Cache.class.php
В результате получаем ошибку не нахождения класса конфига (Config):
Fatal error: Class 'Config' not found in /home/username/public_html/engine/modules/cache/Cache.class.php on line 18
В ошибке высвечивается username — имя аккаунта на сервере.
Для некоторых модулей ошибка будет связана с не нахождением класса модуля (Module)
РЕШЕНИЕ
В каждый файл в /engine/modules/*/ после 1 строки вставить код:
// prevent hacking
if (!class_exists ('Config') or !class_exists ('Module')) die ('Slow down, cowboy!');
ИЛИ (рекомендуется)
Положить в директорию /engine/modules/ файл .htaccess с следующим содержимым:
Order Deny,Allow
Deny from all
Оригинал здесь
14 комментариев
И попробуйте что-либо создать (новый блог хотя бы)
успешно создается
(https://github.com/livestreet/livestreet/commit/c2231cd3a104970c88687699afbb68ccddbf8d48#L24R115)
можно вызвать снова ошибку приведения типов. предлагаю там сделать так:
URL
нет никаких ошибок, опиши подробнее
8 пункт