砸壳

在Load Commands文件夹中有LC_ENCRYPTION_INFO字段Crypt ID非零的需要砸壳

otool -l app | grep crypt (第二种方式查看是否加密crpytid=0:砸壳,可以逆向)

工具 

Clutch 静态砸壳

dumpdecrypted 动态砸壳

bfinject-master

Clutch

Clutch -i(查看信息)

Clutch -d 序列标示(砸壳)

 1.github下载Clutch(是一个命令行工具)

2.scp -P 12345 Clutch-2.0.4 root@localhost:/usr/bin (拷贝到此目录下)

2.1 cd /usr/bin/

3.mv Clutch-2.0.4 Clutch (重命名)

4.chmod +x Clutch (可执行权限)

 

查看是否加壳

otool -l mac-o(要查看的app的mac-o) | grep crypt(筛选crypt字段)

 

app在真机下的路径

mobile/Documents/Dumped/

cycript

 

1.下载dumpdecrypted-master

2.编译 cd 到目录  cmd执行make

3.生成dumpdecrypted.dylib,拷贝到手机根目录

scp -P 12345 dumpdecrypted.dylib root@localhost:~/

cd ~ (进入到根目录)

ps -A (查看进程路径)

 

依附framework到微信

DYLD_INSERT_LIBRARIES=mm.framewrok/mm(自己到库) /var///WeChart(进程路径)

砸壳

DYLD_INSERT_LIBRARIES=dumpdecrypted.dylib /var////WeChart.app/WeChat

拷贝手机生成的文件到电脑桌面

cd ~/Desktop

scp -p 12345 root@localhost:~/WeChat.decrypted ~/Desktop

查看是否加壳字段cryptid

otool -l WeChat.decrypted | grep crypt

抽取头文件
class-dump -H WeChat.decrypted -o ./WeChatHeadeers/

 

Homebrew  https://brew.sh

Theos配置  github网站查看安装方法

ce (ps -A进程路径)///WeChat.app

cd Frameworks

 

Homebrew 

安装:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

 

常用的方式

brew install ldid 安装

brew uninstall ldid 卸载

brew search ldid 搜索

brew upgrade ldid 更新

brew list 查看列表

brew update 更新Homebrew

 

export THEOS =~/theos

git clone - -recursive https://github.com/theos/theos.git $THEOS 

尽量吧theos配置到/opt/theos

vim ~/.bash_profile

export THEOS_DEVICE_IP=127.0.0.1

export THEOS_DEVICE_PORT=12345

export ANDROID_HOME=~/Library/Android/sdk

export THEOS=/opt/theos

export CY=/opt/cycript_0.9.594/

export HKSEHLL=~/HKshell

export PATH=$ANDROID_HOEM/tools:$ANDROID_HOEM/platform-tools:$THEOS/bin/:$HKSHELL:$CY:$PATH

 

@import text

HKCurrentVC()

UIApp.keyWindow.recursiveDescription().toString()

 

$THEOS/bin/nic.pl

nic.pl(创建项目,配置过环境变量)

桌面直接目录下打包 make

非桌面直接目录打包 make package

安装 make install

关于Theos的坑!!!!
1.不要在中文目录下编译工程.否则报错!
2.packageName(包名称),全部小写!!!


打包的问题:make package

Error: IO::Compress::lzma
解决方案两种:
1.安装xz
$ brew install xz
$ sudo cpan IO::Compress::Lzma

2. 改变压缩方式
2.1修改dm.pl 文件
vim $THEOS/$THEOS/vendor/dm.pl/dm.pl
#use IO::Compress::Lzma;
#use IO::Compress::Xz;
2.2修改deb.mk 文件
vim $THEOS/makefiles/package/deb.mk
修改为:
_THEOS_PLATFORM_DPKG_DEB_COMPRESSION ?= gzip

 

编译的问题:make
Error: You do Not an SDK
需要指定Xcode . 安装过MonkeyDev

clean 清除缓存!

 

 

  1. 防护

DYLD_INSERT_LIBRARIES(防护)

dyld源码地址

https://opensource.apple.com/tarballs/dyld/

添加Other Linker Flags

-Wl,-sectcreate,__RESTRICT,__restrict,/dev/null

破解DYLD防护

二进制修改工具Synalyze+it

搜索修改restrict字段中的字母

重新签名

 

 

调试和反调试

fishHook

ptace

 

posted @ 2020-12-04 02:03  sundaysandroid  阅读(358)  评论(0)    收藏  举报