010破解(五)之網絡驗證

010破解(五)之網絡驗證

概述

計算出來的序列號只能用一段時間就失效,原因是每次010Edit聯網是會通過官網驗證我們的序列號,因此要實現完美破解,我們還要分析一下網絡驗證.

分析思路

  • 聯網
  • 輸入計算出來的序列號
  • 定位到核心代碼,一路跟下來,直到無效字符串或者成功字符串

註冊問題

問題:會出現這種情況,就是網絡驗證不通過
在這裏插入圖片描述

可能你會有疑惑,爲什麼我上篇文章就成功了?

我來分析一下,首先我們根據算法計算出來的序列號肯定是對的,那麼問題來了,爲什麼不能註冊?我們看提示:他提示我們輸入了一個無效的license,如果確認license是正確的,請聯繫官方人員.我們可以有一個猜測:
序列號分兩種:

  • 被人買過的,官方收到錢了,序列號數據庫備份
  • 沒被買過的,那當然是無效的了,也可以說是沒被激活的了

我是試出來的,畢竟admin這個用戶名比較大衆

分析過程

輸入正確的序列號後,聯網我們會發現第二個函數並沒有返回DB,所以猜測網絡驗證在第二個關鍵函數內
在這裏插入圖片描述
分析第二個關鍵函數,剛進去會有一個標誌位的判斷,如果不成功直接返回0x113,函數返回後還要驗證一次標誌位,緊接着執行了一個函數,我們猜測這個函數應該就是網絡驗證了
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
總結:
一直到最終跳轉到驗證成功字符串,一共三次標誌位驗證,一次網絡驗證函數驗證
去掉網絡驗證:

  • 修改標誌位 判斷後條件跳轉改爲JMP
  • 修改sub_004023A1網絡驗證函數,讓返回值恆定爲1(原理和暴力破解一樣)
mov eax,1
ret 8

這樣網絡驗證就破解了.

大功告成

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章