軟件分析
垃圾re手 最近在玩群星 創意工坊里面下載了整合包 進群下載排序文件后竟然發現要付費()
28R夠吃一頓好的 馬上來分析一下這個軟件

這是一個四版整合包的mod安裝器 其中櫻花遠征和新星紀元是需要拿邀請碼的
背景:群星的mod很多 為了避免mod沖突有一個mod排序 這個軟件就是干這件事的

好哇
解決方案一
dnspy64位打開 直接開調

根據結構隨便輸入一個邀請碼 理所應當的驗證失敗 這時候我們回到dnspy暫停一下

去調用堆棧窗口看看是誰創建了這兩個字符串

我們轉到這里 向上翻一下

很明顯的調用邏輯
我們可以嘗試看看一下這個檢驗if的函數的邏輯 萬一能寫出一個注冊機呢()
我們在第一個if處下斷 重新運行一下看看這個檢驗的邏輯

跟入我們發現 這個函數是通過和服務器檢測的 並且因為我不想花錢所以並不知道這個服務器返回內容()
所以試探一下 把這個函數的return值由false改為true

繼續執行果然破解成功了....
然后點擊開始安裝即可!
完全沒有難度.....
所以如果想做出這個軟件的破解版可以直接patch這段代碼 讓他恆返回true值即可
解決方案二
我們接下來再分析一下這個軟件的安裝mod過程
可以先安裝這個軟件內免費的繁星物語整合包 能很明顯的發現這個還原備份按鈕嘛
根據一般的邏輯 這個還原備份和安裝mod應該是同一個邏輯調用 我們先把這個備份文件找到

對軟件下斷 開始安裝 找到這個安裝的邏輯
或者通過搜索關鍵詞install找到兩個函數

installtype1和installtype2函數幾乎一致 猜測就是使用的文件不同 我們能一眼看到這個顯眼的unzip函數
對兩個函數的unzip處都下斷! 點擊開始安裝!

看到zip 右鍵保存!
打開一看
PK頭 穩了 直接改后綴解壓!

蕪湖 這就是他安裝所用的文件 和他備份文件一模一樣 我們直接把他復制到游戲目錄/bkp/下 隨便點一個還原備份 然后進入游戲(
)

安裝成功!
