我是一名奋战在安全第一线的程序猿,爱好和平,爱好打包不平,Freedom Forever !

最近移动安全太火,火的我都忍不住玩了一把,最近几个月在研究各家的安全加固方案,大多dex加密、反调试等技术,玩着玩着就没了意思。

前段时间,突然发现有的企业客户端apk的加固方式发生了一些变化,勾起了我的兴趣,好东西不敢私藏,分享出来供大家把玩。这个apk文件中包含了一个classes.des文件,如下所示。

请出神器JEB,反编译后的程序结构如下所示。

怎么什么都能看到?没道理啊,明明之前得知这个应用是加固了的,经常看到的“Proxy”,“Wrapper”等关键词呢(普及一下,安全加固的开发人员经常这样命名加固程序逻辑)?仔细又看了一眼,猛地发现“secneo.apkwrapper”,打开一看,醍醐灌顶,原来在这。

下面我们分析一下加固效果,怎么想分析什么就分析什么呢?

在下花了一下午时间从Application分析到Activity再到各种逻辑代码,终于发现原来保护的是指定package下的“网络通信”和“数据库操作”模块。

从一名移动安全从业人员的角度讲,我们分析一个应用一般主要分析的Activity等四大组件的逻辑功能,从而找到应用的安全弱点。而数据操作部分在四大组件被分析的情况下再保护起来还能起到多大的保护效果有待考证。

与我的“老师”(也是行业中的大牛了)就该问题仔细讨论了一下,发现这家公司这么做的原因可能是:

大多数移动安全厂商其实的加固方案是整体dex加密技术,定制版加固与免费版加固方案上没有区别,都是可执行文件的加密保护。

这种应用加固方案在Android  Art模式和Android5.0上兼容性不好,只能采用“预编译”的方式来兼容,但这种预编译的方式会带来严重的程序效率问题(设想一下应用一执行到受保护的程序逻辑的时候要先编译一下)。而secneo(其实就是棍棍加固)采用保护部分逻辑的方式来躲避这种效率低下的影响(需要预编译的代码块变少)。带来的不良影响不言而喻:

(1)应用只能受到部分保护,仍然可以被逆向分析,程序敏感逻辑被分析,即使不能“二次打包”,也可以轻易的分析程序弱点。

(2)应用在运行到被加固的功能模块需要经过编译过程,程序运行效率大大变低。应用中关于数据的操作响应效率大大受到了影响。

形象化的加固方案思路如下:

(1)   整体dex加固(笑脸)

(2)   定制版dex加固(哭脸)

终于分析完了,总结一下。我觉得这种方式的保护效果有限,有糊弄客户的嫌疑。Android 系统在迭代,安全加固的方案也要迭代,而不是逃避。

从事安全研究多年,始终觉得移动安全也一样,要从应用的方方面面着手,包括系统层和驱动层。

技术小文一篇,希望大家一起努力,共同迎来移动安全从业人员的春天!

梆梆安全加固企业版分析相关推荐

  1. 梆梆企业版加固技术之防篡改剖析

    (本文仅限于技术讨论,不得用于非法途径,造成不良后果,与作者无关) 本篇主要介绍梆梆安全加固防篡改的原理和方法.选择梆梆,是因为其在防篡改方面是比较突出的.如果后续有时间会陆续将梆梆企业版使用的加固技 ...

  2. 梆梆加固之防内存dump分析

    声明 本文仅限于技术讨论,不得用于非法途径,后果自负. 参考资料 https://bbs.pediy.com/thread-206293.htm https://github.com/parkerpe ...

  3. 梆梆加固的病毒分析-破解篇

    一.文件信息 文件名:tx.qq898507339.bzy9-1.apk MD5:77603118E1B061374DDB8A4D1EA70CB2 SHA1:A85B9387DD598E64548F6 ...

  4. 这是一片求助帖——关于梆梆加固企业版的托克修复问题

    经过一番百度以及对照AndroidManifest.xml中的特征得知本软件是由梆梆加固的. 尝试网上的教程使用:DexExtractor dump出DEX,结果失败. 不是到是我AS配置有问题还是别 ...

  5. android内存dump分析,[原创]梆梆加固之防内存dump分析

     声明(打字好累) 本文仅限于技术讨论,不得用于非法途径,后果自负.  参考资料https://bbs.pediy.com/thread-206293.htm https://github.com ...

  6. 利用梆梆加固逻辑漏洞取巧脱壳

    首先要道个歉,之前要发的进程注入,开发hook框架.插件化等技术,因为原公司产品还在使用,暂时是不能开源了,还是食言了. 抽空看了几家加固的应用,做了个通用脱壳机(轻量化,只需要进程注入埋点,全Jav ...

  7. Android逆向案例:干掉梆梆加固免费版的反调试检测

    目标和现象 分析目标:某行网银手机客户端 分析壳类型: 使用[d2j-dex2jar]反编译后发现关键代码缺失,因为 AndroidManifest.xml 中的绝大部分activity和server ...

  8. Andorid APK反逆向解决方案---梆梆加固原理探寻

    本文章由Jack_Jia编写,转载请注明出处.   文章链接: http://blog.csdn.net/jiazhijun/article/details/8892635 作者:Jack_Jia   ...

  9. Apk脱壳圣战之---脱掉“梆梆加固”的保护壳

    一.前言 现如今Android用户的安全意识不是很强,又有一些恶意开发者利用应用的名字吸引眼球,包装一个恶意锁机收费的应用,在用户被骗的安装应用之后,立马手机锁机,需要付费方可解锁.这样的恶意软件是非 ...

最新文章

  1. Hadoop集群的安全模式
  2. Java中return的用法
  3. 每日一题(33)——用两个栈实现一个队列的功能?要求给出算法和思路
  4. nikita popov php,PHP中对performance的考虑点
  5. JAVA maven Spring 开发 webservice 步骤
  6. 怎样成为一名A“.NET研究”ndroid开发者
  7. 九州云黄舒泉当选StarlingX 首届TSC
  8. java集合输入存储_Java练习IO流使用Properties集合存储数据并...
  9. javascript创建面包屑路径
  10. 三维重建-摄像机模型+摄像机标定(上)
  11. ECharts制作报表模板
  12. 用html写QQ邮箱注册页面,制作简易QQ邮箱登录页面
  13. XXX团队邮件工作制与日常工作原则V1.0
  14. 招聘-中软国际外派中国移动(广州)
  15. Java并发编程:volatile关键字解析 by 海子
  16. -- 31、查询1990年出生的学生名单
  17. 单片机课程设计——基于51单片机温湿度检测系统的设计与实现
  18. B端页面——详细表格设计流程
  19. 标签语义化以及使用好处
  20. 【新手教程】51Sim-One Cloud 2.0如何构建一个V2X案例

热门文章

  1. 如何从无到有设计一款字体
  2. 从内积、外积和叉乘到多维空间的理解
  3. 【C语言补漏】数据类型
  4. 动态给div背景图片赋值
  5. 千兆网口 Freescale ETSEC + Marvell 88E1111 uboot Linux 驱动分析
  6. 自动脚本以及打包,将写好的脚本打包成exe可执行文件
  7. 如何在RobotStudio搭建基本工作站
  8. 笔记本_cpu_突然性能下降_cpu锁频_cpu降频_重装无用_解锁办法
  9. flash p2p流媒体服务器系统软件,Flash P2P流媒体服务器系统
  10. 一个屌丝程序猿的人生(一)