miniden
29.06.2007, 02:58
Привет всем. Я долго изучал движок Интернет магазина Shop-script. Задавая вопросы на ачате искал уязвимости,
и вот наконец-то мною бил обнаружен один косяк.
Итак, одно прекрасной ночью, когда я сидел в очередной раз сидел и
изучал имеющиеся файлы в архиве магазина мне в глаза попался замечательный файл customers.csv
Этот файл создается, если в админке, в разделе "Покупатели" нажать "Экспортировать пользователей в Excel файл".
Эту кнопку нажимают, чтоб иметь на компе базу своих пользователей,
и конечноже тупые админы часто забывают эти файлы удалять.
И именно здесь есть одна прелесть, а прелесть эта заключается в том,
что админ тоже есть пользователь и входит в эту базу.
База выглядит вот так
Login;Password;Email;First name;Last name;Country;ZIP;State;City;Address;Phone number;
qwe;qwe;qwe@.ru;qwe;qwe;qwe;qwe;qwe;qwe;qwe;654654 ;
shop;shop;;;;;;;;;;
qwe-это просто пользователь
shop-это и есть админ, его выдает то, что он не заполнял свою анкету и инфы
которая должна быть между ;; отсутствует, поэтому там просто ;;;;;;;;;;
логин пас есть, слушаем дальше.
По дефолту в шоп скрипте логин MANEGER, а пас 123,
я встречал довольно таки много шопоф с стандартными настройками..
если же админ всеравно поменял и логин и па и заполнил инфу, то естественно он сливается с
пользователями и его казалось би, хрен найдешь, но нет, все есть пару методоф.
в адресной строке пишем http://адрес сайта точка ру/index.php?aux_page=../cfg/connect.inc.php
в сорсах должна бить такая штука
define('DBMS', 'MYSQL'); // database system
define('DB_HOST', 'localhost'); // database host
define('DB_USER', 'shop'); // username
define('DB_PASS', '159'); // password
define('DB_NAME', 'shop'); // database name
define('ADMIN_LOGIN', 'shop'); //administrator's login
и тут опять два хода или берем, шел и конектимся к базе по эти настройкам, потом лезем
SS_customers тама ищем юзера с именем указанном в define('ADMIN_LOGIN', 'shop');
логин пас есть идем лить шелл.
Либо путь второй, смотрим define('ADMIN_LOGIN', 'shop');
и в файле customers.csv ищем юзера с таким логином, логин пас есть лезем в админку, льем шелл.
Итак, вот мы все сделали, мы в админке, и хотим залить шелл,
клацаем "Категории и товары"/[ Добавить ] потом в любое поле
с фотками указываем путь к шеллу, тыцаем сохранить. Шел ждет вас по адресу
http://адрес сайта точка ру/products_pictures/ваш shell.php
заливаем в другое место на сервере шел, старый удаляем,
это для того чтобы небыло такого что админ буит просматривать свой сайт, а тут
бац на месте где должна быть фотка квадратик, и адрес к этому квадратику
http://адрес сайта точка ру/products_pictures/ваш shell.php
Спасибо Shop-Script'у за их магазин,
статье журнала xakep
В принципе все)))
и вот наконец-то мною бил обнаружен один косяк.
Итак, одно прекрасной ночью, когда я сидел в очередной раз сидел и
изучал имеющиеся файлы в архиве магазина мне в глаза попался замечательный файл customers.csv
Этот файл создается, если в админке, в разделе "Покупатели" нажать "Экспортировать пользователей в Excel файл".
Эту кнопку нажимают, чтоб иметь на компе базу своих пользователей,
и конечноже тупые админы часто забывают эти файлы удалять.
И именно здесь есть одна прелесть, а прелесть эта заключается в том,
что админ тоже есть пользователь и входит в эту базу.
База выглядит вот так
Login;Password;Email;First name;Last name;Country;ZIP;State;City;Address;Phone number;
qwe;qwe;qwe@.ru;qwe;qwe;qwe;qwe;qwe;qwe;qwe;654654 ;
shop;shop;;;;;;;;;;
qwe-это просто пользователь
shop-это и есть админ, его выдает то, что он не заполнял свою анкету и инфы
которая должна быть между ;; отсутствует, поэтому там просто ;;;;;;;;;;
логин пас есть, слушаем дальше.
По дефолту в шоп скрипте логин MANEGER, а пас 123,
я встречал довольно таки много шопоф с стандартными настройками..
если же админ всеравно поменял и логин и па и заполнил инфу, то естественно он сливается с
пользователями и его казалось би, хрен найдешь, но нет, все есть пару методоф.
в адресной строке пишем http://адрес сайта точка ру/index.php?aux_page=../cfg/connect.inc.php
в сорсах должна бить такая штука
define('DBMS', 'MYSQL'); // database system
define('DB_HOST', 'localhost'); // database host
define('DB_USER', 'shop'); // username
define('DB_PASS', '159'); // password
define('DB_NAME', 'shop'); // database name
define('ADMIN_LOGIN', 'shop'); //administrator's login
и тут опять два хода или берем, шел и конектимся к базе по эти настройкам, потом лезем
SS_customers тама ищем юзера с именем указанном в define('ADMIN_LOGIN', 'shop');
логин пас есть идем лить шелл.
Либо путь второй, смотрим define('ADMIN_LOGIN', 'shop');
и в файле customers.csv ищем юзера с таким логином, логин пас есть лезем в админку, льем шелл.
Итак, вот мы все сделали, мы в админке, и хотим залить шелл,
клацаем "Категории и товары"/[ Добавить ] потом в любое поле
с фотками указываем путь к шеллу, тыцаем сохранить. Шел ждет вас по адресу
http://адрес сайта точка ру/products_pictures/ваш shell.php
заливаем в другое место на сервере шел, старый удаляем,
это для того чтобы небыло такого что админ буит просматривать свой сайт, а тут
бац на месте где должна быть фотка квадратик, и адрес к этому квадратику
http://адрес сайта точка ру/products_pictures/ваш shell.php
Спасибо Shop-Script'у за их магазин,
статье журнала xakep
В принципе все)))