首页 > RE > Mac OS X上用Hopper逆向FauxPas v1.6过程分析

Mac OS X上用Hopper逆向FauxPas v1.6过程分析

  版权申明:本文只作研究学习使用,建议大家支持正版,共同维护程序员兄弟的利益!

场景描述:

  我电脑上的FauxPas原来是装的1.3的破解版,我记着当时的用之前就是用户名是 test,密码是 123456,然后点击注册就好了,现在是那个License是保存在本地某个角落里面。
  所以安装了最新版之后,最新版是直接验证以前的那个License,然后显示下面的图片:(PS:我没有找到安装过正版的并且试用版到期的电脑,所以不确定在那种环境下面会不会出现啥问题,希望没有问题)

QQ20151022-1@2x  现在是拖到Hopper中进行分析,先找突破口:
The license information could not be verified
  搜索到下面的结果
000000010022ee4d db “The license information could not be verified”, 0 ; XREF=cfstring_The_license_information_could_not_be_verified
  在点击后面的XREF,就可以到下一个证据:
000000010027c048 dq ___CFConstantStringClassReference, 0x7c8, 0x10022ee4d, 0x2d ; XREF=sub_100113f30+673
  现在发现了原来是 sub_100113f30 这个函数调用的。
  在这个地方打个断点用LLDB跑一下,然后查看程序调用栈,发现了
-[XALicenseFormWindowController validateAndSaveLicenseInfoWithSuccessHandler:errorHandler:]:
  哈哈,根据这个名字也能猜出来,这个就是最核心的函数。然后继续分析发现一下的关系:
validateAndSaveLicenseInfoWithSuccessHandler:errorHandler
|_ sub_1001150e0 //子函数
|_ sub_100114570 //子函数
|_ sub_100113f30 //是否判断弹出窗口的分支 在0000000100113fd6 片段调用
|_ sub_10001f870 //lisence 算法
  分析lisence 算法 它又把返回值 al 赋值给了 bl,然后根据bl进行跳转,我干脆直接把Bl置为1,然后就搞定了
0000000100114047 88C3 mov bl, al
  修改为:
0000000100114047 B301 mov bl, 0x1
  如下图:
QQ20151022-2@2x
  然后最后把修改后的文件导出来,替换就OK啦。

  1. 还没有评论
评论提交中, 请稍候...

留言


可以使用的标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
Trackbacks & Pingbacks ( 0 )
  1. 还没有 trackbacks