
Honda Civic-ის მულტიმედიის განახლების გზა 'EvilValet' შეტევას ხსნის
სამი წლის შემდეგ, რაც Honda Civic-ის მულტიმედიის რევერს-ინჟინერინგი გამოაქვეყნა, დეველოპერი ერიკ მაკდონალდი აღწერს USB-ის განახლების გზას, რომელიც სატესტო გასაღების გამო ნებისმიერი კოდის დაყენების საშუალებას იძლევა.
სამი წლის შემდეგ, რაც 2021 წლის Honda Civic-ის მულტიმედიური სისტემის (head unit) რევერს-ინჟინერინგის პირველი შედეგები გამოაქვეყნა, დეველოპერმა ერიკ მაკდონალდმა პროექტის განახლება დაწერა, სადაც სრულად მუშა განახლების გზას და „EvilValet"-ის სახელით ცნობილ სისუსტეს აღწერს.
სამეფოს გასაღებები
Honda მულტიმედიის განახლებას USB-ის მეშვეობით მხარს უჭერს: დისკზე იდება AOSP-ის განახლების ფაილი, რომელიც Android recovery-ის გავლით მზადდება და გამოიყენება, ხოლო პროცესს Honda-ს საკუთარი შემოწმებებიც ახლავს. ავტორის მიხედვით, ამ შემოწმებებს ერთი მარტივი შეცდომა აუქმებს: საჯაროდ ცნობილი AOSP-ის სატესტო გასაღები res/keys კატალოგში დარჩა და, მიუხედავად იმისა, რომ Honda-მ recovery ბინარული ფაილი შეცვალა, verify_file-ის ხელმოწერის ლოგიკა სტანდარტულ AOSP-ს ემთხვევა.
შედეგად, ვისაც USB დისკის ფორმატირება და ამ გასაღებით ხელმოწერა შეუძლია, მულტიმედიაზე ნებისმიერი პროგრამის დაყენება შეუძლია ჩვეულებრივი root-წვდომის გარეშე. საკმარისია ფიზიკური წვდომა წინა USB პორტთან, რომ განახლების გზით კოდის თვითნებური შესრულება მოხდეს.
„ბოროტი მოახლის" შეტევა მანქანაში
მაკდონალდი ამას „ბოროტი მოახლის" (evil maid) შეტევად აღწერს, რომელიც სასტუმროს ოთახიდან მანქანის სალონში გადავიდა. ჟურნალისტი მანქანას ვალეტს ტოვებს; ვალეტი, რომელიც სპეცსამსახურზე მუშაობს, USB-ით განახლებას აყენებს; მანქანა უკან უკვე შეცვლილი მულტიმედიით ბრუნდება და გარეგნულად არაფერი შეიმჩნევა.
მან ასევე გამოაქვეყნა ota-builder — ადრეულ ეტაპზე მყოფი ინსტრუმენტი, რომელიც მულტიმედიისთვის მისაღებ განახლების ფაილებს ამზადებს; პრინციპში, ეს საკმარისია setuid-ის მქონე su ბინარული ფაილის დასაყენებლად და მოწყობილობაზე root-წვდომის მისაღებად. ავტორი ერთ დათქმას აკეთებს: მას მყარი საფუძველი აქვს ვიფიქროს, რომ ყველა განახლება AOSP-ის სატესტო გასაღებითაა ხელმოწერილი, თუმცა ვერ ამოწმებს ყველა ოფიციალურ ფაილს ან მულტიმედიის ვარიანტს, ხოლო მის მოწყობილობაზე HondaHack იყო დაყენებული. მიუხედავად ამისა, საჯაროდ ხელმისაწვდომი ევროპული განახლების ფაილი, ფორუმიდან ჩამოტვირთული და ავტორის მიერ არასოდეს შეცვლილი, სწორედ სატესტო გასაღებითაა ხელმოწერილი.
ინსტრუმენტები დოკუმენტაციის ნაცვლად
განახლების მეორე ნაწილი apk-rebuilder-ს ეხება: ის Civic-ის განახლების ფაილს იღებს და გამომავალი ფაილების სუფთა ხეს ქმნის — გადაწყვეტილი რესურსები, აღდგენილი .smali კოდი, გადაფუთვნილი APK-ები, ამოღებული ramdisk — რითაც ავტომატიზებს იმ სამუშაოს, რომელსაც რევერს-ინჟინერი ხელით აკეთებდა. რადგან Honda-ს რეალური კოდის გამოქვეყნება შეუძლებელია, პროექტი აქვეყნებს ფუნქციას, რომელიც განახლების ფაილს .smali კოდად და სურათებად აქცევს.
სხვა ღია მიმართულებებია display-audio-ს ცნობილი ვერსიების ცხრილი, ექსპერიმენტული ARMv7-ის toolchain, რომელიც მწარმოებლის კომპილატორის ვერსიასა და აწყობის დროშებს ემთხვევა, კასტომური თემები, რომლებიც Mitsubishi-ს AOSP-ის ჩანგლის ქირურგიულ ჩასწორებას მოითხოვს, და aidl-rebuilder, რომელიც AIDL ინტერფეისებს ასახავს და შესაძლოა ვირტუალური სპიდომეტრების მსგავსი აპების შექმნის საშუალება მისცეს. მაკდონალდი ამბობს, რომ დაგეგმილი კვლევის უმეტესი ნაწილი დასრულებულია და სავარაუდოდ სხვა პროექტებზე გადავა, თუმცა pull request-ები კვლავ მისასალმებელია.
SiTech — AI-გაძლიერებული ვებ დეველოპმენტი
ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.