爱伪装(AWZ)/爱立思(ALS)改机改串一键新机原理分析
安装过苹果插件的都知道,点开Cydia ,点软件源,再点编辑,再点添加,添加阿里源,
爱伪装(AWZ)/爱立思(ALS)是一款iOS越狱系统上的改机工具,可以修改多种系统参数达到伪装设备型号及各种软硬件属性的目的,同时提供了防越狱检测机制,常用于iOS上的推广刷量,配合代理/***使用。 除了AWZ以外,该软件商还有类似工具ALS/IGG/LRN/NZT/AXJ等,功能大体一致。AWZ/ALS支持iOS 7/8/9/10/11/12的全息备份,一键新机功能
AWZ伪装哪些参数?
第一阶段
第二阶段
在第一阶段破解后,仍然是闪退的,此时反调试已经去除,所以可以加调试器看检测点
- IDFA
- IDFV
- 用户名
- 系统版本
- 设备型号,固件版本
- User-Agent
- 移动网络运营商信息
- 地理位置
- uname / sysctl等参数
- WIFI SSID BSSID
- IMEI
- 序列号
- MAC地址
分析要点这里只做学习讨论改机原理及ALS自身反逆向机制。ALS安装后,有如下文件:
- /Applications/ALS.app 主程序,用于生成改机参数,参数保存在
- /Library/LaunchDaemons/dhpdaemon.plist 用于daemon方式执行DHPDaemon,用于帮助ALS实现一些隐藏操作
- /usr/bin/DHPDaemon
- /MobileSubstrate/DynamicLibraries/ALS.{dylib,plist},该tweak通过hook一些可以获取系统属性和app属
性的C函数和ObjC函数实现的修改app参数
- ALS属性2755防止加载tweak
- 存在restrict段,防止被加载tweak
-
存在syscall函数进行ptrace系统调用,存在ptrace函数,以及svc汇编指令实现的ptrace,防止调试器附加
-
对于restrict段和汇编指令反调试的处理,解法就是patch文件然后重签名,但是要写一个通用的命令是比较困
难的,慢慢收集吧,这里提供的方式如下:
sed -i 's/RESTRICT/RXSTRICT/g' ALS
sed -i 's/\x80\x52\x01\x10\x00\xd4/\x80\x52\x1f\x20\x03\xd5/g' ALS
- 对于文件属性和函数级的反调试,方法不再赘述,写tweak即可
- -[NSBundle executablePath]检测主进程文件是否被修改
- _dyld_get_image_name检测tweak模块
- sysctl检测进程的p_flag是否有调试器flag
- isatty检测终端
- ioctl(TIOCGWINSZ)检测终端
- fopen检测主进程文件是否被修改(在DHPDaemon中)
- posix_spawn检测/Application/ALS.app下是否存在超过3M的文件(补丁啊)
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理!
部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!