美文网首页
LLDB 解密-砸壳 Framework

LLDB 解密-砸壳 Framework

作者: carpond | 来源:发表于2018-10-28 22:03 被阅读12次

准备工作

找出程序的可执行文件路径

  • root# ps aux | grep Snapchat

列出所有的 Frameworks

  • xx.app root# ls Frameworks

把所需要解密的库,复制出来

  • scp -P 2222 -r root@localhost:/var/....xx.app/Frameworks/xx
  • scp -P root@10.0.0.3:/var/....xx.app/Frameworks/xx

获取可执行文件的头部信息

  • otool -hf xxx(可执行文件)
图1.png

获取64位的加密信息(arm64)

  • otool -arch arm64 -l 可执行文件 | grep crypt

    图2.png

LLDB 附加

获取解密的目标文件加载模块的基地址

  • im list -o -f 可执行文件
图3.png

获取解密后的二进制数据

  • memory read --force --outfile ~/Desktop/dumpoutput --binary --count cryptsize cryptoff+基地址

    • cryptsize来自加密信息,cryptoff 也是来自加密信息
图4.png

~/Desktop/dumpoutput 是保存到本地计算机的目标可执行文件,这个文件包含的是解密后的数据

修复文件

因为 dump 出来的文件都没有 Mach-O 文件头,所以要先把 dump 出来的数据写会原来加密的文件,以替换原来加密的部分.

  • dd seek=20086784 bs=1 conv=notrunc if=/Users/wyp/Desktop/dumpoutput of=./可执行文件名
图5.png

20086784是20070400+16384的计算结果.20070400是之前获取的 arm64架构的偏移值 offset,16384 是加密数据的 crypoff, 二者相加,得到了写入加密数据在文件中的偏移值

替换之后,使用 lipo 从 FAT 文件中提取 arm64 架构的文件,然后将 arm64_tmp 拖到 MachOView 中,修改 cryptid 的值为00000000,然后就完成了 framework 的解密.

  • lipo 可执行文件 -thin arm64 -output arm64_tmp
图6.png 图7.png

查看64位的加密信息

图8.png

完成

部分 framework, 通过 image li 查不到基地址,解密的方式待续!

相关文章

  • LLDB 解密-砸壳 Framework

    准备工作 找出程序的可执行文件路径 root# ps aux | grep Snapchat 列出所有的 Fram...

  • LLDB解密(砸壳)

    前言 前段时间学习过利用工具来对加密的应用ipa包砸壳,dumpdecrypted砸壳,Clutch砸壳,frid...

  • 砸壳简介

    为何砸壳 appstore 给应用加密了 砸壳:不知道解密的确切方法,调用苹果的解密程序 砸壳的方式 两种砸壳方式...

  • LLDB 解密Framework

    除了使用dumpdecrypted去解密APP和framework的内容以外,也可以使用LLDB直接从内存中dum...

  • 应用砸壳

    砸壳 软件脱壳,顾明思义,就是对软件加壳的逆操作,把软件上存在的壳去掉(解密) 砸壳原理 应用加壳(加密) 应用砸...

  • iOS逆向与安全8.1:砸壳、初识Theos

    砸壳 软件脱壳,顾名思义,就是对软件加壳的逆操作,把软件上存在的壳去掉(解密)。 砸壳原理 应用加壳(加密)提交给...

  • iOS砸壳

    一、砸壳 软件脱壳,顾名思义,就是对软件加壳的逆操作,把软件上存在的壳去掉(解密)。 1.1 砸壳原理 1.1.1...

  • iOS 越狱应用砸壳

    应用砸壳:一般在客户端的应用为了防止别人反编译会对可执行文件进行加密保护(加壳),我们的砸壳就是解密的过程 静态砸...

  • 十、iOS逆向之《越狱砸壳/ipa脱壳》

    砸壳原理 砸壳顾名思义就是对软件进行逆向操作,对已加密的软件进行解密,从而获取真实软件源码。App Store下载...

  • [iOS逆向]18、砸壳

    软件脱壳,顾名思义,就是对软件加壳的逆操作,把软件上存在的壳去掉(解密)。 1、砸壳原理 1.1、应用加壳(加密)...

网友评论

      本文标题:LLDB 解密-砸壳 Framework

      本文链接:https://www.haomeiwen.com/subject/uwomtqtx.html