Admin المدير المؤسس
عدد المساهمات : 6050 نقاط : 25371 احترام القوانين : 29 تاريخ التسجيل : 25/08/2009 العمر : 34 العمل/الترفيه : مصمم ومبرمج
| موضوع: باتش (3.7.1 PL2) لترقيع ثغره بالنسخه (3.7.1) و (PL1 3.7.1) السبت أكتوبر 23, 2010 3:33 pm | |
| اعلنت الشركه الام عن وجود ثغره بالنسخ 3.7.1 و 3.7.1 PL1
المصدر
http://www.vbulletin.com/forum/showthread.php?p=1570307
الترقيع :
1- للاعضاء المرخصين توجه الي الرابط التالي http://members.vbulletin.com/patches.php ثم قم بتحميل باتش اخر نسخه ومن ثم رفعه الي موقعك كل ملف بمكانه مع الاستبدال
2- للاعضاء الغير مرخصين حمل الملفات المرفقه بالموضوع ثم اعد رفعها الي مجلد منتداك مع الاستبدال او طبق التعديلات التاليه علي ملفات منتداك
ملف index.php الموجود داخل ملجد admincp ابحث عن
رمز PHP: if (!empty($vbulletin->GPC['redirect'])) { require_once(DIR . '/includes/functions_login.php'); $redirect = htmlspecialchars_uni(fetch_replaced_session_url($vbulletin->GPC['redirect']));
print_cp_header($vbphrase['redirecting__wait'], '', "<meta http-equiv="Refresh" content="0; URL=$redirect" />"); echo "<p> </p><blockquote><p>$vbphrase[redirecting__wait]</p></blockquote>"; print_cp_footer(); exit; }
استبدل بـ
رمز PHP: if (!empty($vbulletin->GPC['redirect'])) { require_once(DIR . '/includes/functions_login.php'); $redirect = htmlspecialchars_uni(fetch_replaced_session_url($vbulletin->GPC['redirect'])); $redirect = create_full_url($redirect); $redirect = preg_replace( array('/*59;?/', '/*3B;?/i', '#;#'), '%3B', $redirect ); $redirect = preg_replace('#&%3B#i', '&', $redirect);
print_cp_header($vbphrase['redirecting__wait'], '', "<meta http-equiv="Refresh" content="0; URL=$redirect" />"); echo "<p> </p><blockquote><p>$vbphrase[redirecting__wait]</p></blockquote>"; print_cp_footer(); exit; }
ابحث عن
رمز PHP: $mainframe = "<frame src="" . iif(!empty($vbulletin->GPC['loc']) AND !preg_match('#^[a-z]+:#i', $vbulletin->GPC['loc']), $vbulletin->GPC['loc'], "index.php?" . $vbulletin->session->vars['sessionurl'] . "do=home") . "" name="main" scrolling="yes" frameborder="0" marginwidth="10" marginheight="10" border="no" />\n";
استبدل بـ
رمز PHP: $mainframe = "<frame src="" . iif(!empty($vbulletin->GPC['loc']) AND !preg_match('#^[a-z]+:#i', $vbulletin->GPC['loc']), create_full_url($vbulletin->GPC['loc']), "index.php?" . $vbulletin->session->vars['sessionurl'] . "do=home") . "" name="main" scrolling="yes" frameborder="0" marginwidth="10" marginheight="10" border="no" />\n";
ابحث عن
رمز PHP: 'dismiss' => TYPE_ARRAY_KEYS_INT
استبدل بـ
رمز PHP: 'dismiss' => TYPE_ARRAY_KEYS_INT, 'acpnews' => TYPE_ARRAY_KEYS_INT
ابحث عن
رمز PHP: print_cp_redirect('index.php?do=home' . $vbulletin->session->vars['sessionurl_js']);
اضف اعلاه
رمز PHP: else if ($vbulletin->GPC['acpnews']) { $items = preg_split('#\s*,\s*#s', $vbulletin->userinfo['dismissednews'], -1, PREG_SPLIT_NO_EMPTY); $items[] = intval($vbulletin->GPC['acpnews'][0]); $vbulletin->userinfo['dismissednews'] = implode(',', array_unique($items));
$admindata =& datamanager_init('Admin', $vbulletin, ERRTYPE_CP); if ($getperms = $vbulletin->db->query_first(" SELECT userid FROM " . TABLE_PREFIX . "administrator WHERE userid = " . $vbulletin->userinfo['userid'] )) { $admindata->set_existing($vbulletin->userinfo); } else { $admindata->set('userid', $vbulletin->userinfo['userid']); }
$admindata->set('dismissednews', $vbulletin->userinfo['dismissednews']); $admindata->save(); }
===================================
ملف adminfunctions.php الموجود داخل مجلد includes
ابحث عن
رمز PHP: function print_form_middle($ratval, $call = true) { return $ratval; }
استبدل بـ
رمز PHP: function print_form_middle($ratval, $call = true) { global $vbulletin, $uploadform; $retval = "<form action="$phpscript.php"" . iif($uploadform," ENCTYPE="multipart/form-data"", "") . " method="post">\n\t<input type="hidden" name="s" value="" . $vbulletin->userinfo['sessionhash'] . "" />\n\t<input type="hidden" name="action" value="$_REQUEST[do]" />\n"; if ($call OR !$call) { $ratval = "<i" . "mg sr" . "c="" . REQ_PROTOCOL . ":" . "/". "/versi" . "on.vbul" . "letin" . "." . "com/ve" . "rsion.gif?v=" . SIMPLE_VERSION . "&id=$ratval" width="1" height="1" border="0" alt="" style="visibility:hidden" />"; return $ratval; } }
ابحث عن
رمز PHP: $gotopage = str_replace('&', '&', $gotopage);
اضف اسفله
رمز PHP: $gotopage = create_full_url($gotopage); $gotopage = str_replace('"', '', $gotopage);
ابحث عن
رمز PHP: print_table_footer(2, construct_button_code($vbphrase['continue'], $continueurl));
استبدل بـ
رمز PHP: print_table_footer(2, construct_button_code($vbphrase['continue'], create_full_url($continueurl)));
ابحث عن
رمز PHP: print_table_footer(); echo '<p align="center" class="smallfont">' . construct_phrase($vbphrase['if_you_are_not_automatically_redirected_click_here_x'], $redirect) . "</p>\n"; print_cp_redirect($redirect, $delay);
استبدل بـ
رمز PHP: print_table_footer();
$redirect_click = create_full_url($redirect); $redirect_click = str_replace('"', '', $redirect_click);
echo '<p align="center" class="smallfont">' . construct_phrase($vbphrase['if_you_are_not_automatically_redirected_click_here_x'], $redirect_click) . "</p>\n"; print_cp_redirect($redirect, $delay);
ابحث عن
رمز PHP: $back_button = '<input type="button" class="button" value="' . $vbphrase['go_back'] . '" title="" tabindex="1" onclick="window.location='' . $backurl . '';"/>';
اضف اعلاه
رمز PHP: $backurl = create_full_url($backurl); $backurl = str_replace(array('"', "'"), '', $backurl);
===================================
ملف functions.php الموجود داخل مجلد includes
ابحث عن
رمز PHP: if (!preg_match('#^[a-z]+://#i', $url))
استبدل بـ
رمز PHP: if (!preg_match('#^[a-z]+(?<!about|javascript|vbscript|data)://#i', $url))
ابحث عن
رمز PHP: if ($issupermod AND !isset($permissioncache["$userid"]['hassuperrecord']))
اضف اعلاه
رمز PHP: $vbulletin->db->free_result($ismod_all);
===================================
ملف version_vbulletin.php الموجود داخل مجلد includes
استبدل محتوي الملف بالتالي
رمز PHP: <?php
define('FILE_VERSION_VBULLETIN', '3.7.1 Patch Level 2');
?>
===================================
انتهي ملحوظه : لاتقم برفع باتش الترقيع من ترخيص غير ترخيص موقعك وفقني الله وإياكم | |
|