記憶體安全執行 iBoot
在 iOS 14 和 iPadOS 14 或較新版本中,Apple 修改了用來建立 iBoot 啟動程式的 C 編譯器工具鏈以改善其保安。修改後的工具鏈會執行程式碼,其設計目的是防止通常會在 C 程式中遇到的記憶體和型別安全問題。例如,這可協助防止下列類別中大部分的弱點:
緩衝區溢位:透過確保所有指標都攜帶存取記憶體時通過驗證的界限資料
堆積利用:透過分離堆積資料與其後設資料及正確偵測雙重釋出等錯誤情況
型別混淆:透過確保所有指標都攜帶指標轉換操作期間通過驗證的執行階段型別資料
釋出後使用錯誤所造成的型別混淆:透過靜態型別分隔所有動態記憶體配置
配備 Apple A13 仿生晶片或較新版本的 iPhone,以及配備 A14 仿生晶片或較新版本的的 iPad 均可使用此技術。
感謝您提供意見。