Snuffleupagus ပရောဂျက်သည် အားနည်းချက်များကို ပိတ်ဆို့ရန်အတွက် PHP module တစ်ခုကို တီထွင်နေသည်။

ပရောဂျက်ရဲ့ နယ်နိမိတ်ထဲမှာ ရေနံချောင်း ဖွံ့ဖြိုးဆဲ PHP7 အပလီကေးရှင်းများအသုံးပြုရာတွင် အားနည်းချက်များဖြစ်ပေါ်စေသည့် ဘုံအမှားများကို ပိတ်ဆို့ရန် ဒီဇိုင်းထုတ်ထားသည့် PHPXNUMX စကားပြန်သို့ ချိတ်ဆက်ရန်အတွက် မော်ဂျူးတစ်ခု။ အဆိုပါ module သည် အသုံးပြုသူအပလီကေးရှင်းများအားလုံးကို အပ်ဒိတ်လုပ်ထားရန် မဖြစ်နိုင်သော အစုလိုက်အပြုံလိုက် hosting စနစ်များတွင် အသုံးပြုရန် အဆင်ပြေသည့် အားနည်းချက်ရှိသော အပလီကေးရှင်း၏ အရင်းအမြစ်ကုဒ်ကို မပြောင်းလဲဘဲ သီးခြားပြဿနာများကို ပြင်ဆင်ရန် virtual patches များကို ဖန်တီးနိုင်စေပါသည်။ မော်ဂျူးကို C ဖြင့်ရေးသားထားပြီး၊ php.ini တွင် မျှဝေထားသောစာကြည့်တိုက်ပုံစံ (“extension=snuffleupagus.so”) နှင့်ချိတ်ဆက်ထားသည်။ ဖြန့်ဝေသည် LGPL 3.0 အောက်တွင် လိုင်စင်ရထားသည်။

Snuffleupagus သည် လုံခြုံရေး ပိုမိုကောင်းမွန်စေရန် စံနမူနာများကို အသုံးပြုရန်၊ သို့မဟုတ် ထည့်သွင်းဒေတာနှင့် လုပ်ဆောင်မှု ကန့်သတ်ချက်များကို ထိန်းချုပ်ရန် သင့်ကိုယ်ပိုင် စည်းမျဉ်းများကို ဖန်တီးနိုင်စေမည့် စည်းမျဉ်းစနစ်တစ်ခုကို ပံ့ပိုးပေးပါသည်။ ဥပမာအားဖြင့်၊ စည်းမျဉ်း “sp.disable_function.function(“system”).param(“command”).value_r(“[$|;&`\\n]”).drop();” အပလီကေးရှင်းကိုမပြောင်းဘဲ system() function arguments များတွင် အထူးဇာတ်ကောင်များအသုံးပြုခြင်းကို ကန့်သတ်ခွင့်ပြုသည်။ ဒီလိုပဲ ဖန်တီးနိုင်ပါတယ်။ virtual patch များ သိရှိထားသည့် အားနည်းချက်များကို ပိတ်ဆို့ရန်။

developer များပြုလုပ်သောစမ်းသပ်မှုများအားဖြင့် Snuffleupagus သည် စွမ်းဆောင်ရည်ကို နည်းပါးစွာလျှော့ချပေးသည်။ ၎င်း၏ကိုယ်ပိုင်လုံခြုံရေးကို သေချာစေရန် (လုံခြုံရေးအလွှာရှိ အားနည်းချက်များသည် တိုက်ခိုက်မှုများအတွက် နောက်ထပ် vector တစ်ခုအဖြစ် လုပ်ဆောင်နိုင်သည်)၊ ပရောဂျက်သည် မတူညီသောဖြန့်ဝေမှုများတွင် commit တစ်ခုစီကို စေ့စေ့စပ်စပ်စမ်းသပ်အသုံးပြုကာ တည်ငြိမ်မှုခွဲခြမ်းစိတ်ဖြာမှုစနစ်များကို အသုံးပြုကာ စစ်ဆေးမှုရိုးရှင်းစေရန် ကုဒ်ကို ဖော်မတ်လုပ်ပြီး မှတ်တမ်းတင်ထားသည်။

ပြဿနာများကဲ့သို့သော အားနည်းချက်များ၏ အတန်းအစားများကို ပိတ်ဆို့ရန် ထည့်သွင်းထားသော နည်းလမ်းများ၊ ဆက်စပ် ဒေတာအမှတ်စဉ်များဖြင့်၊ မလုံခြုံ PHP mail() လုပ်ဆောင်ချက်ကို အသုံးပြုခြင်း၊ XSS တိုက်ခိုက်မှုအတွင်း Cookie အကြောင်းအရာများ ယိုစိမ့်ခြင်း၊ executable code ဖြင့် ဖိုင်များကို တင်ခြင်းကြောင့် ပြဿနာများ (ဥပမာ၊ ဖော်မတ်၊ phar) အရည်အသွေးညံ့ဖျင်းသောကျပန်းနံပါတ်မျိုးဆက်နှင့် အစားထိုးခြင်း မှားယွင်းနေသော XML တည်ဆောက်မှုများ။

PHP လုံခြုံရေးကို မြှင့်တင်ရန် အောက်ပါမုဒ်များကို ပံ့ပိုးထားပါသည်။

  • Cookies အတွက် "secure" နှင့် "samesite" (CSRF protection) အလံများကို အလိုအလျောက်ဖွင့်ပေးခြင်း၊ စာဝှက် ကွတ်ကီး;
  • တိုက်ခိုက်မှုများ၏ခြေရာများကို ဖော်ထုတ်ရန်နှင့် အသုံးချပရိုဂရမ်များ၏ အပေးအယူလုပ်ခြင်းကို ဖော်ထုတ်ရန် ပါ၀င်သော စည်းမျဉ်းများ၊
  • အတင်းအဓမ္မ ကမ္ဘာလုံးဆိုင်ရာ အသက်သွင်းမှု”တိကျသော" (ဥပမာ၊ ကိန်းပြည့်တန်ဖိုးကို အငြင်းအခုံတစ်ခုအဖြစ် မျှော်လင့်နေချိန်တွင် string တစ်ခုကို သတ်မှတ်ရန် ကြိုးပမ်းမှုကို ပိတ်ဆို့ခြင်း) နှင့် ကာကွယ်ခြင်း type manipulation ပါ။;
  • ပုံသေပိတ်ဆို့ခြင်း။ ပရိုတိုကောထုပ်များ (ဥပမာ၊ "phar://" ကို ပိတ်ပင်ခြင်း)၊ ၎င်းတို့၏ ရှင်းလင်းပြတ်သားသော လူဖြူစာရင်းဖြင့်၊
  • ရေး၍ရနိုင်သော ဖိုင်များကို အကောင်အထည်ဖော်ခြင်းအား တားမြစ်ခြင်း၊
  • အကဲဖြတ်ရန်အတွက် အဖြူအမည်းစာရင်းများ၊
  • အသုံးပြုနေစဉ် TLS လက်မှတ်စစ်ဆေးခြင်းကို ဖွင့်ရန် လိုအပ်သည်။
    curl;

  • Deserialization သည် မူရင်းအပလီကေးရှင်းမှသိမ်းဆည်းထားသောဒေတာကိုပြန်လည်ရယူကြောင်းသေချာစေရန် HMAC ကို နံပါတ်စဉ်တပ်ထားသောအရာဝတ္ထုများထဲသို့ထည့်ခြင်း၊
  • မှတ်တမ်းမုဒ်ကို တောင်းဆိုပါ။
  • XML စာရွက်စာတမ်းများတွင် လင့်ခ်များမှတစ်ဆင့် libxml တွင် ပြင်ပဖိုင်များတင်ခြင်းကို ပိတ်ခြင်း၊
  • အပ်လုဒ်လုပ်ထားသောဖိုင်များကို စစ်ဆေးရန်နှင့် စကင်န်ဖတ်ရန် ပြင်ပကိုင်တွယ်ကိရိယာများ (upload_validation) ချိတ်ဆက်နိုင်မှု၊

ပရောဂျက်ကို ပြင်သစ် hosting အော်ပရေတာကြီးများထဲမှ တစ်ခု၏ အခြေခံအဆောက်အဦများတွင် အသုံးပြုသူများကို အကာအကွယ်ပေးရန် ပရောဂျက်ကို ဖန်တီးထားသည်။ မှတ်ချက်ချသည်။Snuffleupagus ကို ရိုးရှင်းစွာ ချိတ်ဆက်ခြင်းသည် Drupal၊ WordPress နှင့် phpBB တို့တွင် ယခုနှစ်အတွင်း တွေ့ရှိခဲ့သော အန္တရာယ်ရှိသော အားနည်းချက်များစွာကို ကာကွယ်နိုင်မည်ဖြစ်သည်။ မုဒ်ကိုဖွင့်ခြင်းဖြင့် Magento နှင့် Horde ရှိ အားနည်းချက်များကို ပိတ်ဆို့နိုင်သည်။
"sp.readonly_exec.enable()"။

source: opennet.ru

မှတ်ချက် Add