as3加密入門-2使用非法變量名

第二部分 使用16進制編輯器混淆as3變量名(推薦)
修改as3變量名是目前最流行的混淆加密的方法(我也首推這一方法),使用起來也很簡單。許多賣錢的加密軟件都提供這種方法,但其實自己手動就可以做到,不必浪費錢財,而且加密軟件是死的,直接對swf混淆可能產生錯誤,對自己寫的東西,手動效果好得多。
推薦軟件(若有更好工具歡迎推薦):
1.SWF 壓縮/解壓縮  SWF Compressor(免費軟件)
下載地址:http://www.dcomsoft.com/
(可能被牆,可以直接下載附件compressor_decompressor.exe)
compressor_decompressor.rar (1.01 MB)


2.16進制編輯器 HxD(免費軟件)
下載地址:ftp://wa651f4:[email protected]/HxDchs.zip
HxDchs.zip (788.54 KB)


3. 任意一個反編譯工具(如asv)
先下載安裝兩個軟件。
以第一部分alchemy生成swf文件爲例ALCSWF.swf。
1.運行SWF Compressor File->Open ALCSWF.swf Decompress movie 保存ALCSWF_FWS.swf
decompress movie.PNG


2.將保存的ALCSWF_FWS.swf拖到HxD圖標上(用HxD打開該文件)

3.asv打開ALCSWF.swf 觀察反編譯出類代碼文件
asv.PNG


4.以修改類名“Main”(替換爲“;;;;” )爲例
HxD中
ctrl+R
搜索 Main
替換爲 ;;;;
注意鉤上大小寫敏感項
全部替換。
Hex.PNG


同法替換
ALCSWF->;;;;;;
enterFrame->;;;;;;;;;;(注意被替換字符串與替換字符串長度要相同!)
幾點注意
1被替換字符串與替換字符串長度要相同!
2只能替換自定義的變量名、函數名、類名、包名,不能替換as3關鍵字!
3一定要全部替換!
注意保存原swf文件,每次替換後運行一下swf看是否還能正確運行,如flash player報錯,可能原因是替換了as3關鍵字,被替換字符串與替換字符串長度不同,沒全部替換等,需要重新來一次。
替換完畢,再用asv察看結果如下:
asv2.PNG


4運行SWF Compressor File->Open ALCSWF_FWS.swf (剛替換完畢的swf)Compress movie 保存ALCSWF_CWS.swf即可。

題外話:HeX編輯器還可以做簡單的swf破解:
以這個遊戲爲例http://www8.agame.com/mirror/flash/a/Arcuz/arcuz_agame_com.swf
遊戲設置了運行域,禁止本地遊戲(這點其實很無聊)
直接下載播放swf顯示如下:
arcuz_agame_com1.PNG


使用asv察看源碼發現是as2的,是這句"sitelock(urls_allowed);”代碼在作怪。
arcuz_agame_com-lock.PNG


直接用上述方法,黑掉sitelock,本地成功運行:
arcuz_agame_com-ulock.PNG

arcuz_agame_com-unlock1.PNG


變量名替換.zip (233.4 KB)

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