[發明專利]iOS平臺文件讀取保護方法、存儲介質、電子設備及系統有效
| 申請號: | 201710772659.2 | 申請日: | 2017-08-31 |
| 公開(公告)號: | CN109426702B | 公開(公告)日: | 2021-05-28 |
| 發明(設計)人: | 周志剛;張文明;陳少杰 | 申請(專利權)人: | 武漢斗魚網絡科技有限公司 |
| 主分類號: | G06F21/12 | 分類號: | G06F21/12 |
| 代理公司: | 武漢智權專利代理事務所(特殊普通合伙) 42225 | 代理人: | 張凱 |
| 地址: | 430000 湖北省武漢市東湖開*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | ios 平臺 文件 讀取 保護 方法 存儲 介質 電子設備 系統 | ||
本發明涉及信息安全領域,公開了一種iOS平臺文件讀取保護方法,該方法包括S1:獲取iOS系統中的所有Mach?o文件;S2:解析Mach?o文件,得到每個Mach?o文件內每個函數的名稱和指針,遍歷每個函數的名稱,找到每個Mach?o文件內的open函數;S3:編寫一hook函數;S4:當使用open函數進行文件內容讀取操作時,則使用hook函數獲取當前open函數的調用堆棧信息,并將獲取的調用堆棧信息上傳至后臺服務器以對獲取的調用堆棧信息的合法性進行判斷,若合法,則不做處理,若不合法,則禁止當前open函數的文件讀取操作。本發明能夠有效保證文件內容數據的讀取安全。
技術領域
本發明涉及信息安全領域,具體涉及一種iOS平臺文件讀取保護方法、存儲介質、電子設備及系統。
背景技術
當前,隨著移動設備的日益普及,移動應用產業尤其是iOS應用隨之得到飛速發展,且iOS應用的開發模式和代碼框架也隨之發生了巨大變化。對于iOS平臺,其應用程序的構成分為主程序和模塊文件,模塊文件即為dylib文件,dylib文件是iOS平臺上的動態鏈接庫文件,在iOS應用開發的過程中,若需要編寫某些功能模塊注入到對應的進程中運行,則均是編寫一個dylib文件,然后將該dylib文件注入到對應的進程中運行,且對于iOS應用中文件數據的獲取,也是相應編寫一個dylib文件注入到iOS應用中來進行文件數據的獲取。
但是,在某些iOS應用程序中總會有一些較為重要或核心的數據保存于iOS應用程序的文件中,例如應用臨時存儲的中間結果文件等等,此時不法人員能夠通過編寫dylib文件注入到iOS應用程序中來讀取iOS應用程序中保存的文件,使文件內容被非法讀取,造成核心數據的丟失。
發明內容
針對現有技術中存在的缺陷,本發明的目的在于提供一種iOS平臺文件讀取保護方法,能夠有效保證文件內容數據的讀取安全。
為達到以上目的,本發明采取的技術方案是,包括:
S1:獲取iOS系統中的所有Mach-o文件及每個Mach-o文件所對應的內存起始地址,并根據內存起始地址獲取Mach-o文件在內存中的虛擬內存地址;
S2:根據Mach-o文件在內存中的虛擬內存地址,解析Mach-o文件,得到每個Mach-o文件內每個函數的名稱和指針,遍歷每個函數的名稱,找到每個Mach-o文件內的open函數;
S3:編寫一hook函數,所述hook函數用于獲取open函數的調用堆棧信息;
S4:當使用open函數進行文件內容讀取操作時,則使用hook函數獲取當前open函數的調用堆棧信息,并將獲取的調用堆棧信息上傳至后臺服務器以對獲取的調用堆棧信息的合法性進行判斷,若合法,則不做處理,若不合法,則禁止當前open函數的文件讀取操作。
在上述技術方案的基礎上,
所述后臺服務器包括一數據庫;
所述數據庫中存儲有所有open函數的所有合法調用堆棧信息;
判斷獲取的調用堆棧信息是否存在于數據庫中,若存在,則獲取的調用堆棧信息合法,若不存在,則獲取的調用堆棧信息不合法。
在上述技術方案的基礎上,
所述hook函數用于將目標函數的內存地址進行替換成設定地址;
當目標函數執行時,跳轉至設定地址以進行調用堆棧信息的獲取;
所述目標函數為open函數。
在上述技術方案的基礎上,S4中,對于當前open函數的調用堆棧信息的獲取,具體為:
S401:根據Mach-o文件的虛擬內存地址和指針,獲取Mach-o文件中open函數的內存地址;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢斗魚網絡科技有限公司,未經武漢斗魚網絡科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710772659.2/2.html,轉載請聲明來源鉆瓜專利網。





