Тырим vb_3.5.4 & нуллим его :)

Тема в разделе "Статьи и Co", создана пользователем REALiSTiC, 16 ноя 2006.

Статус темы:
Закрыта.
  1. REALiSTiC

    REALiSTiC

    Регистр.:
    30 мар 2006
    Сообщения:
    354
    Симпатии:
    126
    Итак, сегодня я расскажу, как зануллить vBulletin 3.5.4. Я взял именно эту версию, потому что другого ритейла у меня нет.

    Сначала расскажу, как я достал ритейл. Недавно прочитал на оффсайте vBulletin, что их клиенты заливают архивы с vbulletin на сервер и забывают их удалять. Этим я и воспользовался, сделав такой запрос в Google:
    Код:
    http://www.google.com/codesearch?q=+lang:php+VBulletin+Licence+Number&sa=N
    .

    Среди нулл-версий, есть и лицензионные. Мне приглянулась вот эта:
    Код:
    http://www.kdtechnology.biz/vbulletin_3-5-4_VBF0C1821F%5B1%5D.tar.gz
    Данная версия новее, чем, например, от SCRiPTMAFiA.

    Скачиваем и начинаем нуллить!

    Первая проблема, с которой сталкиваемся - при установке нужно ввести Customer Number.
    Проверка этого номера находится в файле: "install/authenticate.php":
    Код:
    // ##################### DEFINE IMPORTANT CONSTANTS #######################
    /**
    * @ignore
    */
    define('CUSTOMER_NUMBER', trim(strtoupper('J377A3513FB3')));
    
    Вот и Customer Number - J377A3513FB3. Вводим при установке - ОК !
    Но мы будет нуллить, а не использовать, поэтому нужно убрать все номера и проверки.

    Удаляем код, данный выше.

    Далее:
    Код:
    'customerid' => TYPE_STR,
    
    Тоже не понадобится, поэтому смело удаляем.

    НАХОДИМ

    Код:
    if (strtoupper($vbulletin->GPC['customerid']) == CUSTOMER_NUMBER)
    {
    
    Это и есть сравнение номера - УДАЛЯЕМ.

    НАХОДИМ
    Код:
    <span class="smallfont"><a href="<?php echo $vbulletin->GPC['redirect']; ?>"><?php echo $authenticate_phrases['redirecting']; ?></a></span>
    		</p></blockquote></blockquote>
    
    Все, что находится ниже исполняется, если номер введен неверно.
    Удаляем все, что ниже, пока не увидим строки (их оставляем:(
    Код:
    	<?php
    
    	unset($vbulletin->debug, $GLOBALS['DEVDEBUG']);
    	define('NO_CP_COPYRIGHT', true);
    	print_cp_footer();
    }
    
    Все, с проверкой вроде разобрались. Теперь при установке нет никакой проверки.

    Так-с, настало время разобраться с Панелью Управления.
    Что здесь лишего:
    - Проверка последней версии (однозначно "стукач");
    - Множество ссылок на оффсайт vBulletin;

    Начнем с проверки последней версии. Открываем файл "admincp/index.php".
    НАХОДИМ
    Код:
    // ################################ MAIN FRAME #############################
    
    Ух, сколько стучалок на version.vbulletin.com!

    НАЙДЕМ
    Код:
    // there have been problems reported with fsockopen() in some PHP versions.
    // this should work around it though
    if (phpversion() < '4.3.0' OR phpversion() > '4.3.2' OR @ini_get('allow_url_fopen') != 1)
    {
    	$fp = @fsockopen('version.vbulletin.com', 80, $errno, $errstr, 3);
    }
    else
    {
    	$fp = @fopen('http://version.vbulletin.com', 'r');
    }
    if ($fp)
    {
    	fclose($fp);
    ?>
    <script type="text/javascript" src="http://version.vbulletin.com/versioncheck.js"></script>
    <script type="text/javascript" src="http://version.vbulletin.com/version.js?id=VBF0C1821F"></script>
    <script type="text/javascript">
    <!--
    if (typeof(vb_version) != "undefined" && isNewerVersion("<?php echo $vbulletin->options['templateversion']; ?>", vb_version))
    {
    	var current_version = "<?php echo $vbulletin->options['templateversion']; ?>";
    	var latest_string = "<?php echo $vbphrase['latest_version_available_x']; ?>";
    	var current_string = "<?php echo $vbphrase['you_are_running_vbulletin_version_x']; ?>";
    	var download_string = "<?php echo $vbphrase['download_vbulletin_x_from_members_area']; ?>";
    
    	document.writeln('<table cellpadding="4" cellspacing="0" border="0" align="center" width="90%" class="tborder"><tr><td class="tcat" align="center"><b><?php echo $vbphrase['there_is_a_newer_vbulletin_version']; ?></b></td></tr><tr><td class="alt1" align="center">');
    	document.writeln('<p><b><a href="http://www.vbulletin.com/forum/showthread.ph' + 'p?p=' + vb_announcementid + '" target="_blank">' + construct_phrase(latest_string, vb_version) + "</a></b></p>");
    	document.writeln('<p>' + construct_phrase(current_string, current_version.bold()) + '</p>');
    	document.writeln('<p><a href="http://members.vbulletin.com/" target="_blank">' + construct_phrase(download_string, vb_version.bold()) + '</a></p>');
    	document.writeln('</td></tr></table>');
    }
    //-->
    </script>
    
    <?php
    }
    
    И ЗАМЕНИМ НА
    Код:
    ?>
    <script type="text/javascript">
    <!--
    var vb_version = '<?php echo $vbulletin->versionnumber; ?>';
    //-->
    </script>
    
    <?php
    
    Продолжаем... НАХОДИМ
    Код:
    // ################################# HEADER FRAME ##############################
    ФФТОПКУ КОД
    Код:
    	if (phpversion() < '4.3.0' OR phpversion() > '4.3.2' OR @ini_get('allow_url_fopen') != 1)
    	{
    		$fp = @fsockopen('version.vbulletin.com', 80, $errno, $errstr, 3);
    	}
    	else
    	{
    		$fp = @fopen('http://version.vbulletin.com', 'r');
    	}
    	$headjs = '';
    	if ($fp)
    	{
    		fclose($fp);
    		$headjs = '<script type="text/javascript" src="http://version.vbulletin.com/version.js?id=VBF0C1821F"></script>';
    	}
    
    НАХОДИМ
    Код:
    	<script type="text/javascript">
    	<!--
    	if (typeof(vb_version) == "undefined")
    	{
    		var vb_version = '<?php echo $vbphrase['n_a']; ?>';
    	}
    	// -->
    	</script>
    
    ЗАМЕНЯЕМ НА
    Код:
    	<script type="text/javascript">
    	<!--
    		var vb_version = '<?php echo $vbulletin->versionnumber; ?>';
    	// -->
    	</script>
    
    Далее НАХОДИМ
    Код:
    <script type="text/javascript">
    <!--
    if (typeof(vb_version) != "undefined")
    {
    	var this_vb_version = "<?php echo $vbulletin->options['templateversion']; ?>";
    	if (isNewerVersion(this_vb_version, vb_version))
    	{
    		document.writeln('<a href="http://www.vbulletin.com/forum/showthread.ph' + 'p?p=' + vb_announcementid + '" target="_blank">' + construct_phrase(latest_string, vb_version) + '</a><br />' + construct_phrase(current_string, this_vb_version.bold()));
    	}
    	else
    	{
    		document.write(construct_phrase('<?php echo $vbphrase['your_version_of_vbulletin_is_up_to_date']; ?>', this_vb_version));
    	}
    }
    // -->
    </script>
    
    ИЗМЕНИМ НА
    Код:
    <script type="text/javascript">
    <!--
    	var this_vb_version = "<?php echo $vbulletin->versionnumber; ?>";
    		document.write(construct_phrase('<?php echo $vbphrase['your_version_of_vbulletin_is_up_to_date']; ?>', this_vb_version));
    // -->
    </script>
    
    Теперь будет писать "Ваша версия последняя на данный момент".

    Теперь поищим, где светится Customer Number.

    Вот, что НАХОДИМ
    Код:
    ?><img src="../cpstyles/<?php echo $vbulletin->options['cpstylefolder']; ?>/cp_logo.gif" title="<?php echo $vbphrase['admin_control_panel']; ?>" alt="" border="0" hspace="4" <?php $df = print_form_middle("VBF0C1821F"); ?> vspace="4" /><?php
    
    Просто убираем из этой строки данный фрагмент:
    Код:
    <?php $df = print_form_middle("VBF0C1821F"); ?>
    Еще Customer Number есть здесь:
    Код:
    <td style="text-align:<?php echo $stylevar['left']; ?>"><a href="http://www.vbulletin.com/" target="_blank"><b><?php echo $vbphrase['admin_control_panel']; ?></b> (vBulletin <?php echo $vbulletin->versionnumber . print_form_middle('VBF0C1821F'); ?>)<?php echo iif(is_demo_mode(), ' <b>DEMO MODE</b>'); ?></a></td>
    
    Приводим эту строку к такому виду:
    Код:
    <td style="text-align:<?php echo $stylevar['left']; ?>"><b><?php echo $vbphrase['admin_control_panel']; ?></b> (vBulletin <?php echo $vbulletin->versionnumber; ?>)<?php echo iif(is_demo_mode(), ' <b>DEMO MODE</b>'); ?></td>
    
    ДАЛЕЕ НАХОДИМ:
    Код:
    <td><a href="http://members.vbulletin.com/" target="_blank"><script type="text/javascript"> document.write(construct_phrase('<?php echo $vbphrase['latest_version_available_x']; ?>', vb_version));</script></a></td>
    
    Здесь просто убираем ссылку на http://members.vbulletin.com.
    Также можно заменить
    Код:
    print_cp_header('', '', $headjs);
    НА
    Код:
    print_cp_header('', '', '');
    , т.к. $headjs уже не нужен.


    Теперь убираем ссылки на оффсайт. Ищим в файлах
    Код:
    <a href="http://www.vbulletin.com/"
    и удаляем ссылки.

    Ну и соответственно, чтобы не светить свой лицензионный номер, во всех файлах изменяем/удаляем:
    Код:
    Licence Number VBF0C1821F
    А ТАКЖЕ
    Код:
    Downloaded: 21:40, Thu Jun 22nd 2006
    Или меняем на что-нибудь другое.

    Плюс в "includes/functions.php":
    Код:
    define('COOKIE_SALT', 'VBF0C1821F');
    изменим на
    Код:
    define('COOKIE_SALT', 'VBXXXXXXXX');
    И в "admincp/backup.php":
    Код:
    print_input_row($vbphrase['path_and_file_to_save_backup_to'], 'filename', './forumbackup-' . vbdate(str_replace(array('\\', '/', ' '), '', $vbulletin->options['dateformat']), TIMENOW) . '-' . substr(md5('VBF0C1821F' . TIMENOW), 0, 5) . '.sql', 0, 60);
    
    изменим на

    Код:
    print_input_row($vbphrase['path_and_file_to_save_backup_to'], 'filename', './forumbackup-' . vbdate(str_replace(array('\\', '/', ' '), '', $vbulletin->options['dateformat']), TIMENOW) . '-' . substr(md5('VBXXXXXXXX' . TIMENOW), 0, 5) . '.sql', 0, 60);
    
    Уберите ссылки в файле "/includes/vbulletin_credits.php" (по желанию).

    И не забудьте почистить файлик "/includes/md5_sums_vbulletin.php". Я про это (кто не понял:(
    Код:
    // vbulletin 3.5.4, VBF0C1821F, 21:40:40, Thu Jun 22nd 2006

    Теперь все готово.

    [ НАПИСАНО СПЕЦИАЛЬНО ДЛЯ RUSSNULL.ORG & NULLED.WS. КТО КОПИРУЕТ ТЕКСТ СТАТЬИ - ДАННЫЙ ТЕКСТ НЕ УДАЛЯТЬ! ]
     
    pozerovnet, pirosin, Captain и ещё 1-му нравится это.
  2. difour

    difour Прохожие

    есть програмка searrch&replace, из названия понятно, так можно сразу снести все что связано с вбуллетин, а потом красиво подравить :)
     
  3. REALiSTiC

    REALiSTiC

    Регистр.:
    30 мар 2006
    Сообщения:
    354
    Симпатии:
    126
    Я юзаю UltraEdit32, там есть все: поиск и замена в файлах, авто-форматировавание кода из каши, подсветка... Рекомендую!
     
  4. Alx^

    Alx^ Постоялец

    Регистр.:
    11 ноя 2006
    Сообщения:
    77
    Симпатии:
    49
    Статья интересная надо будет канибудь полазить по нэту попробывать :)
     
  5. pirosin

    pirosin ДедМороз

    Регистр.:
    29 янв 2007
    Сообщения:
    174
    Симпатии:
    29
    Спасибо, интересно, я смотрю даже на нуленых скриптах кое чего упустили и не все занулили, буду мучать и донулять.
     
  6. Captain

    Captain Мыслитель

    Регистр.:
    8 май 2006
    Сообщения:
    355
    Симпатии:
    174
    Если довыложите и свой мануал, то мы все будем только благодарны :smmne:
     
Статус темы:
Закрыта.