កំពុងផ្ទុក...

ថ្ងៃ ពុធ ទី៤ ខែ កុម្ភៈ ឆ្នាំ ២០២៦

ចំណុចខ្សោយ Apache bRPC អាចឱ្យមានការបញ្ចូលពាក្យបញ្ជាពីចម្ងាយ


ចំណុចខ្សោយដ៏សំខាន់មួយនៃការចាក់បញ្ចូលពាក្យបញ្ជាពីចម្ងាយត្រូវបានរកឃើញនៅក្នុងសេវាកម្ម heap profiler ដែលភ្ជាប់មកជាមួយរបស់ Apache bRPC ដែលប៉ះពាល់ដល់កំណែទាំងអស់មុន 1.15.0 នៅទូទាំងវេទិកាទាំងអស់។

ចំណុចខ្សោយនេះអនុញ្ញាតឱ្យអ្នកវាយប្រហារដែលមិនបានផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវប្រតិបត្តិពាក្យបញ្ជាប្រព័ន្ធដោយបំពានដោយការរៀបចំយន្តការផ្ទៀងផ្ទាត់ប៉ារ៉ាម៉ែត្ររបស់ profiler។

ចំណុចបញ្ចប់សេវាកម្ម heap profiler (/pprof/heap) បរាជ័យក្នុងការសម្អាតប៉ារ៉ាម៉ែត្រ extra_options ឱ្យបានត្រឹមត្រូវមុនពេលបញ្ជូនវាទៅការប្រតិបត្តិពាក្យបញ្ជាប្រព័ន្ធ។

ចំណុចខ្សោយនៃការរចនានេះអនុញ្ញាតឱ្យអ្នកវាយប្រហារចាក់បញ្ចូលពាក្យបញ្ជាព្យាបាទដែលប្រតិបត្តិជាមួយសិទ្ធិដំណើរការ bRPC។

មូលហេតុចម្បងគឺបណ្តាលមកពីការផ្ទៀងផ្ទាត់ការបញ្ចូលមិនគ្រប់គ្រាន់នៅក្នុងសមាសភាគទម្រង់អង្គចងចាំ jemalloc ដែលចាត់ទុកប៉ារ៉ាម៉ែត្រដែលផ្គត់ផ្គង់ដោយអ្នកប្រើប្រាស់ជាអាគុយម៉ង់បន្ទាត់ពាក្យបញ្ជាដែលទុកចិត្តដោយមិនចាំបាច់គេចចេញ ឬផ្ទៀងផ្ទាត់។

ភាពងាយរងគ្រោះនេះប៉ះពាល់ដល់ការដាក់ពង្រាយដែលប្រើទម្រង់ heap ដែលភ្ជាប់មកជាមួយ bRPC សម្រាប់ទម្រង់អង្គចងចាំ jemalloc។

ប្រព័ន្ធណាមួយដែលបង្ហាញចំណុចបញ្ចប់ /pprof/heap ទៅកាន់បណ្តាញដែលមិនគួរឱ្យទុកចិត្តប្រឈមមុខនឹងហានិភ័យខ្ពស់នៃការសម្របសម្រួលប្រព័ន្ធទាំងស្រុង។

ការកេងប្រវ័ញ្ចផ្តល់ឱ្យអ្នកវាយប្រហារនូវសមត្ថភាពប្រតិបត្តិកូដពីចម្ងាយដោយមិនចាំបាច់មានការផ្ទៀងផ្ទាត់។

ការវាយប្រហារដោយជោគជ័យអាចបណ្តាលឱ្យមានចលនាចំហៀងនៅក្នុងហេដ្ឋារចនាសម្ព័ន្ធបណ្តាញ ការលួចទិន្នន័យ ការរំខានសេវាកម្ម ឬការបង្កើតការចូលប្រើទ្វារក្រោយជាប់លាប់។

អង្គការដែលដំណើរការកំណែ bRPC ដែលងាយរងគ្រោះនៅក្នុងបរិយាកាសផលិតកម្មគួរតែផ្តល់អាទិភាពដល់ការជួសជុលជាបន្ទាន់។

កំណែ Apache bRPC 1.11.0 ដល់ 1.14.x គឺងាយរងគ្រោះ។ កំណែ 1.15.0 និងក្រោយមកទៀតរួមបញ្ចូលបំណះសុវត្ថិភាពចាំបាច់ដើម្បីដោះស្រាយភាពងាយរងគ្រោះនេះ។

វិធីសាស្រ្តកាត់បន្ថយពីរមាន៖

ជម្រើសទី 1៖ ធ្វើឱ្យប្រសើរឡើង Apache bRPC ទៅកំណែ 1.15.0 ឬក្រោយមកទៀត ដែលមានបំណះផ្លូវការដែលដោះស្រាយបញ្ហាសុពលភាពប៉ារ៉ាម៉ែត្រ។

ជម្រើសទី 2៖ អនុវត្តបំណះសុវត្ថិភាពដោយដៃពីឃ្លាំង Apache bRPC GitHub ផ្លូវការ (PR #3101) ប្រសិនបើការធ្វើឱ្យប្រសើរឡើងកំណែភ្លាមៗមិនអាចអនុវត្តបាន។

អង្គការនានាគួរតែផ្តល់អាទិភាពដល់ការធ្វើឱ្យប្រសើរឡើងទៅកំណែដែលបានបំណះដើម្បីលុបបំបាត់ផ្ទៃវាយប្រហារ។ ការបិទភ្ជាប់ដោយដៃគួរតែត្រូវបានចាត់ទុកថាជាវិធានការបណ្ដោះអាសន្នដោយរង់ចាំការធ្វើឱ្យប្រសើរឡើងនូវកំណែពេញលេញ។

Super Admin

Admin

សូម ចូលគណនី ដើម្បីបញ្ចេញមតិយោបល់លើអត្ថបទនេះ!

អ្នកក៏អាចចូលចិត្តផងដែរ