النتائج 1 إلى 5 من 5

الموضوع: vBulletin® v3.6.0 . . الرجاءً الدخـول P:~

  1. #1
    عضو فعال
    تاريخ التسجيل
    Sep 2006
    المشاركات
    1,619

    vBulletin® v3.6.0 . . الرجاءً الدخـول P:~



    مرحباٍ ,

    اما بعد جميع إلأصدارات مصابه :shy:

    /vb/payment_gateway

    سطر; 51

    النوع; Remote File Inclusion

    المصاب ~

    if (file_exists(DIR . '/includes/paymentapi/class_' . $api['classname'] . '.php'))
    أقتباس عسى ولعل :con2:

    قم بحذف ملف payment_gateway.php

    لأن ما منه فاايده للمنتدى أساساً

    ::::::::::::: كود الملف!! :::::::::::::

    كود PHP:
    <?php
    /*======================================================================*\
    || #################################################################### ||
    || # vBulletin 3.6.5
    || # ---------------------------------------------------------------- # ||
    || # Copyright ©2000-2007 Jelsoft Enterprises Ltd. All Rights Reserved. ||
    || # This file may not be redistributed in whole or significant part. # ||
    || # ---------------- VBULLETIN IS NOT FREE SOFTWARE ---------------- # ||
    || # http://www.vbulletin.com | http://www.vbulletin.com/license.html # ||
    || #################################################################### ||
    \*======================================================================*/

    // ####################### SET PHP ENVIRONMENT ###########################
    error_reporting(E_ALL & ~E_NOTICE);

    // #################### DEFINE IMPORTANT CONSTANTS #######################
    define('THIS_SCRIPT''payment_gateway');
    define('SKIP_SESSIONCREATE'1);

    // #################### PRE-CACHE TEMPLATES AND DATA ######################
    // get special phrase groups
    $phrasegroups = array('subscription');

    // get special data templates from the datastore
    $specialtemplates = array();

    // pre-cache templates used by all actions
    $globaltemplates = array();

    // pre-cache templates used by specific actions
    $actiontemplates = array();

    // ######################### REQUIRE BACK-END ############################
    define('VB_AREA''Subscriptions');
    define('CWD', (($getcwd getcwd()) ? $getcwd '.'));
    require_once(
    CWD '/includes/init.php');

    require_once(
    DIR '/includes/adminfunctions.php');
    require_once(
    DIR '/includes/class_paid_subscription.php');

    $vbulletin->input->clean_array_gpc('r', array(
        
    'method'    => TYPE_STR
    ));

    $vbulletin->nozip true;

    $api $db->query_first_slave("SELECT * FROM " TABLE_PREFIX "paymentapi WHERE classname = '" $db->escape_string($vbulletin->GPC['method']) . "'");
    if (!empty(
    $api))
    {
        
    $subobj = new vB_PaidSubscription($vbulletin);
        if (
    file_exists(DIR '/includes/paymentapi/class_' $api['classname'] . '.php'))
        {
            require_once(
    DIR '/includes/paymentapi/class_' $api['classname'] . '.php');
            
    $api_class 'vB_PaidSubscriptionMethod_' $api['classname'];
            
    $apiobj = new $api_class($vbulletin);

            
    // at this point we know if the system is going to want to display feedback, so do the appropriate queries here
            
    if ($apiobj->display_feedback)
            {
                
    // initialize $vbphrase and set language constants
                
    $vbphrase init_language();

                
    $vbulletin->userinfo['styleid'] = $vbulletin->options['styleid'];
                
    $style $db->query_first_slave("
                    SELECT *
                    FROM " 
    TABLE_PREFIX "style
                    WHERE styleid = " 
    intval($vbulletin->options['styleid'])
                );
                
    define('STYLEID'$style['styleid']);

                
    cache_templates(array('STANDARD_REDIRECT''STANDARD_ERROR''STANDARD_ERROR_LITE''headinclude'), $style['templatelist']);
                
    $stylevar fetch_stylevars($style$vbulletin->userinfo);
                eval(
    '$headinclude = "' fetch_template('headinclude') . '";');
            }

            if (!empty(
    $api['settings']))
            { 
    // need to convert this from a serialized array with types to a single value
                
    $apiobj->settings $subobj->construct_payment_settings($api['settings']);
            }

            if (
    $apiobj->verify_payment())
            {
                
    // its a valid payment now lets check transactionid
                
    $transaction $db->query_first("
                    SELECT *
                    FROM " 
    TABLE_PREFIX "paymenttransaction
                    WHERE transactionid = '" 
    $db->escape_string($apiobj->transaction_id) . "'
                        AND paymentapiid = 
    $api[paymentapiid]
                "
    );
                if (empty(
    $transaction))
                {
                    
    /*insert query*/
                    
    $trans = array(
                        
    'transactionid' => $apiobj->transaction_id,
                        
    'paymentinfoid' => $apiobj->paymentinfo['paymentinfoid'],
                        
    'amount'        => $apiobj->paymentinfo['amount'],
                        
    'currency'      => $apiobj->paymentinfo['currency'],
                        
    'state'         => $apiobj->type,
                        
    'dateline'      => TIMENOW,
                        
    'paymentapiid'  => $api['paymentapiid'],
                    );

                    
    $db->query_write(fetch_query_sql($trans'paymenttransaction'));

                    if (
    $apiobj->type == 1)
                    {
                        
    $subobj->build_user_subscription($apiobj->paymentinfo['subscriptionid'], $apiobj->paymentinfo['subscriptionsubid'], $apiobj->paymentinfo['userid']);
                        if (
    $apiobj->display_feedback)
                        {
                            
    $vbulletin->url $vbulletin->options['bburl'] . '/payments.php';

                            eval(
    print_standard_redirect('payment_complete'truetrue));
                        }
                    }
                    else if (
    $apiobj->type == 2)
                    {
                        
    $subobj->delete_user_subscription($apiobj->paymentinfo['subscriptionid'], $apiobj->paymentinfo['userid'], $apiobj->paymentinfo['subscriptionsubid']);
                    }
                }
                if (
    $apiobj->type == 2)
                {
                    
    $subobj->delete_user_subscription($apiobj->paymentinfo['subscriptionid'], $apiobj->paymentinfo['userid'], $apiobj->paymentinfo['subscriptionsubid']);
                }

                if (
    $vbulletin->options['paymentemail'])
                {
                    if (!
    $vbphrase)
                    {
                        
    // initialize $vbphrase and set language constants
                        
    $vbphrase init_language();
                    }

                    
    $emailphrase = ($apiobj->type == 2) ? 'payment_reversed' 'payment_received';
                    
    $emails explode(' '$vbulletin->options['paymentemail']);

                    
    $username unhtmlspecialchars($apiobj->paymentinfo['username']);
                    
    $userid $apiobj->paymentinfo['userid'];
                    
    $subscription $vbphrase['sub' $apiobj->paymentinfo['subscriptionid'] . '_title'];
                    
    $amount vb_number_format($apiobj->paymentinfo['amount'], 2) . ' ' strtoupper($apiobj->paymentinfo['currency']);
                    
    $processor $api['title'];
                    
    $transactionid $apiobj->transaction_id;

                    eval(
    fetch_email_phrases($emailphrase0));
                    foreach(
    $emails AS $toemail)
                    {
                        if (
    trim($toemail))
                        {
                            
    vbmail($toemail$subject$messagetrue);
                        }
                    }
                }
            }
            else
            { 
    // something went horribly wrong, get $apiobj->error
                
    $trans = array(
                    
    'state'         => 0,
                    
    'dateline'      => TIMENOW,
                    
    'paymentapiid'  => $api['paymentapiid'],
                    
    'request'       => serialize(array(
                        
    'GET' => serialize($_GET),
                        
    'POST' => serialize($_POST)
                    )),
                );
                
    $db->query_write(fetch_query_sql($trans'paymenttransaction'));
                if (
    $apiobj->display_feedback AND !empty($apiobj->error))
                {
                    
    //die("<p>{$apiobj->error}</p>");
                    // we dont load header / footer, so just show the LITE template
                    
    define('VB_ERROR_LITE'true);
                    
    standard_error($apiobj->error);
                }
            }
        }
    }

    /*======================================================================*\
    || ####################################################################
    || # CVS: $RCSfile$ - $Revision: 15748 $
    || ####################################################################
    \*======================================================================*/
    ?>
    salam :app:





    __________________
    لا إله الا الله .. سبحانك إني كنت من الظالمين
    سبحانك الله و بحمدك .. سبحان الله العظيم ...!!


  2. #2
    مُجَاهِد سابقاً
    تاريخ التسجيل
    Apr 2004
    المشاركات
    12,000


    هل النسخة 3.6.5 هي المصابه فقط ؟؟
    وماهي اضرار هذه الثغرة ؟؟





    __________________
    استخدم خاصية تنبيه المشرفين للضرورة وعند ملاحظة موضوع يخالف قوانين منتديات سوالف وسيتم مراجعة الموضوع او المشاركة المبلغ عنها على الفور

  3. #3
    عضو فعال
    تاريخ التسجيل
    Sep 2006
    المشاركات
    1,619


    اقتباس المشاركة الأصلية كتبت بواسطة مُجَاهِد
    هل النسخة 3.6.5 هي المصابه فقط ؟؟
    وماهي اضرار هذه الثغرة ؟؟
    جميع نسخ الـ3.6.0 ونت صــااعد وليس الأصدار المذكور بالملف فقطً

    أضرارهاأ

    لا يوجد نتيجة استغلال صحيحه لحد الأن ولله يبعدناا

    سلام





    __________________
    لا إله الا الله .. سبحانك إني كنت من الظالمين
    سبحانك الله و بحمدك .. سبحان الله العظيم ...!!

  4. #4


    ليس تقصيراً بموضوعك ولكن للتأكيد

    ننتظر المشوره من اعضاء اخرين ايضا قبل التنفيذ

    شكرا لك






  5. #5
    عضو فعال
    تاريخ التسجيل
    Sep 2006
    المشاركات
    1,619


    عذوووب
    حقكك طال عمركٍ





    __________________
    لا إله الا الله .. سبحانك إني كنت من الظالمين
    سبحانك الله و بحمدك .. سبحان الله العظيم ...!!





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض