Juana111 发表于 2024-8-30 17:09

Android环境-MacBook环境搭建

本帖最后由 Juana111 于 2024-8-30 17:13 编辑

安装python
直接使用mac自带的,需要配置环境,使用的是zsh,尝试的时候需要将自带python环境写入在etc/zshrc文件中,才能启动python3【很奇怪】,否则会报一堆zsh:command not found的问题。
安装Android studio
官网下载,在配置虚拟机时,注意要使用可以使用开发者模式的镜像或者模块,网上的说是不要使用带Google play的,使用不了一点开发者模式,附上一张使用的虚拟机的配置图片
这样就可以在安装好调用adb调试了,注意到调试的时候要使用su命令进入管理员模式,否则访问文件会爆出没有权限的情况。使用了supersu和magisk之后发现还是使用虚拟机本身的开发者模式来进行管理员模式的启用
安装Frida
这里先是使用python安装了一个系统的frida,这里直接使用的是系统自带的python3.9的pip3
pip3 install frida
pip3 install frida-tools
安装好了之后还要在adb进行push,下载正确的frida-server,官网:https://github.com/frida/frida/releases。 要向下翻到frida-server,进入adb调试模式后查看android的架构是arm64-v8a,所以下载frida-server-16.4.10-android-arm64.xz,版本要与系统安装的frida一致(这里其实一开始没搞明白两者之间的关系,看大神的总结:https://www.52pojie.cn/thread-1823118-1-1.html)
getprop ro.product.cpu.abi
arm64-v8a
下载错误就会报错:./frida-server: syntax error: unexpected '('
adb push frida-server-16.4.10-android-arm64 /data/local/tmp
##要有data是一个文件夹,前面一定要有/符号
##错误解决就是版本太高了,需要使用更低的python和frida,本机的python3.9卸载不了,所以使用虚拟机来安装python3.7和frida
安装conda配置python3.7环境
笔者推荐直接使用官网的软件一键式安装,不太熟brew的安装法,环境打入貌似有些问题,输入conda命令会出现not found的情况。
直接使用conda会发现现有的包中不存在3.7的版本查看的命令创建一个名为py37的环境,指定Python版本是3.7
conda create --name py37 python=3.7

查看当前拥有的所有的环境
conda info -e

环境切换,切换到名为py37的环境
source activate py37
conda activate YourEnvs (第一个命令无效时使用)

删除一个名为py37的环境
conda remove --name py37 --all

安装python包
conda install 包名
conda install -n 环境名 包名
如果不用-n指定环境名称,则被安装在当前活跃环境
也可以通过-c指定通过某个channel安装

查看当前环境下已安装的包
conda list

查看某个指定环境的已安装包
conda list -n 环境名

查找包信息
conda search 包名

更新package
conda update -n 环境名 包名

删除package
conda remove -n 环境名 包名

更新conda,保持conda最新
conda update conda

更新anaconda
conda update anaconda

退出当前base环境
conda deactivate
接着上面的问题,查看了文章是曲线救国的一招:先创建了一个空环境,在空环境中进行python的安装
#创建空环境 名字叫py37
conda create -n py37
#开启该空环境
conda activate py37
#修改配置
conda config --env --set subdir osx-64
#安装python
conda install python=3.7
#验证一下
python -V
conda deactivate
conda info -e
笔者本机操作参照
juana@deAir ~ % conda create -n py37
Channels:
- defaults
- conda-forge
Platform: osx-arm64
Collecting package metadata (repodata.json): done
Solving environment: done

## Package Plan ##

environment location: /opt/anaconda3/envs/py37



Proceed (/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#   $ conda activate py37
#
# To deactivate an active environment, use
#
#   $ conda deactivate

juana@deAir ~ % conda activate py37
(py37) juana@deAir ~ % conda config --env --set subdir osx-64
(py37) juana@deAir ~ % conda install python=3.7
Channels:
- defaults
- conda-forge
Platform: osx-64
Collecting package metadata (repodata.json): /
done
Solving environment: done

## Package Plan ##

environment location: /opt/anaconda3/envs/py37

added / updated specs:
    - python=3.7


The following packages will be downloaded:

    package                  |            build
    ---------------------------|-----------------
    ca-certificates-2024.7.2   |       hecd8cb5_0         128 KB
    certifi-2022.12.7          |   py37hecd8cb5_0         151 KB
    libffi-3.4.4               |       hecd8cb5_1         129 KB
    ncurses-6.4                |       hcec6c5f_0      1018 KB
    openssl-1.1.1w             |       hca72f7f_0         2.8 MB
    pip-22.3.1               |   py37hecd8cb5_0         2.7 MB
    python-3.7.16            |       h218abb5_0      23.5 MB
    readline-8.2               |       hca72f7f_0         328 KB
    setuptools-65.6.3          |   py37hecd8cb5_0         1.1 MB
    sqlite-3.45.3            |       h6c40b1e_0         1.2 MB
    tk-8.6.14                  |       h4d00af3_0         3.4 MB
    wheel-0.38.4               |   py37hecd8cb5_0          65 KB
    xz-5.4.6                   |       h6c40b1e_1         371 KB
    zlib-1.2.13                |       h4b97444_1         102 KB
    ------------------------------------------------------------
                                           Total:      37.0 MB

The following NEW packages will be INSTALLED:

ca-certificates    pkgs/main/osx-64::ca-certificates-2024.7.2-hecd8cb5_0
certifi            pkgs/main/osx-64::certifi-2022.12.7-py37hecd8cb5_0
libffi             pkgs/main/osx-64::libffi-3.4.4-hecd8cb5_1
ncurses            pkgs/main/osx-64::ncurses-6.4-hcec6c5f_0
openssl            pkgs/main/osx-64::openssl-1.1.1w-hca72f7f_0
pip                pkgs/main/osx-64::pip-22.3.1-py37hecd8cb5_0
python             pkgs/main/osx-64::python-3.7.16-h218abb5_0
readline         pkgs/main/osx-64::readline-8.2-hca72f7f_0
setuptools         pkgs/main/osx-64::setuptools-65.6.3-py37hecd8cb5_0
sqlite             pkgs/main/osx-64::sqlite-3.45.3-h6c40b1e_0
tk               pkgs/main/osx-64::tk-8.6.14-h4d00af3_0
wheel            pkgs/main/osx-64::wheel-0.38.4-py37hecd8cb5_0
xz               pkgs/main/osx-64::xz-5.4.6-h6c40b1e_1
zlib               pkgs/main/osx-64::zlib-1.2.13-h4b97444_1


Proceed (/n)?

Downloading and Extracting Packages:
                                                                              
Preparing transaction: done                                                   
Verifying transaction: done                                                   
Executing transaction: done                                                   
(py37) juana@deAir ~ % python -V
Python 3.7.16
(py37) juana@deAir ~ % conda deactivate
juana@deAir ~ % conda info -e
# conda environments:
#
base                     /opt/anaconda3
py37                     /opt/anaconda3/envs/py37
安装objection
直接使用pip来安装,这里需要先安装好系统的frida之后再查看与frida版本相近的版本的objection,否则会出现版本太高的一系列问题。使用的安装方法和上面一样,区别在使用的是虚拟机python3.7的环境,使用命令pip install frida==12.8.0
这里使用了python3.7的conda虚拟机来安装,系统中的python版本太高了,发现pip与pip3分开命名,分别指代的是python3.7和python3.9,安装命令
pip install objection==1.8.4
启动成功是这样的。

安装好之后启动流程:

[*]使用adb的root模式进入手机的shell,
[*]启动手机中的frida-server【官网下载要与电脑系统里的frida版本一致】接收电脑发送的objection注入请求,这里使用的是usb连接的方式,使用如下命令,查看手机中已经安装的包的名字。frida-ps -U
[*]这里使用的是com.android.settings这个包做的测试。objection注入命令如下:
objection -g com.android.settings explore

好久没更新了,记录一下最近的成果【?】,第一次使用mac的pc端设备【?】,尝试了多次多个版本的软件,这篇安装相当于是速通版。有些用Windows的习惯用在这个设备上懵懵的,接下来继续保持之前的更新速度。。好菜,有误的地方请大佬们指正qwq~。

tianshenyonghen 发表于 2024-8-31 08:45

本帖最后由 tianshenyonghen 于 2024-8-31 08:50 编辑

“配置python环境,需要将自带python环境写入在etc/zshrc文件中”,可以参考:https://blog.csdn.net/yu1014745867/article/details/121969351
应该和前面老哥说的是一个道理,即bash和zsh是两个东西,虽然你可以使用bash,但是实际mac绑定的是zsh,你需要把文件链接绑定在zsh目录下,或者添加bash目录到zsh中,否则你在bash下添加的目录重启后会失效
例如:我在mac下配置Qt5.9.5环境:
设备:Mac miniM2芯片    系统:Sonoma14.5   

1.终端中输入:sudo vim ~/.zshrc然后输入开机密码进入.zshrc文件的编辑界面

2.进入编辑界面后,英文模式下点击键盘上的“i”键进入:编辑模式(此时左下角会提示:-- INSERT --)

3.添加环境变量的格式为:export PATH=$PATH:/文件目录/;以Qt为例:
export PATH=$PATH:/Users/ts/Qt5.9.3/5.9.3/clang_64/bin
(需要注意:/Users/qs/是你实际安装的路径,需要添加的是:Qt5.9.3/5.9.3/clang_64/bin)(如果是默认安装文件夹路径:访达 - 前往 - 个人:目录下会有一个Qt5.9.3)

4.添加完成后,英文模式下点击键盘上的“Esc”键进入:命令模式(此时左下角的-- INSERT --会消失),在该模式下先点击键盘上的冒号“:”,然后输入“wq”保存退出

5.先关闭再打开终端,输入:qmake --version如果显示以下两句即为Qt环境变量配置成功:
QMake version 3.1
Using Qt version 5.9.3 in /Users/qs/Qt5.9.3/5.9.3/clang_64/lib

6.如果还不放心,在终端中输入:echo $PATH如果显示中出现Qt路径即为Qt环境变量配置成功:
xxxx/bin:/Users/ts/Qt5.9.3/5.9.3/clang_64/bin

不负韶华 发表于 2024-8-30 21:31

我没用过mac, 我用的ubuntu, 自己装的zsh, linux自带的是bash, 在profile写入环境变量后必须要在zsh中在写,因为是两套终端环境,很正常的这是,不奇怪

youzeng 发表于 2024-8-30 17:34

感觉挺实用的

zhengduimen 发表于 2024-8-30 17:54

{:1_924:} 没看懂 大佬 这是弄啥的

rzdezhu 发表于 2024-8-30 18:34

好硬核,支持一个

bj9ye666 发表于 2024-8-30 18:51

学习了Python大佬致敬。我试一试回去

gzhdssj 发表于 2024-8-30 20:03

学习学习{:1_893:}

co2qy 发表于 2024-8-30 20:36

谢谢lz学到了

lgslegend 发表于 2024-8-30 21:20

学习学习

xixicoco 发表于 2024-8-31 00:55

不错的mac指导
页: [1] 2 3
查看完整版本: Android环境-MacBook环境搭建