• <dd id="uv09w"></dd>
      <button id="uv09w"><object id="uv09w"></object></button>
        <s id="uv09w"><samp id="uv09w"><blockquote id="uv09w"></blockquote></samp></s>

          <th id="uv09w"></th>

          <span id="uv09w"></span>

              设为首页 - 加入收藏 湛江站长网 (http://www.mealny.com)- 中小站长们必上的网站 - 聚焦湛江站长前沿资讯!
              热搜: 网站 站长之家 什么 平台
              当前位置: 首页 > 业界 > 正文

              来,教你如何破解一个 iOS APP

              发布时间:2018-10-20 12:27 所属栏目:[业界] 来源:谢幺谢幺
              导读:副标题#e# 【新产品上线啦】51CTO播客,随时随地,碎片化学习 今天给大家来一个硬知识科普。 黑客中有一类人,注定跟程序开发者是死对头,是宿敌。 他们总跟开发者对着干: 开发者的日常是用一段段代码写出一个个软件,实现各种功能。 他们的日常则是把一个
              【新产品上线啦】51CTO播客,随时随地,碎片化学习

              今天给大家来一个硬知识科普。

              黑客中有一类人,注定跟程序开发者是“死对头”,是宿敌。

              来,教你如何破解一个 iOS APP

              他们总跟开发者对着干:

              开发者的日常是用一段段代码写出一个个软件,实现各种功能。

              他们的日常则是把一个个完整的软件逆推,还原成一段段代码。

              他们,就是传说中的“逆向工程师”。

              假如让你钥匙撬开一把锁,你或许感到无从下手,但如果这把锁的外壳完全透明的,内部结构清晰可见,你便会觉得容易了许多。

              在赛博世界里,逆向工程就有这种看穿一个物体的本领。

              来,教你如何破解一个 iOS APP

              给他们一个手机APP、电脑程序,用不了多久,就能逆推出程序的运行逻辑,找到里头的关键代码,篡改、破解、发现漏洞。

              人们把这种技术叫做“逆向工程”。我们在网上看到的各种破解软件,多半都跟逆向工程有关。

              然鹅,

              逆向的江湖有正亦有邪。

              正义的逆向者只是做安全研究,而那些邪恶的逆向者却拿着这项技能四处干坏事牟利。

              比如盗版软件。开发者们累死累活才写好的程序,分分钟就被人逆向破解,植入广告和木马,重新打包成盗版。拼多多变成拼夕夕,一款软件多出好几十个远方表亲。

              来,教你如何破解一个 iOS APP

              (网曝各种山寨的彩票软件)

              再比如有朋友总抢不到群红包,怀疑有人用了外挂,其实所谓的“抢红包外挂”就是有人逆向破解了微信APP,在里头添加了自动领红包的代码。

              来,教你如何破解一个 iOS APP

              (网上流传的破解软件)

              对于那些跟钱打交道的金融类APP,逆向破解更是噩梦,一旦APP被逆向,就很容易面临巨额损失。

              最近我撩到一位逆向技术大牛,聊了聊手机APP的破解与反破解,今天与诸位浅友分享一下。

              话说,这位大牛有点奇特,虽然他是个逆向技术高手,却不去破解别人的手机应用。相反,他的日常是带着团队专门帮 iOS 应用开发者做反破解。

              来,大家认识一下这位新朋友,他就是通付盾的研发副总裁、 iOS 加固项目的总负责人,华保健。

              来,教你如何破解一个 iOS APP

              此人灰常厉害,他是中科大的计算机学博士,做了几十年信息安全、系统渗透等方面的工作,2015年前后还在微软主导过 Office 365 和 必应搜索(Bing)的研发项目,前两年加入通付盾,负责技术研发。

              话说华博士一心做技术,人比较腼腆,所以我没能拿到他的1080P高清无码近照,只能从他的微信头像里扣下一张AV画质的照片。关于他的技术故事,我相信非常精彩,不过来日方长,回头再写。

              今天继续聊破解和反破解。

              1、破解一个APP的标准大路

              华保健告诉我,要破解一个苹果手机的APP,其实有一些标准套路。

              第一步是脱壳。

              所谓“壳”,就是原有的软件代码上再外包一层“壳代码”。机器运行程序时,先运行壳代码,这样可以保护应用的代码逻辑不容易暴露。

              苹果商店会给每个上架的 iOS APP 都加一层壳。

              “不过,这层自带的壳并没什么实质性作用。”

              华保健说,由于苹果商店给全世界几百万个 APP 都用的同一种加壳方法,因此全世界的逆向工程师、黑客们都盯着它,老早就做出了针对这种壳的脱壳工具,开源在网上供免费下载,总之,苹果自带的壳分分钟就能脱掉。

              脱壳之后,第二步是反编译。

              到这一步,幺哥必须给大家先普及一个有趣的计算机知识。

              各位同学请看,下图中的两个人是早期的程序员,他们正在检查代码:

              来,教你如何破解一个 iOS APP

              也不知道是谁出的主意,早期的计算机代码就这么直接用打孔的方式记录在长长的纸带上。打孔代表0,没打孔代表1,对应着电子元件的开闭状态,以此控制机器运行。

              这种原始的代码记录方式叫“机器码”,是一种二进制编码。

              来,教你如何破解一个 iOS APP

              相信你已经发现,这种代码记录方式用起来非常麻烦。

              据说,当时要编写一个程序,光是打孔就得几天几夜,还容易出错,程序员们不仅每天都在打孔、改错,还得记住一堆 0101010 这样长长的代码。

              后来有人发明了一种汇编语言,这才开始用英文字符来替代一串串的二进制字符。

              从此,像1000100111011000 这样的代码就可以用“mov ax,bx”这样的一串字母来替代,它的意思是“把b寄存器(一种机器元件)里的数据挪到a寄存器”。

              来,教你如何破解一个 iOS APP

              再后来,程序越来越复杂,汇编语言也不够用,更高级的语言就诞生了。比如 C、C++、Java、Python、PHP、Rust、Nodejs 等等……

              【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

              网友评论
              推荐文章
              金亚洲开户