[求解]請問大神,AMXX怎麼反反編譯(anti decompile)?

Home Home
引用 | 編輯 z2352671213
2016-06-29 14:33
樓主
推文 x0
開放源代碼的缺點就是很容易被反編譯(decompile)。


網上已經流傳著兩三種的AMXX反編譯器了,其中甚至有可以完全反編譯AMXX的工具,AMXX真的很不安全。


所以我想問問各位大神,有沒有好的反編譯的方法?(比如說,加密?)


因為AMXX的函數是module內置的,所以想要加密是不可能的。因此只能對字串(string)進行加密。


AMXX有提供string轉換成MD5的函式,卻沒有提供解密的函式,所以用MD5顯然不靠譜吧。


我試過用轉義字符(escape character)來加密,比如把0改寫成^x30,但是還是會被反編譯器看穿。



所以,我想問問各位大神,有沒有好的方法,可以實現在插件內部對明文字符串進行加密,和解密。









獻花 x0
引用 | 編輯 op47
2016-07-03 01:59
1樓
  
MD5 當然是沒有解碼函數, 因為MD5基本上是不能夠解碼的, 只能夠不斷利用字串組合嘗試, 看加密後是否跟本來的一樣

要建立一個可靠的加密解密的function, 一定不能夠在sma裏下手, 我建議建立一個amxx module, module 裏有加解密的function, 使用時就直接從sma call module裏的解密function. 這樣即使amxx流出去, 別人沒有這個module根本就不知道加解密的algorithm. 當然別人也能夠反編module得出解密方法, 所以要用加殼工具混淆module, 這樣就應該相對安全. 不過留意, 有加殼還是有脫殼, 不是100%安全.

獻花 x0
引用 | 編輯 z2352671213
2016-07-03 16:13
2樓
  
下面是引用 op47 於 2016-07-03 01:59 發表的 : 到引言文
MD5 當然是沒有解碼函數, 因為MD5基本上是不能夠解碼的, 只能夠不斷利用字串組合嘗試, 看加密後是否跟本來的一樣

要建立一個可靠的加密解密的function, 一定不能夠在sma裏下手, 我建議建立一個amxx module, module 裏有加解密的function, 使用時就直接從sma call module裏的解密function. 這樣即使amxx流出去, 別人沒有這個module根本就不知道加解密的algorithm. 當然別人也能夠反編module得出解密方法, 所以要用加殼工具混淆module, 這樣就應該相對安全. 不過留意, 有加殼還是有脫殼, 不是100%安全.

謝謝大大提醒。
我也想過用module,不過我不會寫module表情

現在我直接用sockets module,向預先寫好的php網頁發送GET請求來獲得指定的字串了表情

獻花 x0
引用 | 編輯 a7811311622
2016-08-08 10:32
3樓
  
一陣子沒注意…現在AMXX都能完全反編譯了喔… 表情
看來我當初沒發 SMA 的插件是不是該發出來了…? 表情

獻花 x0