USB Raw Gadget၊ USB စက်ပစ္စည်းများကို အတုယူရန်အတွက် Linux မော်ဂျူးကို ရနိုင်ပါသည်။

Google မှ Andrey Konovalov သည် module အသစ်တစ်ခုကိုတီထွင်နေသည်။ USB အကြမ်း Gadget, ခွင့်ပြုခြင်း။ အသုံးပြုသူနေရာရှိ USB စက်ပစ္စည်းများကို အတုယူပါ။ စောင့်ဆိုင်းနေပါသည်။ လျှောက်လွှာ ပင်မ Linux kernel တွင် ဤ module ကိုထည့်သွင်းရန်အတွက်။ USB Raw Gadget ဖြစ်နေပါပြီ။ လျှောက်ထားခဲ့သည် ကိရိယာများကို အသုံးပြု၍ USB kernel stack ၏ fuzz စမ်းသပ်မှုကို ရိုးရှင်းစေရန် Google တွင် syzkaller.

module သည် kernel subsystem တွင် programming interface အသစ်တစ်ခုကို ပေါင်းထည့်သည်။ USB Gadget နှင့် GadgetFS ၏အခြားရွေးချယ်စရာတစ်ခုအဖြစ်တီထွင်လျက်ရှိသည်။ API အသစ်တစ်ခုဖန်တီးခြင်းသည် အသုံးပြုသူနေရာမှ USB Gadget စနစ်ခွဲသို့ အဆင့်နိမ့်ပြီး တိုက်ရိုက်ဝင်ရောက်ခွင့်ရရန် လိုအပ်သောကြောင့် ၎င်းအား ဖြစ်နိုင်ချေရှိသော USB တောင်းဆိုမှုများအားလုံးကို လုပ်ဆောင်နိုင်စေသည် (GadgetFS သည် အသုံးပြုသူနေရာသို့ မဖြတ်သန်းဘဲ အချို့သောတောင်းဆိုမှုများကို လွတ်လပ်စွာလုပ်ဆောင်သည်) . USB Raw Gadget ကို GadgetFS ရှိ /dev/gadget နှင့်ဆင်တူသော /dev/raw-gadget စက်ပစ္စည်းမှတဆင့် ထိန်းချုပ်ထားသော်လည်း အပြန်အလှန်တုံ့ပြန်မှုသည် pseudo-FS ထက် ioctl()-based interface ကိုအသုံးပြုသည်။

အသုံးပြုသူနေရာရှိ လုပ်ငန်းစဉ်တစ်ခုမှ USB တောင်းဆိုမှုအားလုံးကို တိုက်ရိုက်လုပ်ဆောင်ခြင်းအပြင်၊ အင်တာဖေ့စ်အသစ်တွင် USB တောင်းဆိုမှုကို တုံ့ပြန်သည့်အနေဖြင့် မည်သည့်ဒေတာကိုမဆို ပြန်ပေးနိုင်စွမ်းလည်း ပါရှိသည်။ USB stack ကို fuzz စမ်းသပ်စဉ် အမှားအယွင်းများ)။ Raw Gadget သည် သင့်အား ပူးတွဲရန် သီးခြား UDC (USB Device Controller) စက်ပစ္စည်းနှင့် ဒရိုက်ဘာကို ရွေးချယ်နိုင်စေပြီး GadgetFS သည် ပထမဆုံးရရှိနိုင်သော UDC စက်ပစ္စည်းတွင် ပူးတွဲလုပ်ဆောင်နေချိန်တွင်လည်း သင့်အား ပေးနိုင်ပါသည်။ ကြိုတင်ခန့်မှန်းနိုင်သော အမည်များကို မတူညီသော UDCs များတွင် သတ်မှတ်ထားသည်။ အဆုံးမှတ် စက်ပစ္စည်းတစ်ခုအတွင်း မတူညီသော ဒေတာဖလှယ်ရေးလမ်းကြောင်းများကို ခွဲခြားရန်။

source: opennet.ru

မှတ်ချက် Add