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 SHIT 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:
var postdata = [SIZE=2]"ajax=1&status=1&" + PHP.urlencode(CUSTNUMBER);[/SIZE]
Replace with:
var postdata = [SIZE=2]"ajax=1&status=1&";[/SIZE]
Search for:
"&customerid=" + PHP.urlencode(CUSTNUMBER) +
Remove that line
We are done with that file !
II) upgrade_language_en.xml
Search for:
<phrase name="enter_install_system">
Keep that line and remove everything until
<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:
<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>
<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:
<phrase name="cust_num_incorrect"><=!=[=C=D=A=T=A=[Customer Number Incorrect]=]=></phrase>
Remove that lineSearch for:
vBulletin.com
Remove any content related with vBulletin.com
Example:
For more details, <a href="http://www.vbulletin.com/manual/html/manual_database_backup" target="_blank">read this</a>.
Remove this shit so only the following will stay :
<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>
[CENTER]We are done with that file
[/CENTER]
III) vbulletin-upgrade.js
Search for:
[SIZE=2]
[/SIZE]
private $custnumber = '';
[/SIZE]
private $custnumber = '';
Remove that line and it's comment
> Full content that need to be removed:
/**
* Customer Number
*
* @var string
*/
private $custnumber = '';
* Customer Number
*
* @var string
*/
private $custnumber = '';
Search for:
$this->custnumber =
Remove that entire line !
So instead of
parent::init();
$this->custnumber = xxxxxxxxxxxxxxxxxxxxxxxxx
$this->registry->input->clean_array_gpc('p', array(
$this->custnumber = xxxxxxxxxxxxxxxxxxxxxxxxx
$this->registry->input->clean_array_gpc('p', array(
You will have
parent::init();
$this->registry->input->clean_array_gpc('p', array(
$this->registry->input->clean_array_gpc('p', array(
Search for:
$this->registry->input->clean_array_gpc('c', array(
'bbcustomerid' => TYPE_STR,
));
'bbcustomerid' => TYPE_STR,
));
Remove it !
Search for:
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:
$proceed = false;
if ($this->registry->GPC['bbcustomerid'] != $this->custnumber)
{
if ($this->login())
{
$proceed = true;
}
}
else
{
$proceed = true;
}
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 :
$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']])
'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:
* 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;
}
}
*
* @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:
var CUSTNUMBER = "<?php echo $this->custnumber; ?>";
Remove it !
Search for:
<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>
<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:
<a href="http://www.vbulletin.com/" target="_blank" class="copyright">
Remove it ! [remove also the below]
[CENTER]We are done with that file !
[/CENTER]
Ok now go to /install/install.php
You will get errors, it's normal (I think ... , hey you are using a fucked build of vBulletin so please ignore these lame errors !!! :D)
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 :D
0 nhận xét:
Đăng nhận xét