ဒီနေ့မှာတော့ ကျွန်တော်တို့ရဲ့ သုတေသနအသစ်ဖြစ်တဲ့ CodeMender အကြောင်းကို မျှဝေပေးချင်ပါတယ်။ ၎င်းဟာ AI စွမ်းအင်သုံး agent တစ်ခုဖြစ်ပြီး ဆော့ဖ်ဝဲလ်ကုဒ် (software code) တွေရဲ့ လုံခြုံရေးကို အလိုအလျောက် မြှင့်တင်ပေးနိုင်ဖို့ ရည်ရွယ်ထားတာ ဖြစ်ပါတယ်။
ဆော့ဖ်ဝဲလ်တွေမှာရှိတဲ့ လုံခြုံရေးအားနည်းချက် (Vulnerabilities) တွေကို ရှာဖွေပြင်ဆင်ရတာဟာ developer တွေအတွက် တကယ့်ကို ခေါင်းခဲစရာဖြစ်သလို အချိန်လည်း အလွန်ပေးရပါတယ်။ Traditional နည်းလမ်းတွေဖြစ်တဲ့ fuzzing တွေရှိနေပေမဲ့လည်း၊ AI ရဲ့ အကူအညီက အခုခေတ်မှာ ပိုပြီး အရေးပါလာပါပြီ။ ကျွန်တော်တို့ရဲ့ Big Sleep နဲ့ OSS-Fuzz တို့လို research တွေအရ AI ဟာ zero-day အားနည်းချက်တွေကိုတောင် ရှာဖွေနိုင်တာကို တွေ့ရှိခဲ့ရပါတယ်။
CodeMender ဆိုတာ ဘာလဲ?
CodeMender ဟာ vulnerability အသစ်တွေကို တွေ့တာနဲ့ ချက်ချင်း patch လုပ်ပေးရုံတင်မကဘဲ၊ ရှိပြီးသား code တွေကိုလည်း ပိုမိုလုံခြုံတဲ့ ပုံစံမျိုးနဲ့ ပြန်လည်ရေးသားပေးနိုင်တဲ့ reactive ရော proactive ပါ ဖြစ်တဲ့ agent တစ်ခုပါ။ ပြီးခဲ့တဲ့ ၆ လအတွင်းမှာ CodeMender ဟာ open source project ပေါင်းများစွာအတွက် security fixes ၇၂ ခုကို အောင်မြင်စွာ ပေးပို့နိုင်ခဲ့ပြီး ဖြစ်ပါတယ်။
CodeMender ဘယ်လို အလုပ်လုပ်သလဲ?
CodeMender ဟာ Gemini Deep Think မော်ဒယ်တွေရဲ့ တွေးခေါ်နိုင်စွမ်းကို အသုံးပြုထားပါတယ်။ ၎င်းမှာ code တွေကို ပြုပြင်မွမ်းမံခြင်း မပြုမီ သေချာစွာ စဉ်းစားဆင်ခြင်နိုင်တဲ့ tool တွေ ပါဝင်ပါတယ်။
အဓိက ပါဝင်တဲ့ နည်းပညာတွေကတော့-
- Advanced Program Analysis: Static analysis, dynamic analysis နဲ့ SMT solvers တွေကို သုံးပြီး code patterns တွေကို စနစ်တကျ စိစစ်ပါတယ်။
- Multi-agent Systems: ပြဿနာတစ်ခုချင်းစီအလိုက် သီးခြားလုပ်ဆောင်ပေးမယ့် agent လေးတွေကို ခွဲထုတ်ပြီး အလုပ်လုပ်စေတာပါ။ ဥပမာအားဖြင့် logic မှားနေရင် self-correct လုပ်ပေးမယ့် judge tool တွေ ပါဝင်ပါတယ်။
Proactive ဖြစ်တဲ့ လုံခြုံရေး စနစ်
CodeMender ရဲ့ ထူးခြားချက်ကတော့ ပြဿနာမဖြစ်ခင် ကြိုတင်ကာကွယ်ပေးတာပါ။ ဥပမာအားဖြင့် libwebp library မှာ -fbounds-safety annotations တွေ ထည့်သွင်းပေးခြင်းဖြင့် buffer overflow vulnerability တွေ မဖြစ်အောင် ကြိုတင် တားဆီးပေးပါတယ်။ ဒါဟာ attacker တွေ ကုဒ်ကို အသုံးချပြီး ခိုးဝင်ဖို့ ကြိုးစားတာကို ထာဝရ ပိတ်ပင်လိုက်သလိုပါပဲ။
နိဂုံး
အခုလောလောဆယ်မှာတော့ CodeMender က ထုတ်ပေးတဲ့ patches တွေကို လူသား researcher တွေက သေချာ ပြန်လည်စစ်ဆေးပြီးမှ upstream လုပ်ပေးနေတာ ဖြစ်ပါတယ်။ ဒါပေမဲ့ မကြာခင်မှာ software developer တိုင်း အသုံးပြုနိုင်မယ့် tool တစ်ခု ဖြစ်လာဖို့ ကျွန်တော်တို့ မျှော်လင့်ထားပါတယ်။ AI ဟာ software security လောကကို ဘယ်လို ကောင်းမွန်အောင် ပြောင်းလဲပစ်မလဲဆိုတာ စိတ်လှုပ်ရှားစရာပါပဲ။