[發明專利]一種代碼定位方法有效
| 申請號: | 201710914571.X | 申請日: | 2017-09-30 |
| 公開(公告)號: | CN107885505B | 公開(公告)日: | 2021-05-14 |
| 發明(設計)人: | 韋福;譚華宇;黃定真;蒙武輝 | 申請(專利權)人: | 浙江福山電子科技有限責任公司 |
| 主分類號: | G06F8/53 | 分類號: | G06F8/53;G06F8/74 |
| 代理公司: | 杭州天欣專利事務所(普通合伙) 33209 | 代理人: | 楊顯儉 |
| 地址: | 314300 浙江省嘉興市海*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 代碼 定位 方法 | ||
本發明涉及一種代碼定位方法,屬于軟件開發領域。傳統匯編代碼位置的查找是通過特征碼去查找的,但是特征碼容易變化,只要軟件更新,就有可能變化,這樣就得重新對軟件進行反匯編分析,進行位置定位,工作量大。本發明公開了一種代碼定位方法,該代碼定位方法通過字符串常量或字符串常量和特征碼相結合去查找定位代碼的位置,工作效率高,查找定位代碼快速準確。將代碼定位方法開發成軟件,軟件即可進行自動修改代碼,使用方便。
技術領域
本發明涉及一種代碼定位方法,屬于軟件開發領域。
背景技術
隨著軟件技術的發展,各種各樣的軟件開發技術層出不窮,其中有一種軟件技術,就是在不知道源代碼的情況下,通過反匯編,然后去修改匯編代碼。這種技術也得到了大范圍的使用,比如,木馬病毒分析,軟件打補丁,軟件二次開發,軟件破解等,都需要反匯編,然后找到要修改的位置,最后做代碼的修改。從中我們可以看出,要修改代碼,首先找到修改的位置,這樣修改位置的查找就非常重要了。
傳統匯編代碼位置的查找是通過特征碼去查找的,所謂的特征碼就是匯編代碼對應的二進制代碼,這種二進制代碼沒有重復或者重復比較少,通過二進制代碼可以找到匯編代碼所在函數,即找到了匯編代碼的位置,如申請號為201611263238.9的中國專利。但是通過特征碼去查找修改代碼位置,有個很麻煩的問題,就是特征碼容易變化,只要軟件一更新,就有可能變化,這樣就得重新對軟件進行反匯編分析,進行位置定位。如果軟件更新頻率較快,工作量比較大。
因此有必要提出一種新的方法去解決上述問題。
發明內容
本發明的目的在于克服現有技術中存在的上述不足,而提供一種代碼定位方法,該代碼定位方法通過字符串常量或字符串常量和特征碼相結合去查找定位代碼的位置,工作量少,查找定位代碼快速準確。
本發明解決上述問題所采用的技術方案是:一種代碼定位方法,其特征在于,包括如下步驟:對待分析軟件進行反匯編分析,查看匯編代碼,找出匯編代碼中內存地址里面儲存有字符串常量Q的匯編代碼A,若所述匯編代碼A為一處,則所述匯編代碼A的代碼位置所在函數即為所要定位的代碼位置,代碼定位完成;若所述匯編代碼A有多處,即多處匯編代碼A的內存地址里面均儲存有字符串常量Q,查看特征碼并從中找出特征碼B,從匯編代碼A對應的特征碼中找出與特征碼B位置相同的特征碼M,則所述特征碼M的代碼位置所在函數即為所要定位的代碼位置,代碼定位完成;或者,若所述匯編代碼A有多處,即多處匯編代碼A的內存地址里面均儲存有字符串常量Q,通過字符串常量Q所在的代碼位置的順序來確定要定位的代碼位置,即,從字符串常量Q所在的代碼位置的開始處數起第N個字符串常量所在的函數為要定位的代碼位置;
或者,對待分析軟件進行反匯編分析,查看特征碼,找出特征碼B,若特征碼B為一處,則所述特征碼B的代碼位置所在函數即為所要定位的代碼位置,代碼定位完成;若特征碼B有多處,查看匯編代碼并從中找出內存地址里面儲存有字符串常量Q的匯編代碼A,以匯編代碼A處的代碼位置為基準來確定特征碼,距離匯編代碼A處的代碼位置比較近的特征碼M或者在匯編代碼A的代碼位置的上一行、下一行、上數行以及下數行能確定位置的特征碼M,如果特征碼M與特征碼B相同,則所述特征碼M的代碼位置所在函數即為所要定位的代碼位置,代碼定位完成。通過字符串常量或字符串常量和特征碼相結合去查找定位代碼的位置工作效率高,克服了傳統技術中僅使用特征碼查找定位代碼的位置中特征碼容易變化的缺陷,工作量少,查找定位代碼的位置快速準確。
更具體而言,所述函數為基準位置,修改代碼以所述函數為基準,修改的代碼位置在該函數中或者在該函數附近的其他函數中。
更具體而言,所述第N個字符串常量中N為自然數。
更具體而言,將所述代碼定位方法開發成軟件,所述軟件可自動查找字符串常量、定位函數位置并進行自動修改代碼。使用方便,可快速準確定位到函數的代碼位置并進行自動修改,工作量少,工作效率高。
本發明與現有技術相比,具有以下優點和效果:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浙江福山電子科技有限責任公司,未經浙江福山電子科技有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710914571.X/2.html,轉載請聲明來源鉆瓜專利網。





