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

  #482  
Старый 31.07.2013, 22:45
TRX.new
Участник форума
Регистрация: 27.04.2009
Сообщений: 189
Провел на форуме:
1141766

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

Вопрос

Подвержен ли данный код LFI ?

В папке "../../download" лежит шелл, как его проинклудить через

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"]$route[/COLOR][/COLOR
?

PHP код:
PHP:
[
COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]public function[/COLOR][COLOR="#0000BB"]__construct[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$route[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$args[/COLOR][COLOR="#007700"]= array()) {

[/
COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"];



[/COLOR][COLOR="#0000BB"]$parts[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]explode[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'/'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'../'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"], (string)[/COLOR][COLOR="#0000BB"]$route[/COLOR][COLOR="#007700"]));



foreach
([/COLOR][COLOR="#0000BB"]$parts[/COLOR][COLOR="#007700"]as[/COLOR][COLOR="#0000BB"]$part[/COLOR][COLOR="#007700"]) {

[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"].=[/COLOR][COLOR="#0000BB"]$part[/COLOR][COLOR="#007700"];



if
([/COLOR][COLOR="#0000BB"]is_dir[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]DIR_APPLICATION[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'controller/'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"])) {

[/
COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"].=[/COLOR][COLOR="#DD0000"]'/'[/COLOR][COLOR="#007700"];



[/COLOR][COLOR="#0000BB"]array_shift[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$parts[/COLOR][COLOR="#007700"]);



continue
;

}



if
([/COLOR][COLOR="#0000BB"]is_file[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]DIR_APPLICATION[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'controller/'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'../'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"]) .[/COLOR][COLOR="#DD0000"]'.php'[/COLOR][COLOR="#007700"])) {

[/
COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]file[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]DIR_APPLICATION[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]'controller/'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'../'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"]) .[/COLOR][COLOR="#DD0000"]'.php'[/COLOR][COLOR="#007700"];



[/COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]class[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]'Controller'[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]preg_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]'/[^a-zA-Z0-9]/'[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]''[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$path[/COLOR][COLOR="#007700"]);

[/
COLOR][COLOR="#0000BB"]array_shift[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$parts[/COLOR][COLOR="#007700"]);



break
;

}

}



if
([/COLOR][COLOR="#0000BB"]$args[/COLOR][COLOR="#007700"]) {

[/
COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]args[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$args[/COLOR][COLOR="#007700"];

}



[/COLOR][COLOR="#0000BB"]$method[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]array_shift[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$parts[/COLOR][COLOR="#007700"]);



if
([/COLOR][COLOR="#0000BB"]$method[/COLOR][COLOR="#007700"]) {

[/
COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]method[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]$method[/COLOR][COLOR="#007700"];

} else {

[/
COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]method[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#DD0000"]'index'[/COLOR][COLOR="#007700"];

}

}



public function
[/COLOR][COLOR="#0000BB"]getFile[/COLOR][COLOR="#007700"]() {

return[/COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]file[/COLOR][COLOR="#007700"];

}



public function
[/COLOR][COLOR="#0000BB"]getClass[/COLOR][COLOR="#007700"]() {

return[/COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]class[/COLOR][COLOR="#007700"];

}



public function
[/COLOR][COLOR="#0000BB"]getMethod[/COLOR][COLOR="#007700"]() {

return[/COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]method[/COLOR][COLOR="#007700"];

}



public function
[/COLOR][COLOR="#0000BB"]getArgs[/COLOR][COLOR="#007700"]() {

return[/COLOR][COLOR="#0000BB"]$this[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]args[/COLOR][COLOR="#007700"];

}

}[/
COLOR][/COLOR
 
Ответить с цитированием