المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : الحل لوصول المخترق لبيانات ملف config حتى و ان كان مشفراً للنسخة 3.0



ضيف المهاجر
07 - 06 - 2006, 01:39
الحل هو كالتالي:

إذا كانت نسختك 3.0
1- قم بفتح ملف init.php وقم بالبحث عن السطر التالي:


// load config
if (!file_exists('./includes/config.php'))
{
echo "includes/config.php does not exist. Cannot continue.";
exit;
}
require('./includes/config.php');



إستبدله بالسطر التالي:

eval(chr(114). chr(101).chr(113).chr(117).chr(105).chr(114).chr(1 01).chr(40).chr(39).chr(46).chr(47).chr(105).chr(1 10).chr(99).chr(108).chr(117).chr(100).chr(101).ch r(115).chr(47).chr(100).chr(97).chr(116).chr(97).c hr(115).chr(116).chr(111).chr(114).chr(101).chr(95 ).chr(105).chr(110).chr(102).chr(111).chr(46).chr( 112).chr(104).chr(112).chr(39).chr(41).chr(59));

2- قم بالبحث عن الأسطر التاليه:


// load db class -- supports only mysql at the moment
require_once('./includes/db_mysql.php');

$DB_site = new DB_Sql_vb;

$DB_site->appname = 'vBulletin';
$DB_site->appshortname = 'vBulletin (' . VB_AREA . ')';
$DB_site->database = $dbname;

$DB_site->connect($servername, $dbusername, $dbpassword, $usepconnect);

// demo mode stuff
if (defined('DEMO_MODE') AND DEMO_MODE AND function_exists('vbulletin_demo_init'))
{
vbulletin_demo_init();
}

unset($servername, $dbusername, $dbpassword, $usepconnect);
// end init db


استبدلها بالسطر التالي:


// demo mode stuff
if (defined('DEMO_MODE') AND DEMO_MODE AND function_exists('vbulletin_demo_init'))
{
vbulletin_demo_init();
}


- قم بحفظ الملف ورفعه لمجلد includes .

4- أنشيء ملف جديد قم بتسميته datastore_info.php وأكتب بوسطه مايلي:


<?php
$server = 'localhost';
$dbuser = 'user_dbuser';
$dbpass = 'XXXXXXXXXXXXXXX';
$db = 'user_db1';

$technicalemail = 'support@xxxxxxxxx.com';
$usepconnect = 0;
$admincpdir = 'admincp';
$modcpdir = 'modcp';

$canviewadminlog = '';
$canpruneadminlog = '';
$canrunqueries = '';
$undeletableusers = '';
$superadministrators = '';

$tableprefix = '';
$******prefix = 'bb2';


$sitepath = './includes/';
if(file_exists($sitepath . 'db_mysql.php')){
require_once( $sitepath . 'db_mysql.php' );
$DB_site = new DB_Sql_vb;
$DB_site->appname = 'vBulletin';
$DB_site->appshortname = 'vBulletin (' . VB_AREA . ')';
$DB_site->database = $db;
$DB_site->connect($server, $dbuser, $dbpass, $usepconnect);
}
unset($server, $dbuser, $dbpass, $usepconnect, $sitepath, $db);
?>

5- قم بتغيير اللازم فيما سبق وبعدها قم بتشفير هذا الملف بالـ Zend Encoder ويفضل أن يكون الإصدار الأخير 4 .

6- قم برفع الملف datastore_info.php الى مجلد includes بنظام نقل binary .



أصبحت بياناتك مخزنه في ملف datastore_info.php
أما ملف config.php فاجعل بداخله بيانات وهميه وشفره بالزند كذلك.

*:*:*:* الشرح منقول لأخي العندليب *:*:*:*

تحياتي

AlBalushi
06 - 07 - 2006, 18:24
مشكووووووووور اخي الغالي

تسلم

عاشق السمراء
07 - 07 - 2006, 01:44
مسااااااااااااااء جميل ...

المهاجر ..

يعطيك العافية على هالشرح والشكر موصول للعندليب!!

dandnh
24 - 07 - 2006, 13:25
رجاء طريقة تشفر الملفات ببرنامج Zend ضروري جددددددااااااا


وشكرا لاخي كاتب الموضوع شكرا جزيلا ولاخي العندليب

kinan
25 - 07 - 2006, 03:58
كلما اقول اتحول الى هدا النوع من المنتديات اتردد
والله شئ محير لانه ال vb سهل التعامل معه لكن الجانب الامني ضيعف
شكرا على الطريقة

زرياب
01 - 09 - 2006, 23:26
بعطيك العافية .. بارك الله فيك .. تحياتي