文章目录
一、前言
二、Android移动端安全
1、APP 接口安全 未加密
2、APP 接口安全 SQL、XSS、越权
3、APK 应用日志窃取
4、APP高危权限
5、apk反编译
5.1 apk反编译 简介
5.2 apk反编译 工具
5.3 apk反编译 查看代码混淆
5.4 apk反编译 什么是代码混淆为什么要混淆/p>
5.5 apk反编译 查看代码加固
5.6 apk反编译 什么是代码加固为什么要加固/p>
5.7 apk反编译 结束语
6、 应用软件本身功能漏洞
三、结束语
一、前言
Android移动端APP应用安全 手机软件安全 Android APK软件安全 apk安全 apk反编译 应用日志窃取 apk漏洞 应用软件本身功能漏洞 高危权限泄密风险等 移动应用常规安全讲解。
二、Android移动端安全
1、APP 接口安全 未加密
一般的应用由Service和Client两端构成,Client这里指Android应用APK,Client和Service交互数据传输过程中数据是明文或加密数据。
如果Client与Service通信以明文方式传输会抓包分析,爬虫获取信息或接口调试恶意串改数据发包,也有尝试暴力登陆破解等
未加密危害列举:
1、爬虫,截取app应用中数据,如评论、价格、用户的其他信息等
2、串改,通过BurpSuitePro、Fiddler等转包软件获取数据,分析接口尝试串改发包
3、捕获,通过路由器 卡层面捕获用户请求信息或明文请求,可捕获关键信息
4、破解,属于串改即理解字段含义并不停尝试发包,捕获最快方式获取未加密明文数据
5、恶意,属上述2点中的,发送垃圾信息,脏数据,范围外的数据
2、APP 接口安全 SQL、XSS、越权
具体请移步,若需要更详细更深入学习专项请去专研
安全测试 (一) web常规安全漏洞问题介绍和防范说明,如:SQL注入攻击、XSS跨站点脚本攻击、JS注入、注释与异常信息泄露、跨站点请求伪造、路径遍历与强制浏览、越权访问类常见 络安全问题是什么Benjamin CSDN博客-CSDN博客
3、APK 应用日志窃取
应用日志可能会暴露调试信息,接口请求信息,解密数据或其他有信息,日志分析收集
adb命令过滤指定应用日志信息
1、$ adb shell ps -A # 获取进程pid
2、$ adb logcat|greo <pid> # 过滤pid日志
列举过滤微信应用日志示例
未捕获到有效信息,无聊的人已经去尝试其他app了
4、APP高危权限
使用高危权限可能面对隐私权限应用被下架的风险,窃取用户信息或泄密风险等
列举
1、安卓准许读取电话状态
风险描述:允许应用程序访问设备的手机功能。此权限允许应用程序确定电话 码和设备ID、呼叫是否处于活动状态以及通过呼叫连接的远程 码。2、安卓准许读取外部存储器
风险描述:允许应用读取共享存储的内容。3、安卓准许写入外部存储器
风险描述:允许应用程序写入共享存储的内容。
5、apk反编译
5.1 apk反编译 简介
xx工具介绍可以让您轻松将任何APK安装包进行反编译,替换应用程序界面上的任何文字和图片,并且通过代码级别的修改,实现汉化、破解、功能增强,甚至可以在任何的界面添加自定义的代码和功能。本软件还提供多渠道打包工具,无需源代码,直接通过APK安装包进行多渠道打包。本软件提供的反编译功能,仅供安卓开发爱好者对安装包进行反编译研究之用,严禁将反编译之后的安装包作为商业用途。如有违反,与本软件无关。
逆向反编译对方源码,获取配置信息或本地密钥等
5.2 apk反编译 工具
推荐JADX,兼容Windows、Mac打开即用方便快捷。
官 GitHub地址
5.3 apk反编译 查看代码混淆
操作步骤:
1、打包jadx
2、选择文件并选择打开
3、打开选项卡,红框部分支持可反编译的文件类型
4、选择以现在的app打开即可
混淆代码展示
娱乐大师部分检索示例
5.4 apk反编译 什么是代码混淆为什么要混淆/h3>
代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。代码混淆可以用于程序源代码,也可以用于程序编译而成的中间代码。执行代码混淆的程序被称作代码混淆器。已经存在许多种功能各异的代码混淆器。
将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字。比如改写成单个字母,或是简短的无意义字母组合,甚至改写成“__”这样的符 ,使得阅读的人无法根据名字猜测其用途。重写代码中的部分逻辑,将其变成功能上等价,但是更难理解的形式。比如将for循环改写成while循环,将循环改写成递归,精简中间变量,等等。打乱代码的格式。比如删除空格,将多行代码挤到一行中,或者将一行代码断成多行等等。
代码混淆器也会带来一些问题。主要的问题包括:
被混淆的代码难于理解,因此调试以及除错也变得困难起来。开发人员通常需要保留原始的未混淆的代码用于调试。对于支持反射的语言,代码混淆有可能与反射发生冲突。代码混淆并不能真正阻止反向工程,只能增大其难度。因此,对于对安全性要求很高的场合,仅仅使用代码混淆并不能保证源代码的安全。
5.5 apk反编译 查看代码加固
详情请移步本人历史博客 https://blog.csdn.net/qq_25305833/article/details/100579425
判断apk是否加固或混淆,Python + dex2jar-2.0实现方法_Benjamin CSDN博客-CSDN博客_apk是否加固
5.6 apk反编译 什么是代码加固为什么要加固/h3>
代码混淆仅提搞了代码的阅读难度。代码混淆并不能从根本上阻止反编译等。因为代码混淆仅仅提高了阅读难度,但并不能真正阻止反编译。因此,对于高安全要求的场景,代码混淆并不足够安全。
加固是多维度的安全防护方案,包括反破解、反逆向、防篡改等,可以防止应用被各类常见破解工具逆向,安全性要远大于单纯的代码混淆。
5.7 apk反编译 结束语
上述代码混淆和加固只是简单介绍,实际远不止眼前看到的这样……
行业关键词:
APK卡密破解
辅助软件破解
APK破解修改
APK脱壳
加注册
……
6、 应用软件本身功能漏洞
应用本身的安全的问题,从业务功能层面来说。
比如:
应用锁实际功能缺陷,
部分数据暴露给前端未数据过滤
……
三、结束语
你最累的时候,能累到什么程度是如何挺过去的/strong>
如果觉得文章写不错,那就点个赞,点个收藏吧。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!