RootRoot ለደህንነት ተመራማሪዎች፣ ለሰርጎ ሞካሪዎች እና ለአንድሮይድ አድናቂዎች የተገነባ ክፍት ምንጭ የአንድሮይድ የደህንነት ማወቂያ መሣሪያ ስብስብ ነው። የሞባይል መተግበሪያዎች ስር የተሰሩ መሳሪያዎችን፣ የማጊስክ ጭነቶችን እና የፍሪዳ የመሳሪያ ማዕቀፎችን በእውነተኛ ጊዜ እንዴት እንደሚለዩ ያሳያል።
መተግበሪያው በ4 የተለያዩ የመፈለጊያ ስልቶች ላይ 13 የደህንነት ፍተሻዎችን ያካሂዳል፣ ይህም የመሣሪያዎን የደህንነት አቀማመጥ አጠቃላይ እይታ ይሰጥዎታል።
▌ የመመርመሪያ ዘዴዎች
◆ የጃቫ ንብርብር ማወቂያ
• የስር ጥቅል ቅኝት — PackageManagerን ከ48 የታወቁ የስር መተግበሪያ ፊርማዎች ጋር ይፈትሻል፤ Magisk፣ SuperSU፣ KingRoot እና Xposed
• SU Binary Search — ለsu፣ busybox እና magisk binaries 14 ማውጫዎችን ይቃኛል
◆ Native Static Registration
በ.so ምልክት ሰንጠረዥ ውስጥ የሚታዩ የተላኩ የJNI ምልክቶችን ይጠቀማል፡
• Su Binary Check በNative File Access በኩል
• Magisk Mount detection በ/proc/mounts በኩል
• Frida Process Scanning በ/proc/cmdline በኩል
• Frida Library detection በ/proc/self/maps በኩል
◆ Native Dynamic Registration
በ JNI_OnLoad ውስጥ በ RegisterNatives() ውስጥ በ runtime የተመዘገቡ ተግባራት - በምልክት ሰንጠረዥ ውስጥ ምንም የተላኩ ምልክቶች አይታዩም። ተመሳሳይ ቼኮች፣ ለመቀልበስ አስቸጋሪ ናቸው።
◆ Native Dlsym (የተደበቀ ምዝገባ)
ከተለየ የተጋራ ቤተ-መጽሐፍት በ dlsym() የተጫኑ ተግባራት - በጣም የተደበቀ የፍተሻ ስትራቴጂ፣ የእውነተኛ ዓለም የደህንነት SDK ባህሪን በማስመሰል።
▌ ቁልፍ ባህሪያት
✦ በ4 የJNI ምዝገባ ስልቶች ላይ 13 የፍተሻ ፍተሻዎች
✦ ሊሰፋ የሚችል የውጤት ካርዶች ያሉት የተርሚናል አይነት ጨለማ በይነገጽ
✦ በእውነተኛ ጊዜ የፍተሻ ውጤቶች ከአፈጻጸም ጊዜ ጋር
✦ የእያንዳንዱን የፍተሻ ዘዴ ዝርዝር መግለጫዎች
✦ ንጹህ C ተወላጅ ኮድ — ዜሮ C++ STL ጥገኝነት
✦ የሞባይል ደህንነትን ለመረዳት የትምህርት መሳሪያ
✦ armeabi-v7a፣ arm64-v8a፣ x86 እና x86_64 ይደግፋል
▌ ይህ ለማን ነው?
• የደህንነት ተመራማሪዎች የአንድሮይድ ስርወ ማወቂያ ቴክኒኮችን ሲያጠኑ
• የስርወ-ስርወ ሞካሪዎች የመሣሪያ ደህንነት አቀማመጥን ይገመግማሉ
• የአንድሮይድ ገንቢዎች ፀረ-ማወዛወዝ እርምጃዎችን ተግባራዊ ማድረግ ወይም መመርመር
• ተማሪዎች ስለ JNI፣ ተወላጅ ኮድ እና የሞባይል ደህንነት የሚማሩ
• የROM/Magisk አድናቂዎች የፍተሻ ማለፊያ ዘዴዎችን እየሞከሩ
▌ የትምህርት ዓላማ
RootRoot እንደ የደህንነት ምርምር እና የትምህርት መሳሪያ የተነደፈ ነው። ሁለቱንም አጸያፊ እና መከላከያ የሞባይል ደህንነት ቴክኒኮችን ያሳያል። ሁሉም የፍተሻ ዘዴዎች ሙሉ በሙሉ የተመዘገቡ እና ክፍት ምንጭ በGitHub ላይ ናቸው።
የስር ማወቂያ እንዴት እንደሚሰራ መረዳት ሁለቱም ተከላካዮች ጠንካራ ጥበቃዎችን እንዲገነቡ እና ተመራማሪዎች በነባር አተገባበሮች ውስጥ ያሉትን ድክመቶች እንዲለዩ ይረዳል።
የምንጭ ኮድ፡ https://github.com/John-Jung/RootRoot