Новичку полезно



Взлом Dolphi 7 - убираем рекламу boonex`a

Решил я протестировать движок для создания социальной сети Dolphin 7. Порадовало то что движок «бесплатный», на самом же деле при любом удобном случае «дельфин» напоминал о том что можно купить лицензию и лишится всех недостатков (например рекламы). Т.к. денег у нас нет, а движок стоит от 99$ за самую «гнилую» лицензию, я попробовал решить эту проблему  самостоятельно.

О защите …

Защита в Dolphin 7 была довольна банальной, немного побродив по файлам,  было обнаружено 2 полу зашифрованных файла design.inc.php и admin_design.inc.php. Расшифровать данные файлы было не проблематично т.к. notepad++ отлично справляется с base64. Порадовало и то, что в файле зашифрованная часть была отодвинута пробелами «от глаз подальше», наверное защита от полных новичков. Фантазия разработчиков на этом не закончилась т.к. многие функции были засунуты в переменные, а те в свою очередь были преобразованы вот в такой вид $s753787, $s653987, но опять же notepad++ обладает «уникальной» возможностью которая называется «поиск с заменой» и чудесным нажатием ctrl + f все преобразованные переменные и функции становятся нормального вида.

О взломе ...

Для взлома первым был выбран файл design.inc.php, зашифрованная часть которого отвечала за вывод в футере рекламы boonex`a. После проведения манипуляций по обходу банальной защиты был проанализирован php код. Защита «порадовала»

if (getParam('enable_dolphin_footer')) { … }

Напомнило детство OlyDbr и первые кряки для написанных тобой же программ на C++/Delphi где заменяли джампы или результат сравнения.

Разумеется мне сразу же захотелось узнать откуда берет значение параметра enable_dolphin_footer функция getParam, конечно можно было просто поставить false, но тогда бы реклама исчезла только из футера, а мне же надо было убрать ее с всего сайта. Порыв недолго файлы работы с БД была обнаружена таблица sys_options в которой и хранился параметр enable_dolphin_footer установленный в on. Обнулив этот параметр реклама с сайта «пропала».

Взлом Dolphin 7 продолжается …

Спустя день после того как я сбросил параметр enable_dolphin_footer  в дельфине на моей тестовой площадке вновь появилась реклама. Единственный разумный вывод был наличие в движке так называемых «стучалок». Долго думать не пришлось единственное место, которое еще бросалось в глаза, в исходном коде движка был скрипт admin_design.inc.php, зашифрованный все тем же base64. Расшифровав часть скрипта я начал беглый осмотр кода, который привел меня к строчке:

$fp = @fopen("http://license.boonex.com?LN=$sLN&d=$sDomain&url=$sUrl", 'r');
    Где:
  • $sLN – серийный номер,
  • $sDomain – доменное имя сайта,
  • $sUrl – url который вы ввели при установке сайта.

Как вы поняли вся эта лабуда отправляется на сайт boonex.com где проверяется наличие лицензии и соответствие доменного имени (одна лицензия один сайт).

Дальше идет извлечение этих значений из xml файла:

if (preg_match('/(\d+)(.*)(\d+)/', $s, $m)){ … }

Думаю и так понятно за что отвечают эти параметры.

Ну и как полагается за всем этим следует куча разнообразных проверок шаг не туда и расстрел…

$bDol = checkDolphinLicense();
setParam('enable_dolphin_footer', ($bDol ? '' : 'on'));

Почему здесь нет кряка? Потому что мне было лень его писать, а имея данное описание несложно все сделать самому!

Cтатистика

SMS.копилка

SMS.копилка

Orphus

Система Orphus

Реклама

Хостинг от 26 руб. (все включено)
VDS всего за 149 руб./месяц
Хостинг Jino (10гб всего за 33 руб.)