查看: 496415|回复: 1971

360加固静态脱壳

[复制链接]
发表于 2016-2-18 15:02:44 | 显示全部楼层 |阅读模式
本文章转自看雪@UndeadFu

执行脚本360,可以直接获得classes_final.dex,即还原的dex文件。
代码内部逻辑为:
key_short->key_long->class_begin->class_media->class_almost->class_final
其中每个过程的功能如下:
1.从当前classes.dex文件中,根据数据固有的特征,获得加密后的classes.dex文件保存在当前文件中的长度和文件中保存的key的长度,根据前面获得的key的长度获得一串字符。对数据进行简单的处理,可以得到一个长度为0x10的有效数据作为原始的key。
2.新建一个长度为0x100的字符数组,用0-0xFF按顺序填充。然后利用key,按照一定算法将该数组打乱,作为解密数据直接使用的key值。
3.从当前classes.dex文件中,根据数据特征,获得经过加密的原classes.dex数据。
4.将第3步获得的数据与第2步获得的key相互作用,得到初始解密的classes.dex数据。
5.第4步获得的初始解密的classes.dex数据是被压缩过的。将数据进行解压操作,会获得一段接近原classes.dex的数据。
6.将第5步获得的数据的前0x70个字节与一个特殊的数据进行异或操作,将得到被还原的classes.dex文件。

详细过程:
1.从当前classes.dex文件中寻找key。
在文件中寻找一段”9RRTRRRB ……的字符串。该字符串前面8个字节处记录了原classes.dex保存在当前文件中的信息长度,前4个字节处记录了保存在文件中的key_1的长度。从这段字符串的起始位置开始,根据刚获得的key_1的长度读取key_1。
对获得的字符串进行处理。将获得的key_1作为一个字符数组,每个值与自身下标进行异或处理后重新赋值。从第二个元素开始,每个元素与前一个元素进行异或处理后重新赋值。得到一个全新的数组。
取该数组的后16位,按照其下标除16的余数排序后存入一个长度为0x10的数组中。得到全新的key_2。



2.根据获得的key_2将一个有0-0xFF按顺序组成的数组buf_1打乱,组成新的key_3。
打乱方法:key_2复制9份,组成长度为0x100的buf_2;
          取一个临时变量tem = 0;
          做循环(i从0递增到0xFF):         
                 tem = (tem + buf_2 + buf_1)& 0xFF;
                 交换buf_1和buf_1[tem]的数值;
3.同样寻找第一步中的特征字符串,在key_1后8个字节即原classes.dex文件加密后的数据code_1。读取长度在这段数据前4个字节处。可以得到完整的加密文件。
4.将key_3与code_1按顺序进行异或操作。在key_3结束后再从头开始,一直循环到整个code_1结束。获得code_2。(对应文件classes)
5.获得的code_2是一段被压缩过的数据。进行解密操作,可以得到接近原classes.dex文件的数据,只有前0x70个字节与原文件不同。


6.将最后获得的数据的前0x70个字节与一个数字进行异或即可。该数据可以由第一个字节与’d’异或得到。

代码请到看雪自行下载:
游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

发表于 2016-2-18 21:23:50 | 显示全部楼层
本帖最后由 青青子衿、 于 2016-3-26 21:39 编辑

666,前排支持
回复 支持 反对

使用道具 举报

发表于 2016-2-18 23:47:47 | 显示全部楼层
看看什么代码?是安卓的吧?
回复 支持 反对

使用道具 举报

发表于 2016-2-19 01:49:39 | 显示全部楼层
支持中国红客联盟(ihonker.org)
回复 支持 反对

使用道具 举报

发表于 2016-2-19 07:34:33 | 显示全部楼层
支持中国红客联盟(ihonker.org)
回复 支持 反对

使用道具 举报

发表于 2016-2-19 11:04:56 | 显示全部楼层
谢谢楼主的分享。
回复 支持 反对

使用道具 举报

发表于 2016-2-19 13:21:43 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2016-2-20 01:56:10 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2016-2-20 05:33:21 | 显示全部楼层
支持,看起来不错呢!
回复 支持 反对

使用道具 举报

发表于 2016-2-20 10:17:19 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

旗下站点

邮箱系统

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2025-3-7 04:32 , Processed in 0.022997 second(s), 15 queries , Gzip On, MemCache On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部