[發明專利]保護動態鏈接庫的方法有效
| 申請號: | 201310100116.8 | 申請日: | 2013-03-26 |
| 公開(公告)號: | CN103198244A | 公開(公告)日: | 2013-07-10 |
| 發明(設計)人: | 孫吉平;韓勇 | 申請(專利權)人: | 北京深思數盾科技有限公司 |
| 主分類號: | G06F21/14 | 分類號: | G06F21/14 |
| 代理公司: | 北京金信立方知識產權代理有限公司 11225 | 代理人: | 黃威;鄧玉婷 |
| 地址: | 100872 北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 保護 動態 鏈接 方法 | ||
技術領域
本發明涉及軟件保護領域,尤其涉及一種保護動態鏈接庫的方法。
背景技術
軟件作為一種特殊的產品,由于其純數字化的特征,從問世起就一直遭受盜版的困擾。盜版的存在不僅給軟件開發者造成了巨大的損失,也極大阻礙了整個軟件行業的發展。因此,幾乎所有的軟件都采取了相應的技術措施來避免軟件遭受破解和盜版,而其中大多數軟件都會使用到動態鏈接庫(DLL),并且會包含有重要的功能,所以對軟件使用到的動態鏈接庫(DLL)做必要的保護勢在必行。
現有技術中的保護方法中,該DLL的導出表仍然暴露在外,其函數名仍然可見,對破解或盜版者來說,可以直達函數體進行跟蹤調試,或通過函數名猜測其函數功能,從而提供破解線索,不利于軟件的保護。軟件所使用的DLL還可能被破解或被盜版者替換掉,從而對軟件功能和安全造成威脅,該DLL還可能被非法盜用。現有的保護是將DLL捆綁到可執行文件(EXE)中,在運行中動態釋放到硬盤中,存成文件再調用,但其在本質上并沒有起到真正保護的作用。
發明內容
本發明所要解決的技術問題是,針對現有保護技術中所采用的暴露接口函數名和存在實體文件的缺陷,EXE從內存直接加載DLL,不會有任何臨時文件產生,最大限度的保護了軟件的安全性。
為了解決上述技術問題,本發明提供了一種保護動態鏈接庫的方法,用于調用動態鏈接庫文件的情況下對動態鏈接庫文件導出函數的信息進行保護,包括以下步驟:
S1:分析動態鏈接庫文件的導出表,解析出所述動態鏈接庫文件的導出表中的導出函數的函數名,將所述導出函數的函數名字符串全部清除;
S2:將修改后的動態鏈接庫文件整體移到可執行文件中;
S3:在所述可執行文件中添加一屬性為可讀可寫可執行的節,用于將原入口地址改為指向所述節的代碼,通過所述節從內存加載修改后的動態鏈接庫文件后,跳回原入口地址。
作為優選,S2步驟還包括:獲得所述導出函數的序號,以一個不重復的隨機數替代所述序號,將可執行文件的導入表和動態鏈接庫文件的導出表互相關聯,并將該隨機數作為可執行文件的導入表和動態鏈接庫文件的導出表的唯一對應號。
作為優選,所述方法通過隱式調用方式實現,在步驟S1之前還執行步驟S0,
S0:分析可執行文件的導入表,找到需要被保護的動態鏈接庫文件名,根據導入表的導入描述項,找到需要調用的所有導出函數的函數名和引用地址后,刪去該導入描述項。
作為優選,所述方法通過顯式調用方式實現,在步驟S3之前還執行步驟S21,
S21:分析可執行文件的代碼,將用于得到需要被保護的動態鏈接庫導出函數首地址的函數所引用的函數名字符串全部清除;
S3步驟中的所述節包括功能函數,其功能為判斷是否要調用需要保護的動態鏈接庫文件,如果是,則執行步驟S31;如果否,則執行步驟S32;
S31:直接從內存中加載;
S32:正常調用系統中能夠加載動態鏈接庫的函數。
與現有技術相比,本發明的保護動態鏈接庫的方法的有益效果在于:通過將導出函數的函數名字符串全部清除,并且以一個隨機數替代導出函數的序號并將該隨機數作為可執行文件的導入表和動態鏈接庫文件的導出表的唯一對應號,將DLL中的文件數據整體移到EXE中,使兩者都形成沒有符號接口暴露的“隱式鏈接”,使DLL與EXE成為一體,從內存直接加載DLL,不會有任何臨時文件產生,最大限度的保護了軟件的安全性。
附圖說明
圖1為使用本發明的實施例的保護動態鏈接庫的方法前的整體調用關系示意圖;
圖2為使用本發明的實施例的保護動態鏈接庫的方法后的整體調用關系示意圖;
圖3為本發明的實施例一的保護動態鏈接庫的方法的流程示意圖;
圖4為本發明的實施例二的保護動態鏈接庫的方法的流程示意圖。
具體實施方式
下面結合附圖和具體實施例對本發明的實施例的保護動態鏈接庫的方法作進一步詳細描述,但不作為對本發明的限定。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京深思數盾科技有限公司,未經北京深思數盾科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310100116.8/2.html,轉載請聲明來源鉆瓜專利網。





