当前位置: 首页 > news >正文

移动安全Android——客户端静态安全

一、反编译保护

测试工具

Jadx

GitHub - skylot/jadx: Dex to Java decompiler

PKID

[下载]PKID-APP查壳工具-Android安全-看雪-安全社区|安全招聘|kanxue.com

测试流程

(1)通过Jadx对客户端APK文件进行反编译,观察是否进行代码混淆

(2)使用PKID查看APK是否已经进行加固

二、安装包签名

测试流程

(1)使用Jadx反编译工具查看客户端签名状态,观察红框部分是否为专用签名

三、应用完整性校验

测试工具

apktool

Apktool | Apktool

测试流程

(1)将需要测试的APK文件放到apktool目录下

(2)通过apktool进行反编译,命令执行完成后会在当前目录下生成反编译后的文件夹

java -jar apktool_2.11.1.jar d APK包名
java -jar apktool_2.11.1.jar d xxxxxxxxx.apk

(3)进入反编译后的文件夹,在AndroidManifest.xml文件中检索HTTP,修改任意一个URL的值为www.baidu.com

(4)回到apktool目录下执行命令重新打包修改过的APK文件

java -jar apktool_2.11.1.jar b apk文件夹 -o 将要生成的apk文件名称
java -jar apktool_2.11.1.jar b xxxxxxxxxxx -o xxxxxxxxxxx1.apk

(5)若出现如下报错,删除文件夹下的public.xml文件即可

(6)对重新打包编译的APK文件进行签名

java -jar signapk.jar testkey.x509.pem testkey.pk8 原apk文件名 新apk文件名
java -jar signapk.jar testkey.x509.pem testkey.pk8 xxxxxxxxxx1.apk xxxxxxxxxx2.apk

(7)手机安装并运行重新打包的修改过的APP,如果出现闪退,卡第一屏等无法使用现象则说明应用存在自检校验,处于安全状态。如果能正常运行修改后的APP,则APP应用不满足完整性校验,存在风险。

四、组件导出安全

测试工具

ADB

Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Mac版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Linux版本:https://dl.google.com/android/repository/platform-tools-latest-linux.zip

        adb安装目录下启动CMD窗口,执行adb version查看是否安装成功

drozer安装

GitHub - ReversecLabs/drozer at 3.1.0

(1)下载Github上的项目文件

(2)在drozer-3.1.0-py3-none-any.whl安装目录下启动CMD窗口,执行下面命令会生成三个exe文件,生成的文件并不会出现在当前目录下,需要到C盘python3目录下的scripts文件夹中找到,将其移回drozer文件夹下。

pip install drozer-3.1.0-py3-none-any.whl

drozer-agent安装

Release drozer-agent 3.1.0 · WithSecureLabs/drozer-agent · GitHub

        手机安装下面APK应用

测试流程

(1)手机USB接入电脑,进入开发者模式,打开USB调试模式

 设置——>关于手机/关于本机——>版本信息——>点击版本号6次即可进入开发者模式设置——>开发者选项——>下滑,开启USB调试

(2)adb检查设备连接情况

(3)adb开启监听端口

adb forward tcp:31415 tcp:31415

(4)手机打开drozer-agent监听

(5)Drozer文件夹下开启drozer控制台

drozer console connect

(6)手机运行待测APP后在adb执行以下命令,找到待测APP的包名

adb shell dumpsys activity top|findstr ACTIVITY

(7)Drozer执行命令进行组件导出安全检查,结合AI与网上教程进行可导出组件的调用测试

#查看可导出组件
run app.package.attacksurface 待测APP包名
run app.package.attacksurface 待测APP包名
run app.provider.info -a 待测APP包名
run app.activity.info -a 待测APP包名
run app.service.info -a 待测APP包名
run app.broadcast.info -a 待测APP包名

相关文章:

  • 基于定制开发开源AI智能名片S2B2C商城小程序的大零售渗透策略研究
  • docker部署ELK,ES开启安全认证
  • Linux 1.0.4
  • Centos7.x内网环境Jenkins前端打包环境配置
  • 零知开源——STM32F407VET6驱动Flappy Bird游戏教程
  • MES管理系统:Java+Vue,含源码与文档,实现生产过程实时监控、调度与优化,提升制造企业效能
  • 解析楼宇自控系统:分布式结构的核心特点与优势展现
  • 软件测试|FIT故障注入测试工具——ISO 26262合规下的智能汽车安全验证引擎
  • 企业级安全实践:SSL/TLS 加密与权限管理(二)
  • 企业级安全实践:SSL/TLS 加密与权限管理(一)
  • Linux详谈进程地址空间
  • 云服务器如何自动更新系统并保持安全?
  • 大厂前端研发岗位PWA面试题及解析
  • 基于分布式状态机的集装箱智能道口软件架构方法
  • 破解高原运维难题:分布式光伏智能监控系统的应用研究
  • Redisson学习专栏(二):核心功能深入学习(分布式锁,分布式集合,原子操作与计数器,事件与监听)
  • AsyncIOScheduler与BackgroundScheduler的线程模型对比
  • cursor rules设置:让cursor按执行步骤处理(分析需求和上下文、方案对比、确定方案、执行、总结)
  • CTFshow web3
  • python笔面试题汇总
  • wordpress底部导航插件/佳木斯seo
  • 海南在线人才网招聘官网/赣州seo外包
  • 做外贸有哪些免费的网站有哪些/网络营销推广外包平台
  • 动态网站的建设及综合设计/个人能接广告联盟吗
  • php做网站 价格/软文推广的100个范例
  • 邯郸网站建设包括哪些/直销的八大课程