安全测试(五)Android APK软件安全 APP应用安全 手机软件安全 apk安全 apk反编译 应用日志窃取 apk漏洞 应用软件本身功能漏洞 高危权限泄密风险等 移动应用常规安全讲解_apk非授权应用安装漏洞危害-程序员宅基地

技术标签: 安全  网站开发和网络安全  android  android studio  

文章目录

一、前言

二、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反编译 什么是代码混淆? 为什么要混淆?

       5.5 apk反编译 查看代码加固

       5.6 apk反编译 什么是代码加固? 为什么要加固?

       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 程序员宅基地-程序员宅基地

3、APK 应用日志窃取

        应用日志可能会暴露调试信息,接口请求信息,解密数据或其他有信息,日志分析收集

adb命令过滤指定应用日志信息

1、$ adb shell ps -A    # 获取进程pid

2、$ adb logcat|greo  <pid>    # 过滤pid日志

列举过滤微信应用日志示例


$ adb shell ps -A|grep com.tencent.mm
u0_a560       8517   689 16708652 476716 0                  0 S com.tencent.mm:appbrand0
u0_a560      14707   689 7673004 163788 0                   0 S com.tencent.mm:push
u0_a560      14779   689 33232408 616000 0                  0 S com.tencent.mm
u0_a560      15070   689 25636884 466820 0                  0 S com.tencent.mm:appbrand1


$ adb logcat|grep 14779
01-11 13:30:58.125 14779 14779 I LoadedApk: We unbound before receiving the connection,name:ComponentInfo{com.tencent.mm/com.tencent.mm.plugin.normsg.NormsgDataService}
01-11 13:30:58.174 14779 14779 I chatty  : uid=10560(com.tencent.mm) identical 9 lines

未捕获到有效信息,无聊的人已经去尝试其他app了 

4、APP高危权限

        使用高危权限可能面对隐私权限应用被下架的风险,窃取用户信息或泄密风险等

列举

1、安卓准许读取电话状态
风险描述:允许应用程序访问设备的手机功能。此权限允许应用程序确定电话号码和设备ID、呼叫是否处于活动状态以及通过呼叫连接的远程号码。

2、安卓准许读取外部存储器
风险描述:允许应用读取共享存储的内容。

3、安卓准许写入外部存储器
风险描述:允许应用程序写入共享存储的内容。

 5、apk反编译

        5.1 apk反编译 简介

        xx工具介绍可以让您轻松将任何APK安装包进行反编译,替换应用程序界面上的任何文字和图片,并且通过代码级别的修改,实现汉化、破解、功能增强,甚至可以在任何的界面添加自定义的代码和功能。本软件还提供多渠道打包工具,无需源代码,直接通过APK安装包进行多渠道打包。本软件提供的反编译功能,仅供安卓开发爱好者对安装包进行反编译研究之用,严禁将反编译之后的安装包作为商业用途。如有违反,与本软件无关。

        逆向反编译对方源码,获取配置信息或本地密钥等

       5.2 apk反编译 工具

        推荐JADX,兼容Windows、Mac打开即用方便快捷。

官网GitHub地址

https://github.com/skylot/jadx

        5.3 apk反编译 查看代码混淆

操作步骤:

1、打包jadx

2、选择文件并选择打开

3、打开选项卡,红框部分支持可反编译的文件类型

4、选择以现在的app打开即可

混淆代码展示

娱乐大师部分检索示例

        5.4 apk反编译 什么是代码混淆? 为什么要混淆?

        代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。代码混淆可以用于程序源代码,也可以用于程序编译而成的中间代码。执行代码混淆的程序被称作代码混淆器。已经存在许多种功能各异的代码混淆器。


        将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字。比如改写成单个字母,或是简短的无意义字母组合,甚至改写成“__”这样的符号,使得阅读的人无法根据名字猜测其用途。重写代码中的部分逻辑,将其变成功能上等价,但是更难理解的形式。比如将for循环改写成while循环,将循环改写成递归,精简中间变量,等等。打乱代码的格式。比如删除空格,将多行代码挤到一行中,或者将一行代码断成多行等等。

代码混淆器也会带来一些问题。主要的问题包括:


        被混淆的代码难于理解,因此调试以及除错也变得困难起来。开发人员通常需要保留原始的未混淆的代码用于调试。对于支持反射的语言,代码混淆有可能与反射发生冲突。代码混淆并不能真正阻止反向工程,只能增大其难度。因此,对于对安全性要求很高的场合,仅仅使用代码混淆并不能保证源代码的安全。

        5.5 apk反编译 查看代码加固

        详情请移步本人历史博客 https://blog.csdn.net/qq_25305833/article/details/100579425

        判断apk是否加固或混淆,Python + dex2jar-2.0实现方法_Benjamin 程序员宅基地-程序员宅基地_apk是否加固

        5.6 apk反编译 什么是代码加固? 为什么要加固?

        代码混淆仅提搞了代码的阅读难度。代码混淆并不能从根本上阻止反编译等。因为代码混淆仅仅提高了阅读难度,但并不能真正阻止反编译。因此,对于高安全要求的场景,代码混淆并不足够安全。

        加固是多维度的安全防护方案,包括反破解、反逆向、防篡改等,可以防止应用被各类常见破解工具逆向,安全性要远大于单纯的代码混淆。

        5.7 apk反编译 结束语

        上述代码混淆和加固只是简单介绍,实际远不止眼前看到的这样……

行业关键词:

APK卡密破解

辅助软件破解

APK破解修改

APK脱壳

加注册

……

6、 应用软件本身功能漏洞

        应用本身的安全的问题,从业务功能层面来说。

        比如:

                应用锁实际功能缺陷,

                部分数据暴露给前端未数据过滤

                ……


三、结束语

你最累的时候,能累到什么程度?你是如何挺过去的?


如果觉得文章写不错,那就点个赞,点个收藏吧。

可关注微信公众号,后期有推文

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_25305833/article/details/122153351

智能推荐

端口大全,集合-程序员宅基地

文章浏览阅读274次。0端口:无效端口,通常用于分析操作系统1端口:传输控制协议端口服务多路开关选择器2端口:管理实用程序3端口:压缩进程5端口:远程作业登录7端口:回显9端口:丢弃11端口:在线用户13端口:时间17端口:每日引用18端口:消息发送协议19端口:字符发生器20端口:FTP文件传输协议(默认数据口)21端口:FTP文件传输协议(控制)22端口:SSH远程登录协议23端口:telnet(终端仿真协议),*..._7798端口

miui系统精简工具(免root删除内置软件)-程序员宅基地

文章浏览阅读4.3w次,点赞16次,收藏47次。想知道该如何卸载小米手机中内置的软件吗?可以使用miui系统精简工具来进行,这是一款可以免root权限直接删除小米内置软件的电脑工具,并是由吾爱破解的大神进行制作分享的。同时通过该工具,用户只需要先准备好小米手机、win电脑、数据线,接着手机接入开发者模式,再连接电脑,然后只需要运行小编提供的该工具即可随意的帮助用户将小米自带的影音、悬浮球、小米钱包、内容服务、用户反馈、生活黄页、小米互传、智能生活等各种小米自带的系统软件进行卸载亲测,并就是是小爱同学都可以全面的进行卸载哦,十分强大,从而可以很好的满足不同_miui系统精简工具

centos6.x_centos7.x差异改进明细-程序员宅基地

文章浏览阅读106次。CentOS6.5与CentOS7.3差异和改进对比明细对比内容centos6.5centos7.3说明系统发行版本CentOS release 6.5 (Final)CentOS Linux release 7.3.1611 (Core) 内核版本2.6.32-431.el6.x86_643.10.0-514.el7.x86_64支持大的crashkernel大小;以..._centos7 比centos6 性能提升项

PyQt5标准对话框-程序员宅基地

文章浏览阅读67次。很全的Qt的标准对话框,包含QInputDialog、QColorDialog、QFontDialog、QMessageBox、QOpenFileDialog...全部是由官网的C++版本,转换成PyQt5版本。有些细节忽略了,因为实在不知怎么转换过来。捣鼓了一晚上,总算完成了,好累啊,不过很开心!效果图:完整代码: 1 # -*- ..._pyqt5 标准对话

大数据学习目录-程序员宅基地

文章浏览阅读125次。 推荐1、gitbook 这里可以找到优秀的文章及书籍2、about云 大数据论坛,网站上很多大数据资料 hadoop博文:1、Hadoop2.x集群安装配置笔记 初学搭建hadoop2、搭建hadoop2.6.0 HDFS HA及YARN HA 启动hadoopHA容灾机制3、Cloudera Manager(centos)安装详细介绍 使用CM搭建CHD版...

Visual Studio Code中设置HTML/HTML5模板_vscode设置html/html5模板csdn-程序员宅基地

文章浏览阅读8.4k次,点赞11次,收藏30次。找到左下角的设置 >> 用户代码片段或者 左上角 文件 >> 首选项 >> 用户代码在出现的搜索框中输入:html.json模板设置如下:{ // Place your snippets for html here. Each snippet is defined under a snippet name and has a prefix, body and // description. The prefix is what is use_vscode设置html/html5模板csdn

随便推点

《伟大是熬出来的》冯仑与年轻人闲话人生之一-程序员宅基地

文章浏览阅读746次。伟大是熬出来的  目录  前言  引言 时间熬成伟大:领导者要像狼一样坚忍   第一章 内圣外王——领导者的心态修炼  1. 天纵英才的自信心  2. 上天揽月的企图心  3. 誓不回头的决心  4. 宠辱不惊的平常心  5. 换位思考的同理心  6. 激情四射的热心  第二章 日清日高——领导者的高效能修炼  7. 积极主动,想到做到  8. 合理掌控自己的时间和生命  9. 制定目标,马..._当狼拖着受伤的右腿逃生时,右腿会成为前进的阻碍,它会毫不犹豫撕咬断自己的腿, 以

有源光缆AOC知识百科汇总-程序员宅基地

文章浏览阅读285次。在当今的大数据时代,人们对高速度和高带宽的需求越来越大,迫切希望有一种新型产品来作为高性能计算和数据中心的主要传输媒质,所以有源光缆(AOC)在这种环境下诞生了。有源光缆究竟是什么呢?应用在哪些领域,有什么优势呢?易天将为您解答!有源光缆(Active Optical Cables,简称AOC)是两端装有光收发器件的光纤线缆,主要构成部件分为光路和电路两部分。作为一种高性能计..._aoc 光缆

浏览器代理服务器自动配置脚本设置方法-程序员宅基地

文章浏览阅读2.2k次。在“桌面”上按快捷键“Ctrl+R”,调出“运行”窗口。接着,在“打开”后的输入框中输入“Gpedit.msc”。并按“确定”按钮。如下图 找到“用户配置”下的“Windows设置”下的“Internet Explorer 维护”的“连接”,双击选择“自动浏览器配置”。如下图 选择“自动启动配置”,并在下面的“自动代理URL”中填写相应的PAC文件地址。如下..._設置proxy腳本

Pycharm远程连接linux服务器(windows下远程修改服务器代码)-程序员宅基地

文章浏览阅读172次。Pycharm远程连接linux服务器(windows下远程修改服务器代码)缘由:之前一直是本地修改,上传到服务器,各种不爽,现在改用xshell,但是有时候还是不方便感觉,作为一名有理想的程序猿,不能总是靠手动来更新文件,经过一番查询,发现pycharm可以远程连接,轻松按下ctral+s,修改的文件就可以轻轻松松同步到服务器上。配..._windows pycharm 链接linux服务器

可同时支撑5~10个618大促的数据库做了哪些性能优化?-程序员宅基地

文章浏览阅读105次。“如果你有机会走进京东 618 作战指挥中心,看到数字不停变换的监控大屏和各个版块集中应战的京东技术人,你会惊讶地发现,从技术角度而言,我们度过的是一个近乎完美的,一切尽在掌握的 618,订单洪峰在经过千锤百炼的技术系统前被有条不紊地化解。”—— 京东集团 CTO 张晨《技术创造价值的几个层面》为了有条不紊的化解订单洪峰,每年京东 618 大促之前,都会对系统进行一些优化和测试,以保证订单系统、库...

小巧易用的分区工具——MiniTool Partition Wizard-程序员宅基地

文章浏览阅读6.8k次。小巧易用的分区工具——MiniTool Partition Wizard最近,有一个朋友向我提出一个要求:他的计算机C盘有10个G,但只用不到5个G的空间,D盘也是10个G,放的文件挺多,要爆棚了,能不能从C盘的空余空间移出3个G给D盘?答案是可以做到我们可以将此硬盘的数据全部移出,再对硬盘根据需要的大小重新分区及格式化。这样操作实际很麻烦。如果..._partition wizard

推荐文章

热门文章

相关标签