Автор: admin
31-10-2010, 18:03

Взлом DLE 8.x и способ защиты


За последнее время участились случаи взлома сайтов на CMS DataLife Engine, это связано с новоиспеченной уязвимостью в популярном движке. Думаю пора открыть завесу тайны и рассказать как использовать эту дыру и как уберечь свой сайт. Почему я это делаю спросите Вы, отвечаю - больше половины проектов обновились до DLE 9.0, а на старые версии поставлены заплатки. Не расстраиваетесь, еще можно отыскать "дырявые" сайты, администратор которых не следит за выходом исправлений. В полной новости вы узнаете как взломать сайт на DLE и как уберечь свой проект от покушений.

Взлом сайта на DLE версии ниже 9.0, инструкция (Работаем через браузер Opera 10).

1. Заходим на сайт жертвы

2. Регистрируемся и авторизуемся на сайте

3. Переходим по ссылке http://site.ru/engine/images.php (где site.ru - адрес жертвы)

4. Открываем исходный код открытой нами страницы и после:
<input type="hidden" name="area" value="" />


(строка может немного отличаться и повторяться 2 раза, вставляем после 1й)

вставляем:
<input type="hidden" name="serverfile" value="../../engine/data/dbconfig.php" />


Нажимаем в браузере, под вкладками Применить изменения

5. После этих действий необходимо проверить работоспособность дырки, для этого на странице http://site.ru/engine/images.php, чей исходный код мы редактировали пунктом выше, нажимаем Загрузить. В списке загруженных файлов должен появиться dbconfig.php, мы можем продолжить...

Что бы скачать файл конфига мы должны навести на него указатель мыши и посмотреть ID, затем через Исходный код страницы / Применить изменения мы вставляем в любое место страницы сайта жертвы ссылку вида:
<a href='http://site.ru/engine/download.php?id=ID_файла'>[download]</a>


и скачиваем файл dbconfig.php с данными для входа в phpMyAdmin, адрес которой обычно site.ru/phpmyadmin/ или site.ru/myadmin/

Только что я рассказал Вам как взломать сайт на DataLife Engine, удачи.

Сейчас настало время перейти к рассмотрению способа защиты от взлома, описанного выше:

1. Открываем файл engine/inc/files.php и находим:
$serverfile = trim( htmlspecialchars( strip_tags( $_POST['serverfile'] ) ) );


заменяем на:
if ($member_id['user_group'] == 1) $serverfile = trim( htmlspecialchars( strip_tags( $_POST['serverfile'] ) ) ); else $serverfile = '';

        if ( $serverfile != '' ) {

            $serverfile = str_replace( "\\", "/", $serverfile );
            $serverfile = str_replace( "..", "", $serverfile );
            $serverfile = str_replace( "/", "", $serverfile );
            $serverfile_arr = explode( ".", $serverfile );
            $type = totranslit( end( $serverfile_arr ) );
            $curr_key = key( $serverfile_arr );
            unset( $serverfile_arr[$curr_key] );

            if ( in_array( strtolower( $type ), $allowed_files ) )
                $serverfile = totranslit( implode( ".", $serverfile_arr ) ) . "." . $type;
            else $serverfile = '';

        }

        if( $serverfile == ".htaccess") die("Hacking attempt!");


2. Открываем файл engine/classes/thumb.class.php и находим:
$this->img['des'] = imagecreatetruecolor( $this->img['lebar_thumb'], $this->img['tinggi_thumb'] );


добавляем выше этой строки:
        if ($this->img['lebar_thumb'] < 1 ) $this->img['lebar_thumb'] = 1;
        if ($this->img['tinggi_thumb'] < 1 ) $this->img['tinggi_thumb'] = 1;


Установка защиты от взлома DLE, а точнее исправление недостаточной фильтрации данных завершена.
Комментарии (11)
Просмотров: 11943
Фото

Регистрация: 29.01.2010 Автор: explOitСообщений: 2ICQ:
Пункт 4 пустой...

   
Фото

Регистрация: 24.01.2010 Автор: daimerСообщений: 36ICQ:
explOit,
обновлено

   
Фото

Регистрация: 31.10.2010 Автор: MaLaNСообщений: 11ICQ:
у меня другу так сайт ломают я ему дам ссыль на этот сайт, пускай посмотрит как ломают

   
Фото

Регистрация: 20.08.2010 Автор: ShamanСообщений: 60ICQ:
ппц на одном сайте ломанули админку и закачали гнелые ссылки в ява коде в новости, в короткую и полную, так я заё....ся чистить, новостей там около 3000 вот в 6000 и сидел пакастный код. В поймаю урода яйца оторву и заставлю сожрать

   
Фото

Регистрация: 3.11.2010 Автор: grixanСообщений: 54ICQ:
А некто не пробовал ставить патчи вовремя от целки ? и пользоваться нормальных хостингом ?
Бекап спасет мир !



--------------------------
Мой сайт - http://fxtraderu.ru/
   
Фото

Регистрация: 4.11.2010 Автор: DJ_SERJСообщений: 102ICQ:
Да действительно полезная вещь для тех кто не обновился до 9.0!!!Хотя и в ней дыр хватает=)



--------------------------
SerjFM.EzAr.Ru
   
Фото

Регистрация: 20.08.2010 Автор: ShamanСообщений: 60ICQ:
grixan как показала практика и хостеров взламывают и бекап не поноцея

   
Фото

Регистрация: 30.11.2010 Автор: mavne215Сообщений: 30ICQ:
все нормально работает +1 автору

   
Фото

Регистрация: 21.12.2010 Автор: wmasterСообщений: 1ICQ:
Да работает, норм! только вот на каком-то сайте нарвался на такую хрень:

Благодарим за попытку взлома инфа о ВАС будет напралена в соответствующие органы.

мой ип...
никнэйм...
мыло...

гы. Решили напугать. Факта взлома никакого нет. ну и что с того, что у админа есть мой ИП... :)) ну если он конечно не меГО хакер, который поламает мне кампутер. :)

   
Фото

Регистрация: 13.02.2011 Автор: ValeryLСообщений: 50ICQ: 680852
Что тут говорить?! Дыры надо латать.

   
Фото

Регистрация: 4.04.2011 Автор: wwa76Сообщений: 3ICQ:
не совсем понятен этот пункт:
и скачиваем файл dbconfig.php с данными для входа в phpMyAdmin, адрес которой обычно site.ru/phpmyadmin/ или site.ru/myadmin/
как скачать файл?
удалить получается после чего на месте сайта выходит вот что:

Warning: require_once(C:\Simple-Game\xampp\htdocs/engine/data/dbconfig.php): failed to open stream: No such file or directory in C:\Simple-Game\xampp\htdocs\engine\init.php on line 34 Fatal error: require_once(): Failed opening required 'C:\Simple-Game\xampp\htdocs/engine/data/dbconfig.php' (include_path='.;C:\Simple-Game\xampp\php\pear\') in C:\Simple-Game\xampp\htdocs\engine\init.php on line 34

а вот скачать никак не выходит.. может что не так делаю?

   

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.