Tutorial written for unstuck.fr by UnstucK
Visit: royalhack.ru / unstuck.fr / abul.org
Needed files:
install/vbulletin-upgrade.js
install/upgrade_language_en.xml
install/includes/class_upgrade_ajax.php
You need a retail release first, as soon as you have it, please protect yourself or the owner of that copy !
With notepad ++, replace vBulletin 4.2.0 - SERIAL **** by vBulletin 4.2.0 ONLY ! (remove the licence number everywhere, using the search in files feature in notepad++)
This is an optional step of course, here we go for nulling vBulletin :ninja: !
I) vbulletin-upgrade.js
Search for:
Code:var postdata = [SIZE=2]"ajax=1&status=1&" + PHP.urlencode(CUSTNUMBER);[/SIZE]
Replace with:
Code:var postdata = [SIZE=2]"ajax=1&status=1&";[/SIZE]
Search for:
Code:"&customerid=" + PHP.urlencode(CUSTNUMBER) +
Remove that line
We are done with that file !
II) upgrade_language_en.xml
Search for:
Code:<phrase name="enter_install_system">
Keep that line and remove everything until
Code:<phrase name="redirecting"><=!=[=C=D=A=T=A=[Redirecting...]=]=></phrase>
Keep that last line, just remove everything between !
So basically what we need to remove is:
Code:<phrase name="enter_cust_num"><=!=[=C=D=A=T=A=[Please Enter Your Customer Number]=]=></phrase> <phrase name="customer_number"><=!=[=C=D=A=T=A=[Customer Number]=]=></phrase> <phrase name="cust_num_explanation"><=!=[=C=D=A=T=A=[This is the number with which you log in to the vBulletin.com Members' Area]=]=></phrase> <phrase name="cust_num_success"><=!=[=C=D=A=T=A=[Customer number entered successfully.]=]=></phrase>
Search for:
Code:<phrase name="cust_num_incorrect"><=!=[=C=D=A=T=A=[Customer Number Incorrect]=]=></phrase>
Remove that line
Search for:
vBulletin.com
Remove any content related with vBulletin.com
Example:
Code:For more details, <a href="http://www.vbulletin.com/manual/html/manual_database_backup" target="_blank">read this</a>.
Remove this **** so only the following will stay :
Code:<phrase name="dump_database_desc"><=!=[=C=D=A=T=A=[<p class="smallfont">From here, you can back up your vBulletin database.</p> <p class="smallfont">Please note that if you have a particularly large database, this script <i>may</i> not be able to fully back it up.</p> <p class="smallfont">For a foolproof backup, login to your server via Telnet or SSH and use the <i>mysqldump</i> command on the command line. </p>]=]=></phrase>
We are done with that fileIII) class_upgrade_ajax.php
Search for:
Code:[SIZE=2] [/SIZE] private $custnumber = '';
Remove that line and it's comment
> Full content that need to be removed:
Code:/** * Customer Number * * @var string */ private $custnumber = '';
Search for:
Code:$this->custnumber =
Remove that entire line !
So instead of
Code:parent::init(); $this->custnumber = xxxxxxxxxxxxxxxxxxxxxxxxx $this->registry->input->clean_array_gpc('p', array(
You will have
Code:parent::init(); $this->registry->input->clean_array_gpc('p', array(
Search for:
Code:$this->registry->input->clean_array_gpc('c', array( 'bbcustomerid' => TYPE_STR, ));
Remove it !
Search for:
Code:if ($this->registry->GPC['bbcustomerid'] != $this->custnumber) { $xml = new vB_AJAX_XML_Builder($this->registry, 'text/xml', vB_Template_Runtime::fetchStyleVar('charset')); $xml->add_tag('error', $this->phrase['authenticate']['cust_num_incorrect']); $xml->print_xml(); }
Remove it !
Search for:
Code:$proceed = false; if ($this->registry->GPC['bbcustomerid'] != $this->custnumber) { if ($this->login()) { $proceed = true; } } else { $proceed = true; }
Remove everything except the $proceed = true; in the middle !
So you will have the following :
Code:$this->registry->input->clean_array_gpc('r', array( 'version' => TYPE_NOHTML, 'startat' => TYPE_UINT, 'step' => TYPE_UINT, 'only' => TYPE_BOOL, )); $proceed = true; if ($proceed) { if ($this->registry->GPC['version'] AND $this->versions[$this->registry->GPC['version']])
Search for:
Code:* Display Login * * @return boolean login success */ private function login() { if (isset($_POST['customerid'])) { $this->registry->input->clean_array_gpc('p', array( 'customerid' => TYPE_NOHTML, )); if (md5(strtoupper($this->registry->GPC['customerid'])) == $this->custnumber) { setcookie('bbcustomerid', $this->custnumber, 0, '/', ''); return true; } else { $this->htmloptions['login'] = true; $this->htmloptions['loginerror'] = true; return false; } } else { $this->htmloptions['login'] = true; return false; } }
Remove it !
Search for:
Code:var CUSTNUMBER = "<?php echo $this->custnumber; ?>";
Remove it !
Search for:
Code:<div class="tborder<?php if (!$this->htmloptions['login']) { echo " hidden"; } ?>" id="authenticate"> <div class="navbody messageheader"><?php echo $this->phrase['authenticate']['enter_cust_num']; ?></div> <div class="messagebody logincontrols"> <?php echo $this->phrase['authenticate']['cust_num_explanation']; ?> <form action="<?php echo $this->setuptype; ?>.php" method="post"> <input type="text" tabindex="1" value="" name="customerid" id="customerid" /> <?php if ($this->htmloptions['loginerror']) { ?><div id="customerid_error" class="navbody"><?php echo $this->phrase['authenticate']['cust_num_incorrect']; ?></div><?php } ?> <input class="button" type="submit" tabindex="1" accesskey="s" id="authsubmit" value="<?php echo $this->htmloptions['enter_system'] ?>" /> <?php echo $hiddenfields ?> </form> </div> </div>
Remove it !
Search for:Code:<a href="http://www.vbulletin.com/" target="_blank" class="copyright">
Remove it ! [remove also the </a> below]
We are done with that file !Ok now go to /install/install.php
You will get errors, it's normal (I think ... , hey you are using a ****ed build of vBulletin so please ignore these lame errors !!! )
Just click ignore and continue, should be fine
If I did any mistake, I do not care ! I'm not an professional crackzor, I just know sum php !
Will make a public keygen for vBulletin, will release it everywhere aswell, since keygens are way better than nulled versions
Null đi nào anh em =))