首页
论坛
课程
招聘
[逆向分析] 某app反越狱检测
2021-2-18 21:09 5593

[逆向分析] 某app反越狱检测

2021-2-18 21:09
5593

app下载:链接:https://pan.baidu.com/s/1WWNtgt-JclUJUleMPoXQtA
提取码:gabz
复制这段内容后打开百度网盘手机App,操作更方便哦

 

1,初步检测 :在IDA字符串窗口和函数窗口查找jail,jeil,jb,break,cydia,substrate,bash,apt,ssh等关键字,找到如下几个:
bool cdecl -UIDevice isJailbroken
bool
cdecl -BLYDevice isJailbroken
bool cdecl +BLYDevice isJailBreak
unsigned
int64 cdecl -BLYDevice jailbrokenStatus
void
cdecl -BLYDevice setJailbrokenStatus:

 

bool __cdecl -UIDevice isSimulator
{
return 0;
}

 

id __cdecl -ASSStaticInfoCollector checkJB

 

2,使用fiddler等抓包工具捕获app所有网络请求,在url和body中查找jail,jeil,jb,break等关键字。如果body加密则需要跟踪和逆向。(网络请求定位到代码逻辑,可以从跟踪URLWithString甚至connect开始)
暂时没有

 

3,
使用frida对常用越狱检测函数对应的系统调用进行跟踪access,creat,faccessatgetxattr,getxattr,link,listxattr,lstat,open,opendir,readlink,realpath,stat,statfs,symlink,这样可以检测到所有函数级

 

/private/var/mobile/Containers/Data/Application/A0E94596-A1F9-4D8A-A684-596D75674239
35 fopen /etc/passwd

 

看到打开fopen

 

4, /etc/fstab 分区检测

 

沙盒完整性检测 system函数

 

环境变量检测 使用environ检测MobileSubstrate环境变量

 

mmap检测

 

进程检测 MobileCydia Cydia afpd

 

schema检测 cydia://

 

5,经过分析可知,App存在SVC指令级别的越狱检测并封装成函数libc_do_sycall,同时也调用了syscall函数来隐藏api调用。通过跟踪libc_do_sycall和iOS系统调用号,可以发现的系统调用有:

 

read/close/getpid/getppid/open/sysctl/stat64/getdirentries64,根据该结果进行二次跟踪,又会得到一些检测文件,未防止有遗漏,可以将data段内存dump下来查看解密后的敏感路径
Svc也没有搜索到

 

6,成品到我的星球拿。
7, 最近出个友盟协议,有意向的私信我。


[公告] 2021 KCTF 春季赛 防守方征题火热进行中!

收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回