Rambo zhackował iPhone’a, czyli jak za pomocą pojedynczej linijki kodu można było zepsuć smartfon

Badacz bezpieczeństwa iOS Guilherme Rambo ujawnił niedawno poważną lukę w systemie operacyjnym Apple – mogła ona prowadzić do zablokowania iPhone’a … Czytaj dalej The post Rambo zhackował iPhone’a, czyli jak za pomocą pojedynczej linijki kodu można było zepsuć smartfon appeared first on Kapitan Hack.

Kwi 30, 2025 - 06:12
 0
Rambo zhackował iPhone’a, czyli jak za pomocą pojedynczej linijki kodu można było zepsuć smartfon

Badacz bezpieczeństwa iOS Guilherme Rambo ujawnił niedawno poważną lukę w systemie operacyjnym Apple – mogła ona prowadzić do zablokowania iPhone’a za pomocą zaledwie jednej linii kodu. Odkrycie to dotyczyło mechanizmu powiadomień Darwin, niskopoziomowego systemu komunikacji międzyprocesowej w systemach Apple.

Jak działa mechanizm powiadomień Darwin?

System powiadomień Darwin to proste, szybkie i lekkie rozwiązanie IPC (ang. inter-process communication), które umożliwia aplikacjom i komponentom systemowym komunikację poprzez przesyłanie „powiadomień” nazwanych za pomocą ciągów znaków.

Niektóre cechy systemu:

  • Powiadomienia są przesyłane globalnie, bez identyfikacji nadawcy.
  • Nie są chronione przed aplikacjami trzecimi.
  • Każda aplikacja z dostępem do odpowiedniego API (notify_post) może je wysłać.
  • API jest udokumentowane w notify.h.

Eksperymenty z aplikacją EvilNotify

Rambo stworzył aplikację testową o nazwie „EvilNotify”, która wykorzystywała powiadomienia Darwin do wywoływania niepożądanych efektów na urządzeniu. Aplikacja mogła:

  • Wyświetlać fałszywe ikony w pasku statusu, takie jak ostrzeżenie o wykryciu cieczy.
  • Symulować połączenie DisplayPort w Dynamic Island.
  • Blokować gesty systemowe, takie jak dostęp do Centrum Sterowania czy Ekranu blokady.
  • Ignorować połączenia Wi-Fi, zmuszając system do korzystania z danych komórkowych.
  • Wywoływać tryb „restore in progres”, który wymuszał ciągłe restarty urządzenia.

Na poniższym wideo możecie zobaczyć funkcjonalności aplikacji EvilNotify.

Jedna linia kodu prowadząca do awarii

Kluczowym elementem ataku było wywołanie powiadomienia:

Ta pojedyncza linia kodu powodowała, że urządzenie wchodziło w tryb przywracania, z którego nie można było wyjść bez restartu. Co więcej, jeśli aplikacja zawierała rozszerzenie widgetu, kod mógł być uruchamiany automatycznie po każdym restarcie, prowadząc do nieskończonej pętli restartów. Efekty możecie zobaczyć na poniższym nagraniu (iPhone 14 Pro z systemem iOS 18.1).

Zgłoszenie luki i reakcja Apple

Rambo zgłosił lukę do Apple 26 czerwca 2024 roku. Firma przyznała mu nagrodę w wysokości 17 500 dolarów w ramach programu bug bounty. W odpowiedzi na zgłoszenie Apple wprowadziło zmiany w systemie powiadomień, wymagając specjalnych uprawnień dla wysyłania wrażliwych powiadomień. Poprawka została wprowadzona w aktualizacji iOS 18.3.

Wnioski i zalecenia

Odkrycie badacza podkreśla znaczenie dokładnej kontroli mechanizmów komunikacji międzyprocesowej w systemach operacyjnych. Brak weryfikacji nadawcy w powiadomieniach Darwin stanowił poważne zagrożenie dla stabilności urządzeń. Użytkownikom zaleca się regularne aktualizowanie systemu operacyjnego do najnowszych wersji, aby zapewnić ochronę przed tego typu lukami. Więcej informacji na temat tego odkrycia można znaleźć na blogu Guilherma Rambo.

Podziel się z innymi tym artykułem!

The post Rambo zhackował iPhone’a, czyli jak za pomocą pojedynczej linijki kodu można było zepsuć smartfon appeared first on Kapitan Hack.