

Gdy pod koniec grudnia 2015 roku ludzie z grupy fail0verflow pokazali Linuksa zainstalowanego na konsoli PlayStation 4, Sony mogło się tylko pocieszać, że nie otwiera to bezpośredniej drogi do uruchamiania kopii gier. Dzisiaj już Sony nie ma nic na pocieszenie. W ostatnich miesiącach niezależna scena wokół PS4 świętuje kolejne sukcesy, a piraci korzystają z możliwości uruchamiania kopii gier na starym firmware 1.76. Teraz ci sami ludzie, którzy zainstalowali na konsoli Sony Linuksa, demonstrują Adieu, swój stary exploit kernela PS4. Co najważniejsze, działa on na firmware do względnie nowej wersji 4.05 – wykorzystaną lukę załatano dopiero w 4.06.
Hakerzy z fail0verflow przyznają, że to ta sama technika, którą zademonstrowała rok temu chińska grupa Chaitin Tech, prezentując wówczas jedynie jako dowód nagranie wideo – a wszystkie szczegóły zachowując dla siebie. Odkryć dokonano jednak niezależnie, a to co odkryto, fail0verflow przedstawia teraz na swoim blogu.
Nie udostępniono co prawda samego exploita, ale ilość ujawnionych informacji, wraz z próbkami kodu powinna wystarczyć, by znani scenowi deweloperzy byli w stanie zbudować z tego jailbreaka dla PlayStation 4 z firmware 4.05 i starszymi.
Z tego co można powiedzieć po zerknięciu do blogowego wpisu, wykorzystywana jest podatność w WebKicie, by przez kod w JavaScripcie uruchomić kombinację wywołań systemowych, które wprowadzą pomieszanie typów, a następnie przekształcenie tej sytuacji w scenariusz use-after-free. Wykorzystano w tym celu wywołanie systemowe namedobj_delete, uzyskując bezpośredni dostęp do pamięci – o ile by się znalazło odpowiedni wskaźnik.
Znaleziono go korzystając z funkcji zwracającej adresy obiektów używanych przez kernel do zarządzania opisami plików w przestrzeni użytkownika. W końcu zaś tak stworzony w przestrzeni użytkownika obiekt został rozpytlony na kernel, by kolejnym wywołaniem systemowym wymusić już wykonanie całego łańcucha obiektów ROP, innymi słowy uruchomić własny kod pomimo zabezpieczeń przed wykonaniem niepodpisanego kodu.
Tak więc wszyscy ci, którzy pozostali przy starszych wersjach firmware, już niebawem będą mogli spełnić marzenie każdego użytkownika PlayStation 4 i zainstalować sobie na swoim sprzęcie Linuksa, czy też oprogramowanie homebrew. Pozostali, którzy mają już nowsze wersje firmware, wciąż mogą żywić takie nadzieje. Deweloper Qwertyoruiop ogłosił na Twitterze, że dysponuje zarówno punktem wejścia jak i działającym exploitem kernela na najnowszym firmware 5.00. Wątpliwe jednak, by szybko doszło do jego ujawnienia.
Na koniec warto podkreślić, że użytkownicy FreeBSD nie muszą martwić się o tego exploita – wykorzystana podatność jest wynikiem zmian wprowadzonych przez Sony w kernelu tego systemu, będącego przecież bazą dla systemu PS4.
źródło: sonyJeśli chcesz otrzymywać wyczerpujące informacje z serwisu MRT Net, zaprenumeruj nasz Newsletter