FixVibe
Covered by FixVibehigh

Cross-Site Scripting (XSS) အားနည်းချက်များကို ရှာဖွေခြင်းနှင့် ကာကွယ်ခြင်း

ZXCVFIXVIBESEG၂ အပလီကေးရှင်းတစ်ခုတွင် မှန်ကန်သောတရားဝင်မှု သို့မဟုတ် ကုဒ်နံပါတ်မပါဘဲ ဝဘ်စာမျက်နှာတစ်ခုတွင် မယုံကြည်ရသောဒေတာများ ပါဝင်လာသောအခါတွင် Cross-Site Scripting (XSS) ဖြစ်ပေါ်သည်။ ၎င်းသည် တိုက်ခိုက်သူများသည် သားကောင်၏ဘရောက်ဆာတွင် အန္တရာယ်ရှိသော script များကို လုပ်ဆောင်နိုင်စေပြီး ဆက်ရှင်ပြန်ပေးဆွဲခြင်း၊ ခွင့်ပြုချက်မရှိဘဲ လုပ်ဆောင်မှုများနှင့် အရေးကြီးသောဒေတာများကို ထိတွေ့မှုဆီသို့ ဦးတည်စေသည်။

CWE-79

ထိခိုက်မှု

Cross-Site Scripting (XSS) အားနည်းချက်ကို အောင်မြင်စွာ အသုံးချခဲ့သော တိုက်ခိုက်သူသည် သားကောင်အသုံးပြုသူအဖြစ် ဟန်ဆောင်နိုင်ပြီး၊ အသုံးပြုသူ၏ ခွင့်ပြုချက်ရထားသည့် မည်သည့်လုပ်ဆောင်ချက်ကိုမဆို လုပ်ဆောင်နိုင်ပြီး အသုံးပြုသူ၏ဒေတာ [S1] ကို ဝင်ရောက်ကြည့်ရှုနိုင်ပါသည်။ ၎င်းတွင် အကောင့်များကို ခိုးယူရန် စက်ရှင်ကွတ်ကီးများကို ခိုးယူခြင်း၊ ဖောင်အတုများမှတစ်ဆင့် အကောင့်ဝင်ခြင်းဆိုင်ရာ အထောက်အထားများကို ဖမ်းယူခြင်း သို့မဟုတ် အတုအယောင်ပြုလုပ်ခြင်း [S1][S2] ပါဝင်သည်။ အကယ်၍ သားကောင်တွင် စီမံခန့်ခွဲရေးဆိုင်ရာ အခွင့်ထူးများရှိပါက၊ တိုက်ခိုက်သူသည် အပလီကေးရှင်းနှင့် ၎င်း၏ဒေတာ [S1] အပေါ် အပြည့်အဝ ထိန်းချုပ်နိုင်မည်ဖြစ်သည်။

အကြောင်းအရင်း

XSS သည် အပလီကေးရှင်းတစ်ခုမှ အသုံးပြုသူ ထိန်းချုပ်နိုင်သော ထည့်သွင်းမှုအား လက်ခံရရှိပြီး သင့်လျော်သော ကြားဖြတ်ခြင်း သို့မဟုတ် [S2] တို့ကို မှန်ကန်သော ကြားဖြတ်ခြင်းမပြုဘဲ ဝဘ်စာမျက်နှာတွင် ထည့်သွင်းသည့်အခါ ဖြစ်ပေါ်ပါသည်။ ဤအရာက ဝဘ်ဆိုဒ်များကို [S1][S2] အချင်းချင်း ခွဲထုတ်ရန် ဒီဇိုင်းထုတ်ထားသော ဝဘ်ဆိုက်များကို ခွဲထုတ်ရန် ဒီဇိုင်းထုတ်ထားသည့် တူညီသော မူလမူဝါဒကို ကျော်လွှားခြင်းဖြင့် ထည့်သွင်းမှုကို အသက်ဝင်သော အကြောင်းအရာ (JavaScript) အဖြစ် အဓိပ္ပာယ်ဖွင့်ဆိုနိုင်စေပါသည်။

အားနည်းချက်အမျိုးအစားများ

  • ရောင်ပြန်ဟပ် XSS- အန္တရာယ်ရှိသော Script များသည် ပုံမှန်အားဖြင့် URL ဘောင်တစ်ခုမှ [S1] မှတစ်ဆင့် သားကောင်၏ဘရောက်ဆာသို့ ဝဘ်အက်ပလီကေးရှင်းမှ ထင်ဟပ်စေသည်။
  • သိမ်းဆည်းထားသော XSS- ဇာတ်ညွှန်းကို ဆာဗာတွင် အပြီးအပိုင် သိမ်းဆည်းထားပါသည် (ဥပမာ၊ ဒေတာဘေ့စ် သို့မဟုတ် မှတ်ချက်ကဏ္ဍတွင်) နှင့် နောက်ပိုင်းတွင် အသုံးပြုသူများအတွက် [S1][S2]။

ZXCVFIXVIBESEG၁၀

  • DOM-based XSS: အားနည်းချက်သည် innerHTML [S1] သို့ စာရေးခြင်းကဲ့သို့သော မလုံခြုံသောနည်းလမ်းဖြင့် ဒေတာကို မယုံကြည်ရသော အရင်းအမြစ်မှ ဒေတာများကို လုပ်ဆောင်သည့် client-side code တွင် အားနည်းချက် လုံးဝရှိပါသည်။

ZXCVFIXVIBESEG ၁၁

ကွန်ကရစ်ပြင်ဆင်မှုများ

  • Output ရှိ ဒေတာကို ကုဒ်နံပါတ်- အသုံးပြုသူ ထိန်းချုပ်နိုင်သော ဒေတာကို မဖော်ပြမီ ဘေးကင်းသော ပုံစံသို့ ပြောင်းပါ။ HTML ကိုယ်ထည်အတွက် HTML entity encoding ကိုသုံးပါ၊ ၎င်းသတ်မှတ်ထားသောအကြောင်းအရာများအတွက် [S1][S2] အတွက် သင့်လျော်သော JavaScript သို့မဟုတ် CSS ကုဒ်နံပါတ်ကို အသုံးပြုပါ။

ZXCVFIXVIBESEG၁၃

  • ဆိုက်ရောက်စတွင် ထည့်သွင်းခြင်းအား စစ်ထုတ်ခြင်း- မျှော်လင့်ထားသည့် ထည့်သွင်းဖော်မတ်များအတွက် တင်းကျပ်သော ခွင့်ပြုစာရင်းများကို အကောင်အထည်ဖော်ပြီး [S1][S2] နှင့် မကိုက်ညီသည့် မည်သည့်အရာကိုမဆို ငြင်းပယ်ပါ။

ZXCVFIXVIBESEG ၁၄

  • လုံခြုံရေးဆိုင်ရာ ခေါင်းစီးများကို အသုံးပြုပါ- JavaScript [S2] မှတစ်ဆင့် ဝင်ရောက်ခြင်းကို တားဆီးရန် စက်ရှင်ကွတ်ကီးများပေါ်တွင် HttpOnly အလံကို သတ်မှတ်ပါ။ ဘရောက်ဆာများသည် တုံ့ပြန်မှုများကို လုပ်ဆောင်နိုင်သော ကုဒ် [S1] အဖြစ် လွဲမှားစွာ အဓိပ္ပါယ်မဖော်ကြောင်း သေချာစေရန် Content-Type နှင့် X-Content-Type-Options: nosniff ကို အသုံးပြုပါ။
  • အကြောင်းအရာလုံခြုံရေးမူဝါဒ (CSP): ခိုင်မာသော CSP ကို အသုံးပြု၍ Script များကို တင်၍ လုပ်ဆောင်နိုင်သည့် အရင်းအမြစ်များကို ကန့်သတ်ရန်၊ ကာကွယ်ရေး-အတွင်းကျကျ အလွှာ [S1]ZXCVFIXZVIBETOKEN0ZXCVZXCVFIXZVIBETOKEN0ZXCVZXCVFIXZVIBETOKEN

ZXCVFIXVIBESEG၁၆

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

FixVibe သည် [S1] ကို အခြေခံ၍ အလွှာပေါင်းစုံချဉ်းကပ်နည်းဖြင့် [S1] ကို ရှာဖွေတွေ့ရှိနိုင်သည်-

  • Passive Scans- Content-Security-Policy သို့မဟုတ် X-Content-Type-Options ကဲ့သို့သော ပျောက်ဆုံးနေသော သို့မဟုတ် အားနည်းသော လုံခြုံရေးဆိုင်ရာ ခေါင်းစီးများကို ခွဲခြားသတ်မှတ်ခြင်း X-Content-Type-Options
  • Active Probes- [S1] ကို မှန်ကန်သောကုဒ်မထည့်ဘဲ တုံ့ပြန်မှုကိုယ်ထည်တွင် ထင်ဟပ်ခြင်းရှိမရှိ ဆုံးဖြတ်ရန် ထူးခြားသော၊ အန္တရာယ်မရှိသော အက္ခရာမဟုတ်သော အက္ခရာဂဏန်းစာတန်းများကို URL ဘောင်များနှင့် ပုံစံကွက်လပ်များထဲသို့ ထိုးသွင်းခြင်း။
  • Repo Scans- innerHTMLdocument.write၊ သို့မဟုတ် setTimeout ကဲ့သို့ မယုံကြည်ရသော ဒေတာများကို လုံခြုံစွာ ကိုင်တွယ်သည့် "နစ်များ" အတွက် client-side JavaScript ကို ပိုင်းခြားစိတ်ဖြာခြင်း ၊ DOM-based ZXCVXCV [S1]။