FixVibe
Covered by FixVibehigh

ច្បាប់សុវត្ថិភាព Firebase៖ ការពារការលេចចេញទិន្នន័យដែលគ្មានការអនុញ្ញាត

ZXCVFIXVIBESEG ២ ច្បាប់សុវត្ថិភាព Firebase គឺជាការការពារចម្បងសម្រាប់កម្មវិធីដែលគ្មានម៉ាស៊ីនមេ ដោយប្រើ Firestore និង Cloud Storage ។ នៅពេលដែលច្បាប់ទាំងនេះមានការអនុញ្ញាតខ្លាំងពេក ដូចជាអនុញ្ញាតឱ្យចូលប្រើការអាន ឬសរសេរជាសកលនៅក្នុងការផលិត អ្នកវាយប្រហារអាចជៀសផុតពីតក្កវិជ្ជាកម្មវិធីដែលមានបំណងលួច ឬលុបទិន្នន័យរសើប។ ការស្រាវជ្រាវនេះស្វែងយល់ពីការកំណត់រចនាសម្ព័ន្ធខុសទូទៅ ហានិភ័យនៃលំនាំដើម 'របៀបសាកល្បង' និងរបៀបអនុវត្តការគ្រប់គ្រងការចូលប្រើប្រាស់ដោយផ្អែកលើអត្តសញ្ញាណ។

CWE-284CWE-863

ច្បាប់សុវត្ថិភាព Firebase ផ្តល់នូវយន្តការពង្រឹងដោយម៉ាស៊ីនមេ ដើម្បីការពារទិន្នន័យនៅក្នុង Firestore, Realtime Database និង Cloud Storage [S1] ។ ដោយសារតែកម្មវិធី Firebase ជារឿយៗធ្វើអន្តរកម្មជាមួយសេវាកម្មពពកទាំងនេះដោយផ្ទាល់ពីផ្នែកអតិថិជន ច្បាប់ទាំងនេះតំណាងឱ្យឧបសគ្គតែមួយគត់ដែលការពារការចូលប្រើប្រាស់ទិន្នន័យផ្នែកខាងក្រោយដោយមិនមានការអនុញ្ញាត [S1] ។

ZXCVFIXVIBESEG ៤

ឥទ្ធិពលនៃច្បាប់អនុញ្ញាត

ZXCVFIXVIBESEG ៥ ច្បាប់ដែលបានកំណត់រចនាសម្ព័ន្ធមិនត្រឹមត្រូវអាចនាំឱ្យមានការប៉ះពាល់ទិន្នន័យសំខាន់ [S2] ។ ប្រសិនបើច្បាប់ត្រូវបានកំណត់ឱ្យមានការអនុញ្ញាតខ្លាំងពេក - ឧទាហរណ៍ ការប្រើការកំណត់ 'របៀបសាកល្បង' លំនាំដើមដែលអនុញ្ញាតឱ្យចូលប្រើជាសកល អ្នកប្រើប្រាស់ណាដែលមានចំណេះដឹងអំពីលេខសម្គាល់គម្រោងអាចអាន កែប្រែ ឬលុបមាតិកាមូលដ្ឋានទិន្នន័យទាំងមូល [S2] ។ នេះរំលងវិធានការសុវត្ថិភាពភាគីអតិថិជនទាំងអស់ ហើយអាចបណ្តាលឱ្យបាត់បង់ព័ត៌មានអ្នកប្រើប្រាស់ដ៏រសើប ឬការរំខានដល់សេវាកម្មសរុប [S2] ។

ZXCVFIXVIBESEG ៦

មូលហេតុ៖ តក្កវិជ្ជាការអនុញ្ញាតមិនគ្រប់គ្រាន់

ZXCVFIXVIBESEG ៧ មូលហេតុឫសគល់នៃភាពងាយរងគ្រោះទាំងនេះ ជាទូទៅគឺការបរាជ័យក្នុងការអនុវត្តលក្ខខណ្ឌជាក់លាក់ដែលដាក់កម្រិតការចូលប្រើប្រាស់ដោយផ្អែកលើអត្តសញ្ញាណអ្នកប្រើប្រាស់ ឬគុណលក្ខណៈធនធាន [S3] ។ អ្នកអភិវឌ្ឍន៍ជាញឹកញាប់ទុកការកំណត់លំនាំដើមឱ្យសកម្មនៅក្នុងបរិស្ថានផលិតកម្ម ដែលមិនមានសុពលភាពវត្ថុ request.auth [S3] ។ បើគ្មានការវាយតម្លៃ request.auth ប្រព័ន្ធមិនអាចបែងចែករវាងអ្នកប្រើប្រាស់ដែលមានការផ្ទៀងផ្ទាត់ត្រឹមត្រូវនិងអ្នកស្នើសុំអនាមិក [S3] បានទេ។

ZXCVFIXVIBESEG ៨

សំណងបច្ចេកទេស

ការធានាបាននូវបរិស្ថាន Firebase តម្រូវឱ្យផ្លាស់ប្តូរពីការចូលប្រើបើកចំហទៅកាន់គំរូដែលមានសិទ្ធិតិចតួចបំផុត។

ZXCVFIXVIBESEG ១០

  • អនុវត្តការផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវ៖ ត្រូវប្រាកដថាផ្លូវរសើបទាំងអស់ទាមទារវគ្គអ្នកប្រើប្រាស់ត្រឹមត្រូវដោយពិនិត្យមើលថាតើវត្ថុ request.auth មិនមែនជាមោឃៈទេ [S3] ។

ZXCVFIXVIBESEG ១១

  • អនុវត្តការចូលប្រើប្រាស់ដោយផ្អែកអត្តសញ្ញាណ៖ កំណត់រចនាសម្ព័ន្ធច្បាប់ដែលប្រៀបធៀប UID របស់អ្នកប្រើ (request.auth.uid) ទៅនឹងវាលមួយនៅក្នុងឯកសារ ឬលេខសម្គាល់ឯកសារដោយខ្លួនឯង ដើម្បីធានាថាអ្នកប្រើប្រាស់អាចចូលប្រើទិន្នន័យផ្ទាល់របស់ពួកគេ [S3] ប៉ុណ្ណោះ។

ZXCVFIXVIBESEG ១២

  • វិសាលភាពការអនុញ្ញាតជាក្រឡា៖ ជៀសវាងអក្សរជំនួសជាសកលសម្រាប់ការប្រមូល។ ជំនួសមកវិញ កំណត់ច្បាប់ជាក់លាក់សម្រាប់ការប្រមូល និងការប្រមូលរងនីមួយៗ ដើម្បីកាត់បន្ថយផ្ទៃវាយប្រហារដែលមានសក្តានុពល [S2] ។

ZXCVFIXVIBESEG ១៣

  • សុពលភាពតាមរយៈកម្មវិធី Emulator Suite៖ ប្រើ Firebase Emulator Suite ដើម្បីសាកល្បងច្បាប់សុវត្ថិភាពក្នុងតំបន់។ នេះអនុញ្ញាតឱ្យមានការផ្ទៀងផ្ទាត់តក្កវិជ្ជាគ្រប់គ្រងការចូលប្រើប្រឆាំងនឹងបុគ្គលអ្នកប្រើប្រាស់ផ្សេងៗ មុនពេលដាក់ពង្រាយទៅកាន់បរិយាកាសផ្ទាល់ [S2] ។

របៀបដែល FixVibe ធ្វើតេស្តសម្រាប់វា។

FixVibe ឥឡូវនេះរួមបញ្ចូលវាជាការស្កេន BaaS បានតែអានប៉ុណ្ណោះ។ baas.firebase-rules ស្រង់ចេញការកំណត់រចនាសម្ព័ន្ធ Firebase ពីបណ្តុំ JavaScript ដែលមានប្រភពដើមដូចគ្នា រួមទាំងរូបរាងបណ្តុំ initializeApp(...) ទំនើប បន្ទាប់មកពិនិត្យមើលមូលដ្ឋានទិន្នន័យពេលវេលាពិត ហាង Firestore និង ZXCVFIXVIBETOKEN12ZuthCVon សំណើដែលបានអាន។ សម្រាប់ Firestore ដំបូងវាសាកល្បងការចុះបញ្ជីការប្រមូលជា root ។ នៅពេលដែលការចុះបញ្ជីត្រូវបានរារាំង វាក៏ស៊ើបអង្កេតឈ្មោះបណ្តុំដែលងាយយល់ទូទៅដូចជា users, accounts, customers, orders, ZXCVFIXVIBETOKEN6FXVIBETOKEN3ZXCV, ZXCV admin និង settings ។ វារាយការណ៍តែការអាន ឬបញ្ជីឈ្មោះដែលទទួលបានជោគជ័យប៉ុណ្ណោះ និងមិនសរសេរ លុប ឬរក្សាទុកមាតិកាឯកសាររបស់អតិថិជន។