1. 最近研究so文件的保護,在網上搜索發現愛加密支持對so文件的保護,然后聯系客戶,本來是想讓客戶保護一個自己的so文件來做測試的,結果客戶各種不願意,說要簽什么XX協議后才能給so保護,各種蛋疼..最后客戶給了我一個他們保護后so和一個保護前的so與一個說明文檔,如下圖:
今天我們主要是分析它這個加密后的so,看它是用什么方式保護的,是否具有安全性。
2. 根據它.doc中的說明"加密前so文件大小為14KB,加密后so文件大小為9KB。加密后so庫體積可以減小40%左右。"如下圖
猜測可能是upx保護的,要是的樣的話,我們是不是可以用"upx.exe -d 加密后的.so"來脫殼呢?當然不行,測試效果如下圖(我用的是3.92)。
無法脫殼!!我們用十六進制工具打開加密后的.so發現它把UPX加殼后的標志"UPX!"改成了AJM!所以只要我們將其改回去應該就可以脫殼了。是不是很騷!
如下圖所示:
成功了!!然后就是改回原始入口點就可以了!
我們來比較下脫殼后與原始的沒有加密的so是那些不同!
如下圖:
只有兩個字節不一樣,那就是入口了,我們改回去后就能正常使用了!!
樣本及文檔下載
http://yunpan.cn/cVKThr9uAH2za (提取碼:dfb4)