Frisky vbulletin. Ո՞ր ֆորումն է ավելի լավ vBulletin կամ PunBB: Կարդացեք ֆայլերը, կատարեք հրամաններ

Հիմնական առավելությունները.

  • Արագ և արդյունավետ տվյալների բազայի շրջանակ
  • Կաղապարներից բաղկացած ինտերֆեյս
  • Հզոր որոնման համակարգ
  • Բազմալեզու աջակցություն
  • Օգտատիրոջ պրոֆիլներ
  • Հզոր և հարմար ադմինիստրատորի վահանակ
  • Անսահմանափակ թվով բաժիններ / թեմաներ / հաղորդագրություններ
  • Ծանուցումներ էլեկտրոնային փոստով
  • COPPA աջակցություն

Քանի որ արտադրողը չի տրամադրում ֆորումի ցուցադրումը, որը կարելի է տեղադրել, ես ստիպված էի տեղադրել ձախ տարբերակը՝ ներբեռնված ինչ-որ Vareznik-ից։ Այսպիսով, հրահանգները կարող են ամբողջությամբ չհամապատասխանել լիցենզավորման ֆորումի տեղադրման գործընթացին: Տեղադրվելուց հետո կայքը ջնջվել է և չի օգտագործվել իր նպատակային նպատակների համար:

VBulletin-ը տեղադրելու համար անցեք հոսթինգի կառավարման վահանակ (բիլինգում հոսթինգի պատվերի կողքին գտնվող հանդերձանքով կոճակը), այնտեղ «Ֆայլերի մենեջեր» բաժնում մենք գնում ենք «www» գրացուցակ: Սեղմեք «Վերբեռնել ֆայլը ընթացիկ գրացուցակ» կոճակը.

Նշեք ձեր համակարգչի ֆայլի ուղին.

Ընտրեք արխիվը vBulletin-ով և բացեք այն.

Մենք ջնջում ենք ֆայլերը և գրացուցակները, որոնք մեզ պետք չեն, ներառյալ մեր www տիրույթի գրացուցակը, պայմանով, որ այնտեղ ձեզ անհրաժեշտ որևէ բան չկա: Եթե ​​դուք այն չեք դնում կայքի արմատում, կամ կայքի գրացուցակում ինչ-որ բան անհրաժեշտ է, ապա կարիք չկա ջնջել www տիրույթի գրացուցակը.

Ընտրեք գրացուցակը vBulletin տեղադրիչով և վերանվանեք այն.

Մուտքագրեք մեր կայքի անունը որպես գրացուցակի անվանում.

Գնացեք հոսթինգի կառավարման վահանակի «Տվյալների բազաներ» բաժին.

Մենք ստեղծում ենք նոր բազա MySQL տվյալներ, և օգտագործող, հետ լիարժեք իրավունքներմուտք գործել այն.

Խնդրում ենք նկատի ունենալ, որ և՛ օգտվողը, և՛ տվյալների բազան ավտոմատ կերպով ստացել են նախածանց՝ հիմնվելով հոսթինգ սերվերի վրա ձեր հաշվի անվան վրա.

Եկեք գնանք գլխավոր էջմեր կայքում, մենք ստանում ենք հետևյալ vBulletin սխալը.

Մուտքագրեք տեղադրողի ուղին հասցեի բար, անհրաժեշտ է ավելացնել «install/install.php», որից հետո կսկսվի vBulletin ֆորումի տեղադրման ծրագիրը.

vBulletin տեղադրիչը ստուգում է հետևյալ ֆայլերի առկայությունը.

Հաջորդ քայլը տվյալների բազայի հետ կապը ստուգելն է, այն չի անցնում, քանի որ... Ֆորումի կազմաձևման ֆայլը պարունակում է սխալ տվյալներ.

Մենք վերադառնում ենք հոսթինգի կառավարման վահանակ, ֆայլերի կառավարիչ, անցեք ֆորումի հետ գրացուցակ, այնուհետև «ներառում է» ենթատեղեկատու: Բացեք «config.php» ֆայլը.

Մենք տվյալների բազայից ճիշտ տվյալները մուտքագրում ենք կազմաձևման ֆայլ, որից հետո փակում ենք այն.

Մենք վերադառնում ենք կայք, տեղադրողին: սեղմեք «F5», այս անգամ ամեն ինչ լավ է, կապը տվյալների բազայի հետ միասին աճել է.

vBulletin տեղադրիչը տվյալների բազայում աղյուսակներ է ստեղծում.

vBulletin տեղադրիչը փոխում է որոշ աղյուսակների տեսակները.

Տվյալները մուտքագրվում են տվյալների բազա.

Ներմուծված լեզուներ.

Ոճերը ներմուծվում են.

Օգնությունը ներմուծվում է՝

Մենք չենք շոշափում լռելյայն կարգավորումները, vBulletin-ի տեղադրման ծրագիրը ամեն ինչ ճիշտ է որոշել.

Լռելյայն կարգավորումները ներմուծված են՝

Մուտքագրեք vBulletin-ի ադմինիստրատորի տվյալները.

vBulletin-ի ադմինիստրատորը հաջողությամբ ավելացվել է.

vBulletin-ի տեղադրումը հոսթինգում հաջողությամբ ավարտվել է.

Հետևելով վերջին խորհուրդըտեղադրող, հեռացնել ավելորդ ֆայլերը.

Դուք կարող եք գնալ vBulletin ֆորում, որպեսզի համոզվեք, որ ամեն ինչ ճիշտ է աշխատում.

  • From:
  • Գրանցված: 2014.07.07
  • Գրառումներ: 3,825
  • Ես պարզապես սիրում եմ PunBB:
  • 5 տարիներ, 8 ամիսներ, 20 օրեր,
  • Հավանում է: 480

Թեմա՝ Ո՞ր ֆորումն է ավելի լավ vBulletin կամ PunBB

VBulletin-ը (Վոբլա կամ Բուլկա, ինչպես մենք ենք սիրում այն ​​անվանել) ամենահին կոմերցիոն ֆորումի շարժիչներից մեկն է, որը գրվել է PHP և MySQL տեխնոլոգիաների կիրառմամբ: 2000 թվականին առաջին տարբերակի թողարկումից ի վեր հսկայական աշխատանք է կատարվել ֆունկցիոնալությունը բարելավելու համար, ինչը թույլ է տվել VB-ին ներառել լավագույն ծրագրային արտադրանքների ցանկում:

VBulletin լիցենզիան ձեզ կարժենա մոտ $250: Վստահ եղեք, սա միանգամայն արդարացված ծախս է և, անշուշտ, կվճարի իր համար՝ խնայելով աշխատանքային ժամանակը և նյարդային բջիջները։ Այս գումարի մեծ մասը գնում է ծրագրավորողներին և ծրագրավորողներին, որոնք հետագայում այն ​​կօգտագործեն ֆունկցիոնալությունը բարելավելու և պատչերն ու հավելումները թողարկելու համար (այո, բոլոր թարմացումները ձեզ անվճար կտրամադրվեն ամբողջ տարվա ընթացքում):

2 Պատասխանել է PunBB

  • From: Մոսկվա, Սովխոզնայ 3, բն. 98
  • Գրանցված: 2014.07.07
  • Գրառումներ: 3,825
  • Ես պարզապես սիրում եմ PunBB:
  • 5 տարիներ, 8 ամիսներ, 20 օրեր,
  • Հավանում է: 480

Իմաստ չկա թվարկել VBulletin-ի բոլոր գործառույթները: Նրանք իրականացրել են գրեթե այն ամենը, ինչ կարող է անհրաժեշտ լինել ֆորումի ադմինիստրատորներին: Փոդքասթինգ, բազմակողմանի մեջբերումների աջակցություն, բաժանված սոցիալական խմբերեւ համայնքներ, վարկանիշային համակարգ (հեղինակություն). Հիմնական փաթեթը կարող է համալրվել երրորդ կողմի ընդլայնումներով:

VBulletin ֆորումի շարժիչը լուրջ բեռ է ստեղծում սերվերի վրա, հատկապես, եթե տեղադրված են երրորդ կողմի հավելումներ և սցենարներ: Ապագայում էջերի բեռնման հետ կապված խնդիրներից խուսափելու համար դուք ստիպված կլինեք դուրս գալ սովորական հոսթինգի համար: Հատկապես, եթե ապագայում ավելի շատ տրաֆիկ եք կանխատեսում ձեր ռեսուրսի համար:

3 Պատասխանել է PunBB

  • From: Մոսկվա, Սովխոզնայ 3, բն. 98
  • Գրանցված: 2014.07.07
  • Գրառումներ: 3,825
  • Ես պարզապես սիրում եմ PunBB:
  • 5 տարիներ, 8 ամիսներ, 20 օրեր,
  • Հավանում է: 480

Re: Ո՞ր ֆորումն է ավելի լավ vBulletin կամ PunBB

VBulletin-ը, հաքերների և սպամ-բոթերի նկատմամբ ծայրահեղ դիմադրության պատճառով, խորհուրդ է տրվում օգտագործել մեծ լուրջ նախագծերում: Բացի այդ, ստանդարտ պարամետրերը և կազմաձևման ֆայլերը կարող են հեշտությամբ փոխվել ձեր սեփական ձևով, հասնելով էլ ավելի մեծ էֆեկտի: Համացանցում կան բազմաթիվ հրահանգներ և ուղեցույցներ ժողովրդական արհեստավորների կողմից, թեև ոչ բոլորին պետք է վստահել:

VBulletin-ը լավագույնս իրականացնում է լայնածավալ գաղափարներ: Մշտական ​​թարմացումներ, բարձրակարգ սպասարկում, լրացուցիչ ընդարձակումներև հուսալի անվտանգության մեխանիզմներ. այս ամենը արժե այն գումարը, որը ծախսվել է արտադրանքի վրա:

4 Պատասխանել է PunBB

  • From: Մոսկվա, Սովխոզնայ 3, բն. 98
  • Գրանցված: 2014.07.07
  • Գրառումներ: 3,825
  • Ես պարզապես սիրում եմ PunBB:
  • 5 տարիներ, 8 ամիսներ, 20 օրեր,
  • Հավանում է: 480

Re: Ո՞ր ֆորումն է ավելի լավ vBulletin կամ PunBB

Անիմաստ է թվարկել բոլոր գործառույթները. այն (կամ դրա հավելումները) իրականացնում է գրեթե այն ամենը, ինչ կարող է անհրաժեշտ լինել ադմինիստրատորին ֆորում ստեղծելու համար: Կա բազմակի մեջբերումներ, աջակցություն podcasting-ին, օգտվողների համայնքներին, սոցիալական խմբերին, հեղինակության ճկուն համակարգին և շատ ավելին:

Իհարկե, vBulletin-ն ունի մեծ թվով հավելումներ և օգտատերերի համայնքներ, ուստի սպասարկման հետ կապված խնդիրներ չեն լինի, հատկապես, որ կա պաշտոնական աջակցման թիմ: vBulletin-ի թերությունը, թեև շատ մեծ չէ, բայց վճարովի հավելումներն են, օրինակ՝ օգտատերերի բլոգների համար։

Մեծ հաշվով, ֆորումը ոչ մի թերություն չունի։ Այն կարող է առաջարկվել մեծ լուրջ նախագծերի համար հենց իր հուսալիության և բոլոր տեսակի հարձակումներին դիմադրության պատճառով: Արդյունքում սերվերի վրա զգալի ծանրաբեռնվածություն է ստեղծում հատկապես տեղադրված հավելումներով, բայց լուրջ նախագծերի համար սովորաբար օգտագործում են լուրջ սերվերներ և լուրջ ադմինիստրատորներ։

Ցանկացած շարժիչ պահանջում է որոշակի գործողություններ՝ այն ավելի լավ և լավ օպտիմալացնելու համար արագ աշխատանք. Մեր դեպքում մենք կխոսենք Vbulletin 4-ի օպտիմալացման մասին:

Քանի որ մեր ֆորումի շարժիչը անընդհատ թարմացվում է, ես ավելին չեմ գրի օպտիմալացման մասին ավելի վաղ տարբերակները Vbulletin, բայց ես կսկսեմ 4.1.12 տարբերակից: Չնայած դա հնարավոր է, ես աստիճանաբար այս հոդվածը կլրացնեմ օպտիմալացումով նախորդ տարբերակները, քանի որ ոչ բոլորն են անցնում նորերի։

Այստեղ ես կբերեմ մի քանի օրինակներ՝ ձեր Vbulletin ֆորումն ավելի արագ և լավը դարձնելու համար (սկսած ամենապարզ բաներից և անցնելով ավելի բարդներին): Խնդրում եմ նկատի ունեցեք, որ այն, ինչ աշխատում է ինձ համար, անպայման չի աշխատի ձեզ համար: Հետևաբար, դուք բոլոր փոփոխությունները կատարում եք ձեր սեփական վտանգի տակ և ռիսկով:

Օգտագործողների ցուցակի անջատում:

AdminCP-ում գործառույթն ուղղակի անջատելու հեշտ միջոց կա: (Կարգավորումներ -> Ընտրանքներ -> Օգտագործողների ցուցակման ընտրանքներ)

Սա, իհարկե, գլոբալ չէ, և դուք կարող եք դա բաց թողնել և չանել, պարզապես ինքներդ ձեզ հարց տվեք՝ դա ձեզ պե՞տք է: Ցուցակ ունենալուց հետո օգտատերերը կարող են տեսակավորել այն, տեսնել, թե ով ունի ավելի շատ հաղորդագրություններ, հեղինակություն և այլն: Ձեր օգտվողներն օգտվու՞մ են սա: Հավանաբար ոչ... ե՞րբ եք վերջին անգամ օգտագործել այս ցուցակը:

Ինչ վերաբերում է ինձ, ինձ թվում է, որ այս ցուցակները օգուտ են բերում միայն սպամերին, քանի որ սա Vbulletin 4 ֆորումի մասնակիցների բոլոր անունները հավաքելու ամենահեշտ ձևն է՝ անձնական հաղորդագրություններում սպամ ուղարկելու համար:

Բացի այդ, օգտվողների ցուցակ ստեղծելու համար պահանջվող հարցումը սարսափելի է տվյալների բազայի սերվերների համար և կարող է հանգեցնել սերվերի մեծ բեռի:

Անձնական հաղորդագրությունների ցանկը մշակելիս արագության բարձրացում:

Եթե ​​դուք երբեք չեք ներմուծել անձնական հաղորդագրություններ արտաքին աղբյուրներից՝ օգտագործելով Impex-ը կամ այլ միջոցներ, կարող եք ապահով կերպով ապավինել անձնական հաղորդագրությունների ID տեսակավորմանը: Ըստ ID-ի տեսակավորումը այն կդարձնի այնպես, որ ձեր տվյալների բազայի սերվերը ստիպված չլինի անձնական հաղորդագրությունները ժամանակավոր աղյուսակի մեջ գցել՝ տեսակավորումը կատարելու համար (հարցումը շատ ավելի արագ կդարձնի):

Դա անելու համար հարկավոր է մասնավոր_messagelist_filter-ում տեղակայմամբ փոքր մոդուլ գրանցել և դրանում գրել հետևյալը.

Եթե ​​($sortfield == "pmtext.dateline") $sortfield = "pm.pmid";

Եվ վերջ, դուք պարզապես private.php-ն ~20%-ով ավելի արագ եք դարձրել:


Մենք ստեղծեցինք օգտվողի վերջին հաղորդագրությունների ավելի արդյունավետ որոնում:

Մենք գնում ենք FTP, փնտրում ենք, որ ֆայլը ներառում է /class_userprofile.php և փոխարինում ենք դրանում եղած տվյալները հետևյալ կերպ, որոնում ենք.

$getlastposts = $this->registry->db->query_read_slave(" SELECT thread.title, thread.threadid, thread.forumid, thread.postuserid, post.postid, post.dateline FROM " . TABLE_PREFIX հաղորդագրություն: ՄԻԱՑԵՔ " . TABLE_PREFIX . "thread AS thread USING (threadid) WHERE thread.visible = 1 AND post.userid = " . $this->userinfo["userid"] . " AND post.visible = 1 ORDER BY post.dateline DE LIMIT 20 »);

և այն փոխարինել հետևյալով (ավելի կոնկրետ՝ ՊԱՏՎԻՐԵԼ ԸՍՏ).

$getlastposts = $this->registry->db->query_read_slave(" SELECT thread.title, thread.threadid, thread.forumid, thread.postuserid, post.postid, post.dateline FROM " . TABLE_PREFIX հաղորդագրություն: ՄԻԱՑԵՔ " . TABLE_PREFIX . "thread AS thread USING (threadid) WHERE thread.visible = 1 AND post.userid = " . $this->userinfo["userid"] . " AND post.visible = 1 ORDER BY post.postid DE LIMIT 20 »);

Սա դարձնում է հարցումը մի փոքր ավելի ճիշտ, քան այն արդեն կա: Այս կերպ դուք ստիպված չեք լինի դասավորել ժամանակավոր աղյուսակի մեջ: 1000-ից ավելի հաղորդագրություններ ունեցող օգտատերերի համար նախնական հարցումը տևելու է մոտ 10 վայրկյան, մեր դեպքում՝ շատ ավելի քիչ: Սա հիմնականում վերաբերում է Vbulletin 4 օգտվողի պրոֆիլին՝ վերջին գրառումները ցուցադրելու համար:

Թեմայի ինդեքսը ստուգելը:

Եթե ​​ձեր ֆորումներն ունեն լռելյայն տեսակավորման կարգ, որը սահմանված է առանց փոփոխությունների, ինչպես մենք արեցինք վերևում, համոզվեք, որ ձեր բոլոր ինդեքսները գտնվում են իրենց աղյուսակներում: Եղել են դեպքեր, երբ ինձ անհայտ պատճառներով ինդեքսները համընկնում են, և որոշ ֆորումներ չեն բացվում։

Ես առաջարկում եմ, որ լռելյայն տեսակավորումը լինի ամսաթվի տեսքով (այս տվյալներն օգտագործող սյունակը կոչվում է «ամսաթիվ»), և դա իրականացնելու համար եկեք գործարկենք հարցումը.

ՓՈՓՈԽԵԼ ՍԵՂԱՆԻ շարանը ԱՎԵԼԱՑՆԵԼ INDEX forumid2_dp (ֆորումիդ, տեսանելի, կպչուն, ամսաթվի)

Այս հարցումը վերաբերում է կոնկրետ ինձ, ձեր դեպքում forumid2_dp-ը պետք է ունենա ձեր անունը: Օգտագործեք ձեր ռիսկով:

Զգույշ եղեք հավելումներ տեղադրելիս:

Միայն այն պատճառով, որ ինչ-որ մեկը մոդուլներ և հաքեր է ստեղծում, չի նշանակում, որ դրանք ստեղծված են հենց ձեզ համար, աշխատել են Vbulletin 4-ի մեծ ֆորումներում և զերծ են սխալներից: Գերազանց օրինակ են զանգվածային հաքերների մասին հաղորդումները այս կամ այն ​​հաքերով:

Իհարկե, կարելի է ենթադրել, որ մշակողները չեն կարող ամեն ինչ հաշվի առնել, և բոլոր հաքերները մաղել, որպեսզի չհակասեն, բայց... Համոզվեք, որ Vbulletin մոդուլը տվյալների բազայի մեծ բեռներ չի առաջացնում, համոզվեք, որ կոտրելը դեմ պաշտպանվելու ներուժ ունի SQL ներարկումկամ XSS. Ցավոք սրտի, կան հազարավոր հավելվածներ և փոփոխություններ, և ամեն ինչ ստուգել պարզապես հնարավոր չէ: Ավելի լավ կլինի, եթե բոլոր հաքերները ինքներդ գրեք, կամ պատվիրեք ուրիշից։ Հատուկ հարմարեցված է ձեզ և ձեր առաջադրանքներին:

Մի օգտագործեք աղյուսակներ InnoDB-ում:

Այստեղ, իհարկե, կարող են թքել իմ երեսին, քանի որ այս թեման արդեն միլիոն անգամ քննարկվել է, բայց իմ սեփական փորձից կարող եմ ասել, որ ես 100% աշխատում եմ MyISAM սեղանների վրա ցանկացած գործողության համար: Երբեմն ես վայրկյանում 1000 հարցում եմ մշակում:

Եթե ​​դուք արդեն սկսել եք զայրանալ, թե որտեղ է ամեն ինչ կախված հարցումների ժամանակ, հատկապես նոր Vbulletin որոնման ժամանակ, փոխեք InnoDB աղյուսակները MyISAM-ի: MyISAM-ն ավելի արագ է արձագանքում անհատական ​​հարցումներին, քանի որ դուք պետք չէ կառավարել անհատական ​​գրառումների կողպումը: InnoDB-ն ընդհանուր առմամբ ավելի արագ է, բայց միայն այն պատճառով, որ թույլ է տալիս հարցումները կատարել միաժամանակ: Եթե ​​ձեր հարցումներն արդեն արագ են աշխատում MyISAM-ի ներքո, ապա կարիք չկա անցնել InnoDB-ին: IMHO.

Հոդվածների վարկանիշ

0%

Վարկանիշ

Օգտատիրոջ գնահատական. 0.35 (1 ձայն)

Միայն տեղեկատվական նպատակներով: Վարչակազմը պատասխանատվություն չի կրում դրա բովանդակության համար: Ներբեռնեք անվճար:


vBulletin Connect v5.3.3-ը հզոր, մասշտաբային և լիովին կարգավորելի ֆորումի փաթեթ է ձեր կայքի համար:

Տարբերակ: 5.3.3 (չեղարկված vBSupport.org-ի կողմից)

Նվազագույն պահանջներ php 5.6
Համատեղելի է php 7.1-ի հետ
ժամը նոր տեղադրումդուք պետք է վերանվանեք htaccess.txt ֆայլը .htaccess
Թարմացնելիս ջնջեք տառատեսակների թղթապանակը (նախքան թարմացումը սկսելը):

Նոր հնարավորություններ.
Նոր UI լայն սոցիալական ինտեգրումով;
Օպտիմիզացված բջջային սարքերի համար;
Պարզեցված տեղադրում, կառավարում և կազմաձևում;
Տվյալների բազայի նոր ճարտարապետություն՝ բարելավված որոնման և ավելի լավ կատարման համար;
Հարմար դինամիկ բովանդակության փոփոխություն;
Ընդլայնված տեսանյութերի և պատկերների փոխանակման համար;
Ամբողջական ինտեգրում VigLink-ի հետ;
Ավելի քան 100 այլ նոր հնարավորություններ և բարելավումներ;

Ներկառուցված հավելվածներ.
Քննարկման ֆորում
Խմբեր
Հարցումներ
Բլոգ

Որոնման համակարգի օպտիմիզացում.
SEO-ի համար հարմար URL-ներ
Հատուկ բանալի բառ/նկարագրություն META պիտակ

Ճկունություն:
Ընդլայնվող օգտվողի պրոֆիլներ
URL-ի վերագրանցում
Ինտերֆեյսի տեղայնացում
Մետատվյալներ

Համապատասխանություն ստանդարտներին.
Բովանդակության համակցություն (RSS)
Բովանդակության համադրություն՝ RSS, Atom, XML
PHP v5.4 համատեղելի

Չխախտվող ինտեգրված համակարգ.
Ներառված միակ մուտքը
Մեկ լուծման համակարգ
Միակ ադմինիստրատորի կառավարման վահանակը
Ստեղծեք շարունակական ոճ/թեմա հոդվածների, բլոգերի, ֆորումի միջոցով

Վահանակներ յուրաքանչյուր դերի համար.
Վարչական վերահսկողություն
Մոդերատորի կառավարման վահանակ
Պատվերով կառավարման վահանակ
Միասնական լուծման համակարգ
Էլեկտրաէներգիայի ձևանմուշ շարժիչ՝ առաջադեմ հարմարեցման համար

Օգտագործողի վերահսկում.
Բազմ օգտատերերի համակարգ՝ անսահմանափակ դերերով և լիազորություններով
Ներգրավված խմբեր
Անվտանգություն
հատիկավոր հզորություններ
Խնդրի մասին ծանուցում
Համատեղելի SSL
Կապչա
Էլփոստի հասցեի հաստատում
Վարչական կառավարման վահանակի նորությունների խմբագիր
Մուտք գործադուլ համակարգ
Էլփոստի և գաղտնաբառի փոփոխությունները պահանջում են ընթացիկ գաղտնաբառը
Համապատասխանում է Երեխաների առցանց գաղտնիության պաշտպանության ակտին (COPPA) 1998 թ

1. Գնացեք ադմինիստրատորի կառավարման վահանակ.
Լեզուներ և արտահայտություններ - Ներբեռնեք / վերբեռնեք լեզուներ:
2. «ԿԱՄ վերբեռնեք XML ֆայլը ձեր համակարգչից» դաշտում մուտքագրեք ուղին դեպի
vbulletin-language_ru.xml ֆայլը ձեր համակարգչում:
3. «Վերգրել լեզու» տարբերակում ընտրեք «Ստեղծել նոր լեզու»
4. «Վերբեռնված լեզվի վերնագիր» դաշտում մուտքագրեք լեզվի անունը:
Եթե ​​մուտքագրված տվյալներ չկան, լեզուն կկոչվի «ռուսերեն (RU)»:
5. Սահմանեք «Այո»-ն «Անտեսել լեզվի տարբերակը»
6. Սահմանեք «Այո»-ն «Կարդալ նիշերի հավաքածուն XML ֆայլից»
7. Սեղմեք «Ներմուծում» կոճակը և սպասեք ներբեռնման գործընթացի ավարտին:
7A Եթե ցանկանում եք, կարող եք անել նոր լեզու«Լռելյայն» լեզու
սեղմելով դրա կողքին գտնվող «Default» / «Default Value» կոճակը:





Դուք հավանաբար բազմիցս տեսել եք ֆորումներ vBulletin շարժիչի վրա: Ֆորումները որպես այդպիսին այլևս նորաձև չեն, բայց vBulletin-ը դեռևս ամենահայտնի շարժիչներից մեկն է: Նրա վերջին (հինգերորդ) տարբերակում հայտնաբերվել են մի քանի խոցելիություններ, որոնք կարող են մեծապես փչացնել ադմինիստրատորի կյանքը։ Այս հոդվածում ես ձեզ կասեմ, թե ինչպես են դրանք օգտագործվում:

Առաջին խնդիրը օգտվողների տվյալների սխալ զտումն է: Այդ մասին հայտնել է անվտանգության անկախ հետազոտողը, ով ցանկացել է անանուն մնալ: Խոցելիությունը, թեև այն ունի որոշ սահմանափակումներ, ստացել է կրիտիկական կարգավիճակ, քանի որ այն թույլ է տալիս կարդալ ցանկացած ֆայլ և կատարել կամայական կոդ թիրախային համակարգում:

Երկրորդ խոցելիությունը հայտնաբերվել է TRUEL IT-ի հետազոտողների կողմից և ստացել է CVE-2017-17672 նույնացուցիչը: Այն կապված է շարժիչում տվյալների ապասերիալացման առանձնահատկությունների հետ և կարող է օգտագործվել հարձակվողի կողմից՝ ջնջելու համակարգի կամայական ֆայլերը:

Ամբողջական զեկույցները, որոնք մանրամասնում են երկու խնդիրները, հրապարակվել են SecuriTeam-ի Beyond Security ծրագրի շրջանակներում: Կան նաև PoC շահագործումներ՝ խոցելիությունները ցուցադրելու համար: Այս ամենի միջով անցնենք հերթականությամբ։

Նախապատրաստություններ

Ես օգտագործել եմ WAMP բաշխումը որպես սերվեր:

Կարդացեք ֆայլերը, կատարեք հրամաններ

Այսպիսով, առաջին խոցելիության պատճառը սխալ տրամաբանությունն է երթուղղիչի պարամետրը մշակելիս, որը հարձակվողին թույլ է տալիս ներառել ցանկացած ֆայլ սկավառակի վրա՝ ներառելու և գործարկելու PHP կոդը, որը գտնվում է դրանում:

Մեր ճանապարհը սկսվում է ամենակարևոր ֆայլից՝ index.php, որտեղ տեղի է ունենում հավելվածի հիմնական սկզբնավորումը։

/index.php
48. $app = vB5_Frontend_Application::init("config.php"); ... 60. $routing = $app->getRouter(); 61. $method = $routing->getAction(); 62. $template = $routing->getTemplate(); 63. $class = $routing->getControllerClass();

Եկեք նայենք vB5_Frontend_Application::init մեթոդին:

/includes/vb5/frontend/application.php
13. դասը vB5_Frontend_Application ընդլայնում է vB5_ApplicationAbstract 14: ( 15: public static ֆունկցիա init($configFile) 16: ( 17: parent::init ($configFile); 18: 19: self::$instance = new vB_Appont(end); self::$instance->router = new vB5_Frontend_Routing();21:self::$instance->router->setRoutes();

Այստեղ մեզ հետաքրքրում է setRoutes մեթոդը։

47. հանրային ֆունկցիա setRoutes() 48: ( 49: $this->processQueryString(); ... 54: if (isset($_GET["routestring"])) 55: ( 56: $path = $_GET[" երթուղղիչ»];

$path փոփոխականը պարունակում է userdata արժեքը routestring պարամետրից: Դուք կարող եք դրա մեջ փոխանցել ֆորումի էջի ճանապարհը, և այն կբեռնվի:



Ենթադրենք, մենք անցել ենք /test .

Փոփոխական նշանակելուց հետո կա մի կոդ, որը ազատվում է տողի սկզբի կտրվածքից, եթե առկա է:

/includes/vb5/frontend/routing.php
75: if (strlen($path) AND $path(0) == "/") 76: ( 77: $path = substr($path, 1); // $path = "test" 78: )
ներառում է\vb5\frontend\routing.php
83: if (strlen($ուղի) > 2) 84: ( 85: $ext = strtolower(substr($ path, -4)); 86: if (($ext == ".gif") ԿԱՄ ($ext): == ".png") ԿԱՄ ($ext == ".jpg") ԿԱՄ ($ext == ".css") 87. ԿԱՄ (strtolower(substr($ path, -3)) == ".js" )) 88: ( 89: header ("HTTP/1.0 404 Not Found"); 90: Die (""); 91: ) 92: )

Ինչպես տեսնում եք, ստուգումը բավականին տարօրինակ է։ Առնվազն, ուղղակի կոդի մեջ գրված արգելված ընդարձակումների ցանկի առկայությունը շփոթեցնող է: Եվ ընդհանրապես, տարակուսելի է հենց այն փաստը, որ ընդլայնումը ստացվում է տողի վերջից չորս նիշ կտրելով (տող 85): Ընդհանուր առմամբ, եթե մենք փորձենք ֆայլ ստանալ gif, png, jsp, css կամ js ընդլայնումներով, ապա սերվերը կվերադարձնի 404 էջ, և սկրիպտը կդադարի գործել։ Երբ բոլոր ստուգումները անցնում են, getRoute մեթոդը vB_Api_Route դասից կանչվում է callApi-ի միջոցով: Այն որոնում է հարմար երթուղիներ՝ օգտատիրոջ տրամադրած տեղեկատվության հիման վրա:

Շարունակությունը հասանելի է միայն անդամներին

Տարբերակ 1. Միացեք «կայքի» համայնքին՝ կայքի բոլոր նյութերը կարդալու համար

Նշված ժամանակահատվածում համայնքին անդամակցությունը ձեզ հնարավորություն կտա մուտք գործել ԲՈԼՈՐ Հաքերային նյութերը, կավելացնի ձեր անձնական կուտակային զեղչը և թույլ կտա ձեզ կուտակել պրոֆեսիոնալ Xakep Score վարկանիշ: