FixVibe
Covered by FixVibehigh

Firebase လုံခြုံရေး စည်းမျဉ်းများ- ခွင့်ပြုချက်မရှိဘဲ ဒေတာ ထိတွေ့မှုကို တားဆီးခြင်း

ZXCVFIXVIBESEG၂ Firebase လုံခြုံရေးစည်းမျဥ်းများသည် Firestore နှင့် Cloud Storage ကိုအသုံးပြုထားသော ဆာဗာမဲ့အက်ပ်လီကေးရှင်းများအတွက် အဓိက ကာကွယ်ရေးဖြစ်သည်။ ဤစည်းမျဉ်းများသည် ထုတ်လုပ်မှုတွင် ကမ္ဘာလုံးဆိုင်ရာ ဖတ်ရှုခြင်း သို့မဟုတ် စာရေးခွင့်ကို ခွင့်ပြုခြင်းကဲ့သို့သော ခွင့်ပြုချက်လွန်ကဲသောအခါ၊ တိုက်ခိုက်သူများသည် အထိခိုက်မခံသည့်ဒေတာကို ခိုးယူရန် သို့မဟုတ် ဖျက်ရန် ရည်ရွယ်ထားသော အပလီကေးရှင်းယုတ္တိကို ကျော်လွှားနိုင်သည်။ ဤသုတေသနသည် အများအားဖြင့် မှားယွင်းသောဖွဲ့စည်းပုံများ၊ 'စမ်းသပ်မုဒ်' ပုံသေများ၏ အန္တရာယ်များနှင့် အထောက်အထားအခြေခံ ဝင်ရောက်သုံးစွဲနိုင်မှု ထိန်းချုပ်နည်းတို့ကို စူးစမ်းလေ့လာသည်။

CWE-284CWE-863

Firebase လုံခြုံရေးစည်းမျဥ်းများသည် Firestore၊ Realtime Database နှင့် Cloud Storage [S1] တွင် ဒေတာကိုကာကွယ်ရန် အသေးစိပ်၊ ဆာဗာ-တွန်းအားပေးသည့် ယန္တရားတစ်ခု ပေးပါသည်။ Firebase အပလီကေးရှင်းများသည် ဖောက်သည်ဘက်မှနေ၍ ဤ cloud ဝန်ဆောင်မှုများနှင့် မကြာခဏ အပြန်အလှန်သက်ရောက်မှုရှိသောကြောင့်၊ ဤစည်းမျဉ်းများသည် နောက်ခံဒေတာ [S1] ကို ခွင့်ပြုချက်မရှိဘဲ ဝင်ရောက်ကြည့်ရှုခြင်းကို တားဆီးသည့် တစ်ခုတည်းသောအတားအဆီးဖြစ်သည်။

ခွင့်ပြုထားသောစည်းမျဥ်းများ၏သက်ရောက်မှု

မှားယွင်းသတ်မှတ်ထားသော စည်းမျဉ်းများသည် သိသာထင်ရှားသောဒေတာထိတွေ့မှု [S2] သို့ ဦးတည်သွားစေနိုင်သည်။ အကယ်၍ စည်းမျဉ်းများကို အလွန်အကျွံခွင့်ပြုထားသည်ဟု သတ်မှတ်ထားပါက- ဥပမာအားဖြင့်၊ ကမ္ဘာလုံးဆိုင်ရာဝင်ရောက်ခွင့်ကိုခွင့်ပြုသည့် မူရင်း 'စမ်းသပ်မုဒ်' ဆက်တင်များကို အသုံးပြုခြင်း—ပရောဂျက် ID ကိုသိသောအသုံးပြုသူတိုင်းသည် ဒေတာဘေ့စ်အကြောင်းအရာတစ်ခုလုံးကို ဖတ်နိုင်၊ ပြင်ဆင်နိုင် သို့မဟုတ် ဖျက်ပစ်နိုင်သည် [S2]။ ၎င်းသည် သုံးစွဲသူဘက်မှ လုံခြုံရေးအစီအမံအားလုံးကို ကျော်ဖြတ်ပြီး ထိလွယ်ရှလွယ်အသုံးပြုသူအချက်အလက်များ ဆုံးရှုံးခြင်း သို့မဟုတ် ဝန်ဆောင်မှုစုစုပေါင်း အနှောင့်အယှက် [S2] ကို ဖြစ်ပေါ်စေနိုင်သည်။

အရင်းခံအကြောင်းရင်း- ခွင့်ပြုချက်မလုံလောက်သော လော့ဂျစ်

အဆိုပါ အားနည်းချက်များ၏ မူလဇစ်မြစ်အကြောင်းရင်းမှာ [S3] ကိုအခြေခံ၍ အသုံးပြုသူအထောက်အထား သို့မဟုတ် အရင်းအမြစ်အရည်အချင်းများပေါ်မူတည်၍ ဝင်ရောက်ခွင့်ကို ကန့်သတ်သည့် သီးခြားအခြေအနေများကို အကောင်အထည်ဖော်ရန် ပျက်ကွက်ခြင်းကြောင့်ဖြစ်သည်။ ဆော့ဖ်ဝဲရေးသားသူများသည် request.auth အရာဝတ္တု [S3] ကို တရားဝင်မဖြစ်စေသော ထုတ်လုပ်မှုပတ်ဝန်းကျင်တွင် ပုံမှန်ဖွဲ့စည်းပုံများကို မကြာခဏ ချန်ထားလေ့ရှိသည်။ request.auth ကိုအကဲဖြတ်ခြင်းမရှိဘဲ၊ စနစ်သည် တရားဝင်စစ်မှန်ကြောင်းအထောက်အထားပြထားသောအသုံးပြုသူနှင့် အမည်မသိတောင်းဆိုသူ [S3] တို့ကြားတွင် စနစ်သည် ခွဲခြား၍မရပါ။

နည်းပညာပိုင်းဆိုင်ရာ ပြန်လည်ပြင်ဆင်ခြင်း။

Firebase ပတ်၀န်းကျင်ကို လုံခြုံအောင်ပြုလုပ်ခြင်းသည် အဖွင့်ဝင်ရောက်ခွင့်မှ အဓိက-အနည်းဆုံး-အခွင့်ထူးခံမော်ဒယ်သို့ ရွှေ့ရန် လိုအပ်သည်။

ZXCVFIXVIBESEG၁၀

  • စစ်မှန်ကြောင်းအထောက်အထားခိုင်ခိုင်လုံလုံပါရှိစေရေး- request.auth အရာဝတ္ထုသည် [S3] အတည်ဖြစ်မဖြစ်စစ်ဆေးခြင်းဖြင့် အရေးကြီးသောလမ်းကြောင်းများအားလုံး လိုအပ်ကြောင်း သေချာပါစေ။

ZXCVFIXVIBESEG ၁၁

  • Implement Identity-Based Access- အသုံးပြုသူ၏ UID (request.auth.uid) ကို စာရွက်စာတမ်းအတွင်း အကွက်တစ်ခု သို့မဟုတ် စာရွက်စာတမ်း ID ကိုယ်တိုင်က [S3] နှင့် နှိုင်းယှဉ်သည့် စည်းမျဉ်းများကို သတ်မှတ်သတ်မှတ်ပါ။
  • အသေးစိတ်ခွင့်ပြုချက်အတိုင်းအတာ- စုစည်းမှုများအတွက် ကမ္ဘာလုံးဆိုင်ရာ သင်္ကေတများကို ရှောင်ကြဉ်ပါ။ ယင်းအစား၊ ဖြစ်နိုင်ချေရှိသောတိုက်ခိုက်မှုမျက်နှာပြင် [S2] ကိုလျှော့ချရန် စုစည်းမှုနှင့် အစုခွဲတစ်ခုစီအတွက် သီးခြားစည်းမျဉ်းများကို သတ်မှတ်ပါ။

ZXCVFIXVIBESEG၁၃

  • Emulator Suite မှတစ်ဆင့် အတည်ပြုခြင်း- လုံခြုံရေးစည်းမျဉ်းများကို ပြည်တွင်းတွင် စမ်းသပ်ရန် Firebase Emulator Suite ကို အသုံးပြုပါ။ ၎င်းသည် တိုက်ရိုက်ပတ်ဝန်းကျင် [S2] တွင် အသုံးမပြုမီ အသုံးပြုသူ၏ အမျိုးမျိုးသော ပုဂ္ဂိုလ်များထံမှ ဝင်ရောက်ထိန်းချုပ်မှုဆိုင်ရာ ယုတ္တိဗေဒကို အတည်ပြုရန် ခွင့်ပြုသည်။

ZXCVFIXVIBESEG ၁၄

FixVibe စမ်းသပ်နည်း

FixVibe ယခု ဤအရာသည် ဖတ်ရန်သီးသန့် BaaS စကင်န်တစ်ခုအဖြစ် ပါဝင်ပါသည်။ baas.firebase-rules သည် Firebase ခေတ်မီ initializeApp(...) အစုအဝေးပုံစံများ အပါအဝင် Firebase ဖွဲ့စည်းမှုပုံစံကို မူရင်း JavaScript အစုအဝေးများမှ ထုတ်ယူပြီး၊ ထို့နောက် အချိန်နှင့်တပြေးညီ ဒေတာဘေ့စ်၊ Firestore နှင့် ZXCVFIXVIBETOKEN12ZuthCVon သိုလှောင်မှုတောင်းဆိုမှုများကို ဖတ်ရှုနိုင်ပါသည်။ Firestore အတွက်၊ ၎င်းသည် ပထမဦးစွာ root စုဆောင်းမှုစာရင်းကို ကြိုးစားသည်။ စာရင်းကို ပိတ်ဆို့ထားသည့်အခါ၊ ၎င်းသည် usersaccountscustomersordersusersaccountscustomersorders၊ ZXCVFIXVIBETOKEN6FXVIBETOKEN6FXVIBETOKEN admin နှင့် settings။ ၎င်းသည် အောင်မြင်သော အမည်မသိစာဖတ်ခြင်း သို့မဟုတ် စာရင်းများကိုသာ အစီရင်ခံပြီး ဝယ်ယူသူစာရွက်စာတမ်းအကြောင်းအရာများကို ရေးသားခြင်း၊ ဖျက်ခြင်း သို့မဟုတ် သိမ်းဆည်းခြင်းမပြုပါ။