国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

手游之u3d之dll文件加密之手動修復

Tecode / 2143人閱讀

摘要:文章標題不知道怎么取。。。如果文件被反編譯修改后,和源文件是有差別的,文件大小,格式里面的各種段是會改變的,這就導致無法和原版做對比。

文章標題不知道怎么取。。。 所需工具:010editor.NET Reflector 一款國外破解版的游戲,u3d引擎,想看修改了啥,但是無奈打開后是這樣的

dll加密了,首先想到的是從內存中去摳出來,于是經過一番操作后從內存中扣出來,具體怎么從內存中,這里略過,不是本文重點,網上可以自己找找。使用反編譯工具打開后還是這樣

這么牛逼,不用解密就能執行的嗎,
好吧,那對比下,

納尼???內存中摳出來的和加密后的文件對比是一模一樣的,說明它可能不需要解密就能執行,那就是可能是破壞了某些段導致反編譯工具無法正確反編譯,pe格式是這樣的,某些段可以修改后不影響執行。如果dll文件被反編譯修改后,和源文件是有差別的,文件大小,pe格式里面的各種段是會改變的,這就導致無法和原版做對比。
祭出文件萬能打開工具010editor,還有pe格式模板下載:https://www.sweetscape.com/010editor/repository/templates/搜索:EXE.bt打開后:

明顯缺了好多個段

下面就開始本文的重點了手動修復試試映入眼簾,一眼看出pe格式頭部被破壞,pe格式標準頭部:50 45 00 00每次改后,就重新執行一下模板,再使用.NET Reflector打開試試,如果能正確反編譯就證明修改完成

解析錯誤證明有些段的偏移被破壞過了,導致模板無法正常跑通

指向OPTIONAL_HEADER32的大小是0xE0,但是這里只解析到0xA0,很明顯就是錯的。 接下來我們看OPTIONAL_HEADER32結構體,有幾個很重要的信息

這里我們要驗證下那個指向程序入口的地址,0x34484E,計算公式是0x34484E – 0x2000 +0x200 = 0x342A4E跳過去看一下,是對的,一般入口都是 FF 25開頭
再來看下面幾個段信息,都是錯的有一點要知道,就是3個段都會是緊挨著的,也就是說一個段結束后,另一個段就接下去,比如text段是0 – 0x100,那下一個段就是0x100 – 0xxxxx,基于這點, 康康IMAGE_SECTION_HEADER段
上面的真實text段就是從0x200 – 0x342854這個區間0x342854 - 0x342A00區間用00補足,遵循對齊所以下一個區段真實地址就是0x342A00 + 0x200 = 0x342C00 下一個區段虛擬地址就是0x342A00 + 0x2000 = 0x344A00,這里的虛擬地址這樣加過之后還不行,因為內存中的對齊值是0x2000,所以0x344A00還要再加,也是用00補足,加到0x2000的整數倍,最終下一個區段的虛擬地址就是0x346000
所以把下一個區段的VirtualAddress和PointerToRawData改過來,

再看看下一個段,是正確的 在運行一下模板,還是報錯,那就肯定還有哪里有錯,我們上面修復了段的指向問題了,再回去看看OPTIONAL_HEADER32結構體,這個結構體太重要了,包含了很多信息

上面導入表需要計算多次,跳轉多次,是個指針就加加減減這里就不錯描述了,因為這個地方我算過了,是沒錯的主要看Resource結構體,我們在上面已經修復過.rsrc結構體,這個就是對應Resource結構體,改成一樣的

再執行一下模板,ok,成功跑通,沒有報錯,再使用.NET Reflector打開康康

成功,接下去再去導出所有cs文件和原版的對比,就能找出修改了哪里

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/125891.html

相關文章

  • u3ddll文件加密手動修復

    摘要:文章標題不知道怎么取。。。如果文件被反編譯修改后,和源文件是有差別的,文件大小,格式里面的各種段是會改變的,這就導致無法和原版做對比。文章標題不知道怎么取。。。 所需工具:010editor.NET Reflector 一款國外破解版的游戲,u3d引擎,想看修改了啥,但是無奈打開后是這樣的dll加密了,首先想到的是從內存中去摳出來,于是經過一番操作后從內存中扣出來,具體怎么從內存中,這里略過...

    Tecode 評論0 收藏0
  • 如何防止Unity3D代碼被反編譯?

    摘要:網易云易盾移動游戲安全技術專家陳士留在年技術路演演講內容中對這個問題有過比較詳細的介紹,摘錄如下防止代碼被反編譯其實就是常見的手游風險中的破解風險。 歡迎訪問網易云社區,了解更多網易技術產品運營經驗。 網易云易盾移動游戲安全技術專家陳士留在2018年Unity技術路演演講內容中對這個問題有過比較詳細的介紹,摘錄如下: 防止Unity3D代碼被反編譯其實就是常見的Unity手游風險中的破...

    voyagelab 評論0 收藏0
  • JS or C#?不存在的腳本

    摘要:既然小匹夫說不是,但的確有好幾種腳本語言啊,那和相比,我們應該如何抉擇呢所以最后小匹夫會分析一下。因為最后小匹夫意識到了和是兩種差別很大的語言。 前言 又來到了周末,小匹夫也終于有了喘口氣寫寫博客的時間和精力。話說周五的下午,小匹夫偶然間晃了一眼游戲蠻牛Unity3D的QQ群,又看到了一個Unity3D開發中老生長談的問題,我的開發語言究竟是選擇JavaScript呢?還是C#呢?。對...

    YFan 評論0 收藏0
  • 記一次使用 vue-admin-template 的優化歷程

    摘要:同時也要引入對應版本的先引入引入組件庫因為依賴是從外部引入的,所以需要告知在打包時,依賴的來源。然后在中加入一條命令執行或者即可完成打包。因此將此次優化記錄下來,并傳上了中。 本文原文 前言 公司有好幾個項目都有后臺管理系統,為了方便開發,所以選擇了 vue 中比較火的 后臺模板 作為基礎模板進行開發。但是,開始用的時候,作者并沒有對此進行優化,到項目上線的時候,才發現,打包出來的文件...

    xumenger 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<