ბირთვის დამხმარე სუპერმომხმარებელი (KernelSU)

Magisk-ისგან განსხვავებით, KernelSU ათავსებს ფესვის მოპოვების შესაძლებლობას თავად ბირთვში. ის ატყუებს გარსს, რომ იფიქროს /system/bin/su არსებობს მოწყობილობაზე.

Root ჩვენთვის ძალიან განსაკუთრებულია XDA-ში. ეს საშუალებას აძლევს მომხმარებლებს აიღონ კონტროლი თავიანთ მოწყობილობებზე და დაამატონ ფუნქციები, რომლებიც ყოველთვის არ არის ხელმისაწვდომი, როგორიცაა ზარის ჩაწერა, თემები და ბატარეის გაფართოებული მონიტორინგი. წლების განმავლობაში განხორციელდა რამდენიმე root განხორციელება, ყველაზე პოპულარული, სავარაუდოდ, SuperSU. თუმცა ცოტა ხნის წინ, SafetyNet-ის დანერგვითა და root მოწყობილობებზე შეზღუდვების მზარდი შეზღუდვით, Magisk იყო root იმპლემენტაცია. არჩევანი, რადგან მისი Magisk Hide ფუნქცია საშუალებას აძლევს მომხმარებლებს ეფექტურად დამალონ ის ფაქტი, რომ მათ აქვთ root აპებიდან, როგორიცაა Netflix და Google. გადაიხადე. თუმცა, Magisk Hide-ის იმპლემენტაცია და ფუნქციონირება არის Google-ის კატა-თაგვური თამაში, რომელიც ასწორებს მას და Magisk მუშაობს ამ პაჩის გარშემო.

Magisk მუშაობს ის, რაც ცნობილია, როგორც მომხმარებლის სივრცე. აქ ასევე მუშაობს თქვენი ტელეფონის პროგრამების უმეტესობა, იქნება ეს თამაშები, მუსიკალური პლეერები თუ ფიტნეს ტრეკერები. ეს არის მოწყობილობის ოპერაციული სისტემის მომხმარებლის წინაშე მდგარი „სივრცე“. მომხმარებელთა სივრცე ასევე არის ადგილი, სადაც ყველაზე მეტი ბრძოლა Magisk Hide-სთვის მიმდინარეობს. სამწუხაროდ, რაც დრო გადის და Google სულ უფრო მეტს ასწორებს Magisk Hide-ის მეთოდებს, უფრო და უფრო ნაკლები ადგილი რჩება დასამალად. მომავალში, Magisk-მა შეიძლება დაკარგოს root სრულად დამალვის უნარი.

ამ მოვლენის დაგეგმვა, XDA აღიარებული დეველოპერი zx2c4 (Jason Donenfeld), ცნობილია აქ XDA-ზე მისი მუშაობა WireGuard-ზე და აღმოჩენა ა OnePlus bootloader დაუცველობა, შექმნა ბირთვის დამხმარე სუპერმომხმარებელი (KernelSU).

Magisk-ისგან განსხვავებით, KernelSU ათავსებს ფესვის მოპოვების შესაძლებლობას თავად ბირთვში. აქ ის იტაცებს სისტემურ ზარებს, რათა მოატყუოს ჭურვი აზროვნებაში /system/bin/su არსებობს მოწყობილობაზე, როდესაც ის რეალურად არ არსებობს. შემდეგ ის ახორციელებს ბრძანებებს გაშვებული su თითქოს ნორმალური ბრძანებები იყოს, მაგრამ root პრივილეგიებით. ამ პროცესის თავიდან აცილება SELinux-ს არ შეუძლია - ბირთვს შეუძლია SELinux-ის გამორთვაც კი, თუ მას სურს - და root სტატუსის დამალვის შესაძლებლობა მომხმარებლის სივრციდან და, შესაბამისად, SafetyNet, თითქმის შეუზღუდავია.

თუმცა, KernelSU შორს არის დასრულებისგან. ამ დროისთვის, არ არსებობს წვდომის კონტროლის მექანიზმი (იფიქრეთ Magisk Manager). ამის გამო, KernelSU ამჟამად ყველაზე მეტად ეხმარება ბირთვის დეველოპერებს და არა მომხმარებლებს. ბირთვის შექმნის პროცესი მოითხოვს დეველოპერებს მუდმივად აღადგინონ და ჩატვირთონ ჩატვირთვის სურათები შეცდომებისა და ფუნქციების შესამოწმებლად და გამოსასწორებლად, ხოლო root-ის არსებობა ამას ბევრად ამარტივებს. თუმცა, root პარამეტრებით, როგორიცაა Magisk ან SuperSU, ჩატვირთვის გამოსახულება უნდა იყოს დაყენებული ყოველი აშენების შემდეგ, რომ root ფუნქციონირდეს, რამაც შეიძლება მნიშვნელოვნად იმოქმედოს განვითარების პროცესზე. მეორეს მხრივ, KernelSU გათვლილია ინტეგრირებულად აშენების დროს, შემდგომი შეკეთების გარეშე. იმისათვის, რომ KernelSU ინტეგრაცია იყოს მარტივი დეველოპერებისთვის, ხელმისაწვდომია მარტივი ერთი ხაზის ბრძანება:

curl -LsS "https://git.zx2c4.com/kernel-assisted-superuser/plain/fetch-and-patch.sh" | bash -

როგორც კი ეს შესრულდება, KernelSU შეიძლება ჩაშენდეს ბირთვში, როგორც ნორმალური მშენებლობის პროცესის ნაწილი. ეს ნიშნავს, რომ დეველოპერებს შეუძლიათ ადვილად შექმნან და გამოსცადონ თავიანთი ბირთვები, root-ის დამატებაზე ფიქრის გარეშე.

მიუხედავად იმისა, რომ KernelSU ადრეულ დღეებშია და მეტი სამუშაოა საჭირო, რომ ის სრულად იყოს წარმოდგენილი, ეს საინტერესო პროექტია. ჩვენ ვესაუბრეთ მაგისკი-შემქმნელი, XDA აღიარებული დეველოპერი topjohnwu, KernelSU-ს შესახებ და მას ასევე საინტერესოდ მიაჩნდა და თქვა, რომ ვინაიდან KernelSU მუშაობს ბირთვის დონეზე, Magisk Hide-ის ფუნქციონალობა ბევრად უფრო საიმედო იქნება, თუ დაემატება, და ეს იქნება "სახალისო რამ განახორციელოს“.

თუ KernelSU-ით დაინტერესებული ბირთვის ან ROM-ის დეველოპერი ხართ, შეამოწმეთ XDA ძაფი და პროექტის მთავარი გვერდი მეტის გასაგებად.