ReloadCMS — движок для небольших проектов. Одна из особенностей — движок хранит абсолютно все в файлах и не работает с базой данных.

Ошибку я нашел в модуле pages. Скрипту передается  параметры pageid и locate из которых собирается имя файла. Далее файл инклудится на главную страницу. По задумке автора файлы для инклуда должны лежать в /content/pages. Но если в параметр pageid подставить что-то типа

pageid=../../../../../../../../../etc/passwd%00&locale=html

то скрипт отобразит файл, если он существует. Главное — не забыть после имени файла вставить символ окончания строки %00.

База юзеров хранится в /content/users/ причем, на отдельного пользователя — отдельный файл. Таки образом можно узнать MD5-хеш пароля любого пользователя и админа сайта в том числе. Запрос при этом выглядит примерно так:

http://<site>/?module=pages&pageid=.././content/users/admin%00&locale=html

где admin — логин администратора/пользователя.

Кстати, логин легко можно узнать, посмотрев профиль юзера. Самое интересное, что для пароля в этом движке можно использовать только прописные латинские буквы и цифры. Пароль с помощью MD5 inside подбирается очень быстро…

Примеры взломанных сайтов:

http://yurasiq.alfamoon.com
http://warcraft.alfamoon.com

Оставить мнение