[發明專利]一種棧探測器編譯開關的檢測方法和裝置在審
| 申請號: | 201310057221.8 | 申請日: | 2013-02-22 |
| 公開(公告)號: | CN104008314A | 公開(公告)日: | 2014-08-27 |
| 發明(設計)人: | 周力 | 申請(專利權)人: | 騰訊科技(深圳)有限公司 |
| 主分類號: | G06F21/12 | 分類號: | G06F21/12;G06F21/52;G06F11/36 |
| 代理公司: | 深圳市深佳知識產權代理事務所(普通合伙) 44285 | 代理人: | 唐華明 |
| 地址: | 518031 廣東省深圳*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 探測器 編譯 開關 檢測 方法 裝置 | ||
1.一種棧探測器編譯開關的檢測方法,其特征在于,包括:
對軟件進行殼檢測與脫殼處理后,查找所述軟件的主函數入口確定主函數;
對所述主函數進行特征掃描,若存在與棧探測器GS編譯開關對應的特征指令,則確定GS編譯開關被開啟了。
2.根據權利要求1所述方法,其特征在于,在確定主函數之后還包括:
對所述主函數內的所有函數進行特征掃描,若所述主函數內的任一函數存在與棧探測器GS編譯開關對應的特征指令,則確定GS編譯開關被開啟了。
3.根據權利要求2所述方法,其特征在于,對所述主函數內的所有函數進行特征掃描之前還包括:
確定所述主函數內的函數的函數類型;
所述對所述主函數內的所有函數進行特征掃描包括:對除以下五種類型的函數以外的其他所有函數進行特征掃描;所述五種類型的函數包括:不包含緩沖區的函數、被定義為具有變量參數列表的函數、使用無保護的關鍵字標記的函數、在第一個語句中包含內嵌會變代碼的函數、緩沖區不是8字節類型且大小不大于4個字節的函數。
4.根據權利要求1所述方法,其特征在于,所述查找所述軟件的主函數入口之前還包括:確定所述軟件的編譯器類型;
所述查找所述軟件的主函數入口包括:使用與所述編譯器類型對應主函數的特征指令,識別所述軟件的主函數入口。
5.根據權利要求1至4任意一項所述方法,其特征在于,在確定存在與GS編譯開關對應的特征指令之后還包括:
確定所述特征指令之后的設定范圍內是否出現返回指令,若存在,則確定GS編譯開關被開啟了。
6.一種棧探測器編譯開關的檢測裝置,其特征在于,包括:
確定單元,用于對軟件進行殼檢測與脫殼處理后,查找所述軟件的主函數入口確定主函數;
掃描單元,用于對所述確定單元確定的主函數進行特征掃描;
判決單元,用于若所述掃描單元經掃描確定存在與棧探測器GS編譯開關對應的特征指令,則確定GS編譯開關被開啟了。
7.根據權利要求6所述裝置,其特征在于,
所述掃描單元,還用于在確定主函數之后對所述主函數內的所有函數進行特征掃描;
所述判決單元,還用于若所述掃描單元經掃描確定所述主函數內的任一函數存在與棧探測器GS編譯開關對應的特征指令,則確定GS編譯開關被開啟了。
8.根據權利要求7所述裝置,其特征在于,還包括:
函數類型確定單元,用于在所述掃描單元對所述主函數內的所有函數進行特征掃描之前,確定所述主函數內的函數的函數類型;
所述掃描單元,用于對除以下五種類型的函數以外的其他所有函數進行特征掃描;所述五種類型的函數包括:不包含緩沖區的函數、被定義為具有變量參數列表的函數、使用無保護的關鍵字標記的函數、在第一個語句中包含內嵌會變代碼的函數、緩沖區不是8字節類型且大小不大于4個字節的函數。
9.根據權利要求6所述裝置,其特征在于,還包括:
編譯器類型確定單元,用于在所述確定單元查找所述軟件的主函數入口之前,確定所述軟件的編譯器類型;
所述確定單元,用于使用與所述編譯器類型確定單元確定的編譯器類型對應主函數的特征指令,識別所述軟件的主函數入口。
10.根據權利要求6至9任意一項所述裝置,其特征在于,還包括:
指令確定單元,用于在所述掃描單元確定存在與GS編譯開關對應的特征指令之后,確定所述特征指令之后的設定范圍內是否出現返回指令;
所述判決單元,用于若指令確定單元確定所述特征指令之后的設定范圍內出現了返回指令,則確定GS編譯開關被開啟了。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于騰訊科技(深圳)有限公司,未經騰訊科技(深圳)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310057221.8/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:帶熱回收功能的溫濕度獨立控制空調系統
- 下一篇:制冷設備和制冷系統





