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

3.安卓逆向2-安卓文件目录

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

内容参考于:图灵Python学院

上一个内容:2.安卓逆向2-adb指令

首先使用adb连接到手机,如下图使用adb命令列出手机的目录,下图红框的是一些系统文件,系统加载的时候可能会引用它们,我们不需要关注它们

需要关注的:/system、/data、/sdcard、/proc

/system目录,这个目录需要root权限才能进入,就是手机需要root

作用:存储安卓操作系统的核心文件,包括系统应用、库文件和配置文件

子目录:

/system/app:系统预装应用(如设置、浏览器)的APK文件

/system/bin:系统可执行文件(Linux命令,如ls、cat)

/system/lib:系统库文件(如.so文件)

/system/etc:配置文件(如网络、权限设置)

/system/framework:安卓框架文件(如framework.jar)

进入system目录

进入/system/app目录,这个目录是系统app,相机、电话、短信、设置之类的app都在这里

随便进入一个目录,可以看到它的apk文件,如果想要删除系统app,直接把目录里的文件删除就行了

然后再进入/system/bin目录,如下图去bin目录的指令

它里面是一些可执行文件

学过Linux的看到这个目录里的文件名字就会很熟悉

su命令也在bin目录下,这也是为什么可以切换root用户权限,手机root完之后它就会有这个目录,app加检测是否root的功能就可以扫描 /system/bin目录 有没有su文件,如果有su文件就说嘛以root,但是这个检测有缺点,把su改一个名,这检测就会失效

/system/lib目录,如下图,它里面是一些so文件,安卓系统开发的时候就有了

其它的不写了

/data目录

作用:自己安卓的app,都会放在data目录里

子目录:

/data/app:自己安装的app

/data/data:应用私有数据目录,每个app有独立子目录

/data/user:用户数据

/data/dalvik-cache:Dalvik/ART虚拟机的缓存

权限:需要root权限访问,非root用户和应用只能访问自己的数据

用途:保存用户设置、app缓存和个人信息

/data/app目录,下图红框就是自己安装的app文件夹了,文件夹名是app的包名加base64编码,

进入某个app,可以看到base.apk、lib(app的so文件)

进入lib目录,可以看到它里面是一个叫arm的文件夹,这个名字是以当前系统架构来的,当前是arm架构,一般手机是arm架构,模拟器可能会是x86架构

然后进入arm里就可以看到app的so文件了,如想对某appso文件做逆向,可以来到这个目录(/data/app/app文件夹/lib/arm)

/sdcard目录,它的权限比较高(没root也可以正常使用,可读可写),以后会经常使用

作用:用户可访问的内部存储,通常是虚拟化的外部存储

子目录:

/sdcard/DCIM:相机拍摄的照片和视频

/sdcard/Download:使用浏览器下载的文件存放位置

/sdcard/Music:音乐文件

/sdcard/Pictures:图片文件

/sdcard/Movies:视频文件

/sdcard/Android:应用相关数据(如缓存、外部存储文件)

权限:用户可读可写,但安卓10及以上引入了分区存储(Scoped Storage),限制了直接访问

用途:用户日常文件存储,类似PC的 我的文档

/mnt或/storage目录

作用:挂载点,用于管理存储设备(如SD卡、U盘)

子目录:

/mnt/sdcard:传统外部SD卡挂载点(旧设备)

/storage/emulated/0:模拟的内部存储(通常链接到/sdcard)

/storage/XXX-XXX:真是SD卡或USB设备(xxx-xxxx是卷id)

权限:根据设备和安卓版本变化,部分需要特殊权限

用途:管理外部存储介质(设备)

/proc目录

作用:虚拟文件系统,提供运行时系统信息(如 cpu、内存)

子目录:

/proc/cpuinfo:cpu信息

/proc/meminfo:内存使用情况

权限:只读,部分文件需root查看

用途:调试和调试系统状态

/dev目录

作用:设备文件目录,存储硬件设备对应的文件(给手机外接的设备,比如摄像头、传感器)

权限:系统控制,用户无权访问

用途:系统与硬件交互的基础


img

http://www.xdnf.cn/news/523657.html

相关文章:

  • WPF点击按钮弹出一个窗口
  • 深入理解 Hadoop 核心组件 Yarn:架构、配置与实战
  • 物联网简介:万物互联的未来图景
  • Eclipse Java 开发调优:如何让 Eclipse 运行更快?
  • Spring Cloud Seata 深度解析:原理与架构设计
  • 甘特图工具怎么选?免费/付费项目管理工具对比测评(2025最新版)
  • java中如何优雅处理多租户系统的查询?
  • Hexo的Next主题的Config文件内方便修改的参数(Chat-Gpt)
  • 多线程进阶
  • java每日精进 5.19【Excel 导入导出】
  • 使用Python将 Excel 中的图表、形状和其他元素导出为图片
  • YouTube视频字幕转成文章算重复内容吗?
  • FD+Mysql的Insert时的字段赋值乱码问题
  • ffmpeg 把一个视频复制3次
  • java配置webSocket、前端使用uniapp连接
  • 【git config --global alias | Git分支操作效率提升实践指南】
  • 开源音视频转文字工具:基于 Vosk 和 Whisper 的多语言语音识别项目
  • 数据分析与应用---数据可视化基础
  • 精益数据分析(70/126):MVP迭代中的数据驱动决策与功能取舍
  • 【three】给立方体的每个面加载不同贴图
  • 【工具】ncdu工具安装与使用指南:高效管理Linux磁盘空间
  • javaScript学习第三章(流程控制小练习)
  • 华为ODgolang后端一面面经
  • uniapp自用辅助类小记
  • Fiddler无法抓包的问题分析
  • 全新的开源监控工具CheckCle
  • 【D1,2】 贪心算法刷题
  • kotlin Android AccessibilityService 无障碍入门
  • 【电动汽车充电系统核心技术全解:从can通讯高压架构到800V超充未来】
  • 《黑马前端ajax+node.js+webpack+git教程》(笔记)——node.js教程+webpack教程(nodejs教程)