游戏电视苹果数码历史美丽
投稿投诉
美丽时装
彩妆资讯
历史明星
乐活安卓
数码常识
驾车健康
苹果问答
网络发型
电视车载
室内电影
游戏科学
音乐整形

iOS逆向之人脸识别绕过

  达到目的的手段有很多种,也许存在优劣之分,我只是选择了其中一种我认为好玩的方式。人脸识别校验状态存储在服务端,因此即使通过该种方法绕过客户端人脸识别,由于并未获得合法session,因此无任何危害,仅做为IOS逆向学习思路。001准备
  本文所使用环境:
  越狱IOS手机1个(本文所用为12。4。4)
  appstore下载的app一个:
  登录时存在人脸识别:
  002脱壳
  apple在上架应用时,appstore会为上架的app加一层壳。在加壳状态下进行分析极为困难。但该层壳较为简单,可以通过各种自动化工具进行脱壳。如Clutch,CrackerXI等。Clutchi查看包名Clutchd包名脱壳
  因为本文所用IOS版本为12。4。4,Clutch存在兼容性问题,故使用CrackerXI进行脱壳,脱出未加壳版本:
  在CrackerXI中选择该app脱壳后:
  把未加壳的ipa包下载到本地:
  003破解
  ipa实际上是个压缩包,可以直接通过压缩软件打开,解压其中的二进制文件:
  用ida反编译ios中的二进制文件
  分析代码后发现:XXXXBaseViewControllerloginSuccessIsNeedBind:WithInfo:
  是登录后,人脸识别的函数,伪代码:voidcdecl〔XXXXAPPBaseViewControllerloginSuccessIsNeedBind:WithInfo:〕(XXXXAPPBaseViewControllerself,SELa2,boola3,ida4){BOOLv4;w22XXXXAPPBaseViewControllerv5;x21int64v6;x19voidv7;x0voidv8;x0voidv9;x23voidv10;x0voidv11;x20XXXXAPPLoginHelperv12;x0voidv13;x23int64v14;x1int64v15;x1int64v16;x0structobjcobjectv17;x0voidv18;x0voidv19;x22voidv20;x0voidv21;x23intv22;w24voidv23;x0voidv24;x0int64v25;x22voidv26;x0int64v27;x23constcharv28;x1voidv29;〔xsp0h〕〔xbp70h〕int64v30;〔xsp8h〕〔xbp68h〕int64(fastcallv31)();〔xsp10h〕〔xbp60h〕voidv32;〔xsp18h〕〔xbp58h〕XXXXAPPBaseViewControllerv33;〔xsp20h〕〔xbp50h〕int64v34;〔xsp28h〕〔xbp48h〕int64v35;〔xsp30h〕〔xbp40h〕boolv36;〔xsp38h〕〔xbp38h〕v4a3;赋值v4v5self;v6objcretain(a4,a2);v7objcmsgSend(OBJCCLASSUIApplication,sharedApplication);v8(void)objcretainAutoreleasedReturnValue(v7);v9v8;v10objcmsgSend(v8,delegate);v11(void)objcretainAutoreleasedReturnValue(v10);objcrelease(v9);if((unsignedint)〔XXXXAPPBaseViewControllerneedInputIDCardInfomation:〕(v5,needInputIDCardInfomation:,v6)){〔PCUtilsetObject:forKey:〕(OBJCCLASSPCUtil,setObject:forKey:,CFSTR(1),CFSTR(maybeNeedBackLoginGuide));v12〔XXXXAPPLoginHelpersharedInstance〕(OBJCCLASSXXXXAPPLoginHelper,sharedInstance);v13(void)objcretainAutoreleasedReturnValue(v12);v29NSConcreteStackBlock;v303254779904LL;v31sub1000B05E4;v32unk10263F2D8;v33v5;v36v4;v34objcretain(v11,v14);v35objcretain(v6,v15);objcmsgSend(v13,setCompleteGuideBlock:,v29,NSConcreteStackBlock,3254779904LL,sub1000B05E4,unk10263F2D8,v5);objcrelease(v13);objcrelease(v35);v16v34;LABEL9:objcrelease(v16);gotoLABEL10;}if(v4)判断v4(bool)值,确定是否进入人脸识别{v17〔PNCMBankGlobalsharedData〕(OBJCCLASSPNCMBankGlobal,sharedData);v18(void)objcretainAutoreleasedReturnValue(v17);v19v18;v20objcmsgSend(v18,bindType);v21(void)objcretainAutoreleasedReturnValue(v20);v22(unsignedint64)objcmsgSend(v21,isEqualToString:,CFSTR(FACE));objcrelease(v21);objcrelease(v19);v23objcmsgSend(v11,rootVC);v24(void)objcretainAutoreleasedReturnValue(v23);v25(int64)v24;v26objcmsgSend(v24,navigationController);v27objcretainAutoreleasedReturnValue(v26);if(v22)v28goToFaceCheckBindVC:info:;elsev28goSmsOrUKBindInfoVC:info:;objcmsgSend(v5,v28,v27,v6);objcrelease(v27);v16v25;gotoLABEL9;}〔XXXXAPPBaseViewControllerAfterBindSuccess:isNeedBind:〕(v5,AfterBindSuccess:isNeedBind:,v6,0LL);LABEL10:objcrelease(v11);objcrelease(v6);}
  分析代码发现:voidcdecl〔XXXXAPPBaseViewControllerloginSuccessIsNeedBind:WithInfo:〕(XXXXAPPBaseViewControllerself,SELa2,boola3,ida4)v4a3;。。。if(v4){。。。人脸识别函数。。。}
  因此即理想状态为:
  只需使if(v4)判断永假,即可永不进入登录后的人脸识别,而v4又来源于v3,因此只要使v3为0或在赋值时强制赋0值,即可。
  因此即理想状态为:voidcdecl〔XXXXAPPBaseViewControllerloginSuccessIsNeedBind:WithInfo:〕(XXXXAPPBaseViewControllerself,SELa2,boola3,ida4)v40;v4a3;。。。if(v4){。。。人脸识别函数。。。}
  查看v4a3对应汇编代码:
  利用keypatch插件修改MOVX22,X2修改为MOVX22,0
  修改后:
  即修改地址000B03A8
  F60302AA160080D2
  修改后:
  伪代码:voidcdecl〔XXXXAPPCBBaseViewControllerloginSuccessIsNeedBind:WithInfo:〕(XXXXAPPCBBaseViewControllerself,SELa2,boola3,ida4){XXXXAPPCBBaseViewControllerv4;x21int64v5;x19voidv6;x0voidv7;x0voidv8;x23voidv9;x0int64v10;x20XXXXAPPCBLoginHelperv11;x0voidv12;x23int64v13;x1int64v14;x1voidv15;〔xsp0h〕〔xbp70h〕int64v16;〔xsp8h〕〔xbp68h〕int64(fastcallv17)();〔xsp10h〕〔xbp60h〕voidv18;〔xsp18h〕〔xbp58h〕XXXXAPPCBBaseViewControllerv19;〔xsp20h〕〔xbp50h〕int64v20;〔xsp28h〕〔xbp48h〕int64v21;〔xsp30h〕〔xbp40h〕charv22;〔xsp38h〕〔xbp38h〕v4self;v5objcretain(a4,a2);v6objcmsgSend(OBJCCLASSUIApplication,sharedApplication);v7(void)objcretainAutoreleasedReturnValue(v6);v8v7;v9objcmsgSend(v7,delegate);v10objcretainAutoreleasedReturnValue(v9);objcrelease(v8);if((unsignedint)〔XXXXAPPCBBaseViewControllerneedInputIDCardInfomation:〕(v4,needInputIDCardInfomation:,v5)){〔PCUtilsetObject:forKey:〕(OBJCCLASSPCUtil,setObject:forKey:,CFSTR(1),CFSTR(maybeNeedBackLoginGuide));v11(XXXXAPPCBLoginHelper)〔XXXXAPPCBLoginHelpersharedInstance〕(OBJCCLASSXXXXAPPCBLoginHelper,sharedInstance);v12(void)objcretainAutoreleasedReturnValue(v11);v15NSConcreteStackBlock;v163254779904LL;v17sub1000B05E4;v18unk10263F2D8;v19v4;v220;v20objcretain(v10,v13);v21objcretain(v5,v14);objcmsgSend(v12,setCompleteGuideBlock:,v15,NSConcreteStackBlock,3254779904LL,sub1000B05E4,unk10263F2D8,v4);objcrelease(v12);objcrelease(v21);objcrelease(v20);}else{〔XXXXAPPCBBaseViewControllerAfterBindSuccess:isNeedBind:〕(v4,AfterBindSuccess:isNeedBind:,v5,0LL);}objcrelease(v10);objcrelease(v5);}
  可以看到,已经无人脸识别相关函数。
  patch到2进制文件:
  004安装
  将修改后的二进制文件拖入ipa压缩包中覆盖原始文件
  将修改后的ipa放入手机中:
  使用ReProvision工具签名安装:
  签名:
  成功签名:
  005完成
  直接输入账号密码即可登录,无需人脸识别即可进入设置指纹、手势密码页面,然后可登录成功。
  但登录后由于人脸识别验证在服务端,客户端中并无数据,因此无实际危害。

去茂名必做的五件事头条创作挑战赛茂名是一个位于广东省西海岸的著名旅游城市,这里有美丽的海滩、古老的历史建筑和丰富的自然景观。如果你计划去茂名旅游,那么以下是五件必做的事情:1。游览茂……正向解读心想事成据权威统计:年轻人在节假日,最热衷的旅游景点之一寺庙,当代年轻人在上进和上班之间选择了上香。足可见在日常工作和生活中,有太多的时候我们求之不得,选不了领导,融合不了环境,脱不下……CJ目前锡安的精神状态非常好当球队人员齐整时我们会很棒直播吧3月27日讯近日鹈鹕球星CJ麦科勒姆接受了名记Spears专访。谈到球队面临的伤病问题,CJ表示:这个赛季我们遭遇了很多伤病,不同的位置上的多名球员都遭遇了不同程度……奇尔维尔欧预赛两连胜开局很完美,但我们还有很长的路要走直播吧3月27日讯在北京时间今天凌晨进行的欧预赛第二轮比赛中,奇尔维尔首发踢满全场,帮助英格兰主场2比0击败乌克兰,赛后他接受了媒体的采访。距离我上次为英格兰出场已经有一……衬衫丨让风格不被定义春天的温柔,无处不在被风吹起的飘逸衣袖隐约透出纤细手臂,朦胧动人经典、百搭、随性回归纯粹的本然之境于时光中游走,生活创造了褶皱于风景中徜徉,……陶虹性感大片曝光!穿白丝抹胸长裙秀傲人美腿,性感妩媚十足315全民季头条创作挑战赛头条盛典年度明星鉴娱计划(此处已添加书籍卡片,请到今日头条客户端查看)以上就是每天给大家分享的娱乐明星写真系列图片集,希望可以帮助到更多爱……万达商管去年租金收入约508亿元,开业55个万达广场2022年12月16日,天津西青万达广场正式启用。人民视觉资料图1月12日,大连万达商业管理集团股份有限公司发布2022年业绩快报。财报显示,万达商管2022年收入……婚礼前夫妻旅行搭建喜字打卡要拍99组荒野婚纱照晶莹的雪山,一男一女站在大红色的喜字旁笑着看向彼此,一抹红立在姜黄的草甸上,这是阿罗和妻子旅行拍的婚纱照。2018年阿罗和妻子领了结婚证,婚礼却因各种原因推迟至今。2月初……罗浮山的另一边有个静修福地记得年轻的时候,从广州出发,坐着同学租来的北京吉普(同学的最爱,后来他真的买了一辆)在去深圳找在大亚湾工作的另一个同学的途中,上了一次罗浮山。同学很夸张地用上了四驱,北京吉普身……26岁袁心玥被催婚,三大择偶标准曝光,颜值成最重要因素曾几何时,刚刚出道的袁心玥的外号还是小苹果,曾几何时,害怕自己超过200公分的身高找不到男朋友,对于爱情满怀期待的袁心玥一直坚称自己的身高只有199公分,可是一转眼,袁心玥已经……中国式现代化是世界的机遇来源:【沈阳日报沈阳网】3月27日,在华晨宝马(大东厂区)铁路专用线上,华晨宝马乘坐火车整装待发。该铁路专用线自沈阳东站东侧引入厂区,全长3。165公里,设特大桥1座,公……RedmiNote12Pro极速版微光绿配色好清爽RedmiNote12Pro极速版微光绿配色好好看呀,像春天小树的嫩芽一样,看着心情就很清爽这款手机首先来说外观颜值很高,采用了红米Note系列的家族式设计语言,所以看上……
癣可以吃羊肉吗?癣可以吃牛肉吗?牛肉和羊肉都是温补的食物,口感也很好,很多人喜欢吃,下面5号网的小编为你们介绍癣可以吃羊肉吗?癣可以吃牛肉吗?癣可以吃羊肉吗癣主要是真菌感染的表现,治疗应该抗真菌的药物治……向内求,观自在头号解忧馆导语:现在物质世界已经极其丰盛,大量物品已经剩余,乱买堆堆乱丢的现象日益严重,我们一味地在追求外在富足的生活时,你有多久没有清理你思想了,精神家园不堪重负了,有……精囊炎会引起血尿吗?精囊炎会导致无精吗?精囊炎现在在男性身上越来越普遍了,由于现在生活习惯的不健康,患上精囊炎的风险也大大增加。下面5号网小编给大家讲讲精囊炎会引起血尿吗?精囊炎会导致无精吗?精囊炎会引起血尿吗……精囊炎可以喝酒吗?精囊炎可以吃海鲜吗?精囊炎在很多成年男性身上都有,对于生殖健康的影响非常大,严重的还会引起不育。下面5号网小编给大家讲讲精囊炎可以喝酒吗?精囊炎可以吃海鲜吗?精囊炎可以喝酒吗精囊炎患者要尽量……荆山楚水好出游,文明旅游成风景极目新闻记者丁晨通讯员鄂文旅随着湖北对文明旅游宣传力度不断加大,文明旅游已经成为一种习惯。早在国庆假期前,湖北省文化和旅游厅发布《文明旅游公约》,进一步传播文明旅游……中国篮协主席姚明女篮成绩是惊喜,但不能头脑发热中国女篮获得世界杯亚军后,作为领队随队出征的中国篮协主席姚明接受记者专访时表示,取得佳绩是这支队伍近10年来积累的结果,惊喜过后还是要冷静、科学地总结分析,拿出框架计划,推动女……四川渠县三汇古镇,名特小吃水八块探秘口邓坤一、探究水八块在三汇镇上的兴起之源水八块是远近闻名的三汇名特小吃,概括来说,因其风味独特,集鲜、香、麻、辣、脆为一体,让众多食客饱享口福而赞不绝口。探索水八块……最好的员工遇见最好的老板,诺维斯基退役时,库班的承诺感动了我库班煽情演讲诺维斯基退役战,库班出场动情的演讲:首先,你要知道我有多爱你,我们都很在乎关心你无法用言语表达,你对这支球队所做的贡献。但是我可以给你承诺,……夺冠假赛复出解散2021年度电竞圈大事件盘点2021年的余额不足1。这一年里,电竞圈里发生了哪些事?这篇文章,我们给大家盘点一下2021年度电竞圈大事件。夺冠EDG赢得英雄联盟S11总冠军英雄联盟全球总……王者S26赛季千色云中赛年明日正式开启除了暃还有两位英雄曝光小伙伴们,大家好,众所周知,明天王者荣耀将迎来S26赛季,很多小伙伴们应该也都知道要更新很多内容,千色云中赛年内容全新上线,此次版本可以说有很多内容,但是小编今天主要跟小伙伴们……呼声很高的小屏手机,为什么始终处于雷声大,雨点小的境地?文小伊评科技小屏手机一直以来都是一个用户呼声很高,但是厂商却不怎么愿意推出这种产品。在很长一段时间里,除了iPhone还在坚持推出小屏手机之外,在其他品牌商那里鲜有小屏手……布洛芬的功效和作用布洛芬的副作用有哪些布洛芬是一种常见的药品,一般是用于止疼。那布洛芬除了止疼外还有什么其他的作用吗?布洛芬的功效和作用布洛芬的主要作用是止痛。对头痛、牙痛、神经痛、痛经都有疗效,还可治疗感冒……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网