NoReboot惡意軟件讓iPhone假裝關(guān)機
據(jù)Security Affairs消息,Zecops公司的安全研究人員發(fā)明了一種名為NoReboot新型的惡意軟件,它可以讓iPhone假關(guān)機。

該技術(shù)直接模擬了用戶iPhone設(shè)備關(guān)機時的情景,專家表示,一般用戶不會很認真的區(qū)分是真關(guān)機還是“假關(guān)機”。
“NoReboot”的工作原理是將惡意代碼注入 InCallService、SpringBoard 和 backboardd 這三個后臺進程,它們負責(zé) iPhone 的重新啟動過程。一旦攻擊者劫持了重啟過程,iPhone 在用戶看來就像關(guān)閉了一樣,但卻完全清醒并連接到互聯(lián)網(wǎng)。
“假關(guān)機”后,攻擊者可悄悄遠程訪問用戶手機的麥克風(fēng)和攝像頭,并在iPhone恢復(fù)開機狀態(tài)時一直進行。這意味著即便用戶重啟手機也不會影響該惡意軟件的運行。
Zecops 公司發(fā)布了該技術(shù)的相關(guān)分析報告,并指出他們通過掛鉤Objective-C的方法 [FBSSystemService shutdownWithOptions:]來劫持信號。這樣它就不會向SpringBoard 發(fā)送關(guān)閉信號,而是會通知 SpringBoard 和 backboardd 觸發(fā)注入的代碼。
在backboardd中,研究人員會隱藏旋轉(zhuǎn)動畫,只要SpringBoard停止運行就會自動出現(xiàn)[BKSDefaults localDefaults]setHideAppleLogoOnLaunch:1]。然后,他們會讓SpringBoard 退出并阻止它再次啟動。由于SpringBoard負責(zé)響應(yīng)用戶的操作和行為,一旦它不再反應(yīng),iPhone手機就表現(xiàn)的跟關(guān)機了一樣。
具體過程如下圖所示。
當(dāng)用戶試圖按音量鍵和關(guān)機鍵來關(guān)閉設(shè)備時,攻擊者可以將其代碼注入上述組件的進程中,并禁用任何物理反饋,以此模擬iPhone關(guān)機的情形。
禁用的物理反饋如下:
- 來電鈴聲和信息通知
- 觸摸反饋(3D觸摸)
- 震動
- 屏幕
- 相機指示燈
安全專家表示,此時所有的物理反饋都已經(jīng)被禁用,看起來就像已經(jīng)關(guān)機了,但是手機的絕大部分功能依舊完整,且可以連接到互聯(lián)網(wǎng),攻擊者可借此監(jiān)控用戶。目前該技術(shù)已經(jīng)進行了PoC測試,安全專家公布了PoC測試視頻,詳細展示了攻擊者是如何通過攝像頭和麥克風(fēng)監(jiān)視受害者。
參考來源:https://securityaffairs.co/wordpress/126358/hacking/noreboot-persistence-iphone.html