软件服务商跑路怎么办? 用"逆向"解决友人创业忧愁

突然接到一个来自大学城市的电话,一个熟悉的声音,原来是同学搞汽车维修创业,谁知道蹦出这么一个问题:客户管理软件的运营商跑路,还有一年期的软件打不开了。“那里面可是有所有用户的金额数据呀“友人声泪俱下。安抚了阿明之后,询问身边家人的意思,开始了软件的探索之旅。

所以这不是恶意攻击,这是替跑路软件的运营商搽XX呀。

之所以将分析思路记录下来,原因有二,一则是为己,锤炼自我思路,二则是为人,想当年新手的我怎么就没有我这样的指导呢?:)

思路

  • 破解阿明的汽车管理
    • 目的
      • 登录绕过
      • 数据获取
    • 思路
      • 数据是否在本地
        • Yes:
          • 是否被加密?
            • 未加密,提取内容
            • 加密,找到密钥或者密钥算法
        • No:
          网络服务器是否可用
      • 登录与数据的必要性
        • 能否绕过登录正常使用?

CSharpWinControls.dll
*generic check - Microsoft Visual C# / Basic.NET / MS Visual Basic [ Obfus/Crypted ]

怎么去处理这个事情?
登录使用的IP和是否返回结果,应该能证明是否可行。

能否不安装就登录?

如果可以并且弹出相同的结果,那么可以跟踪网络请求数据和地址。
推荐软件Fiddler(后记:但最后发现它没有成功拦截和显示出通讯。可能因为是纯TCP通讯)

  • 地址是否有效?
  • 请求数据和返回数据是否很简易长度和格式?
    能否模拟之?
  • 模拟是否有效果?
  • 提示信息(过期)能否在文件中找到?
    哪些模块被加载到正在运行的程序中?
  • 能否找到关键点有机会跳过校验流程?
  • 校验后数据是否在本地?
    可能的数据存储格式,是否有密令?
  • 安装一个新的软件来比对一下哪些是动态生成的数据库文件?

开始实施

  1. 缺少flash.ocx
    下载x86版本flash

  2. 可以运行了,看来不依赖什么东西

  3. 有离线登录666
    您的软件已经到期。
    其窗口线程是SYHBeauty.exe创建的线程。

  4. 行为监控。
    SYHBeauty.exe
    目前的情况就是,当校验按钮按下时:
    validatetor.dll会被调用。
    在系统注册表中会获取机器码等
    此外还将一些数据发送到指定网址。

validatetor.dll是一个数据文件。应该是当前哈希。
关键点在于在哪里打开了这个文件?

  1. 在线模式登录会访问哪些数据?
    一样,没有校验过就不能访问。

  2. SYHBeauty.exe中
    发现有如下提示:
    您的信息不合法
    您的信息不合法
    您的软件已经到期
    您的电脑没有通过审核


措施:

  • 修改跳转看效果
    无效果:照常弹:您的信息不合法
  • 向上看有没有其他路径,即这是不是都是错误路径。

    1. 通过ILSpy的搜索找到了更多字符串。原来是由另一处导致的
      BeautyUI.dll
      中的validate_zhengzheng
      返回True为成功。

    2. 只最后返回true

    3. 内部跳过一次

我采取的方法是每个验证call都修改跳转为相反:
两处验证:
1. 时间
2. 硬盘

这套程序在我的电脑已经可以工作了。
8. 在对方电脑显示:您的电脑没有通过审核
经过查证发现是因为对方电脑硬盘是校验成功的,我这边给多改了。
然后改回一处即完事。


简记

  • 我先查壳
    对哪些是数据,哪些是隐藏嫌疑,哪些是壳,做到心中有数
  • 异机复原
    想办法让其在我的机器中运行起来,如增加环境等。
  • 监控提示过程
    提示前访问了什么文件,提示后访问了什么文件,做了哪些网络操作和注册表操作(这次发现有读注册表时间和硬盘码的操作)。在具体操作过程中加载了什么模块,卸载了什么模块。
    提示是由什么线程完成的。该线程数据属于什么文件。
  • 找到该代码分析之 1
  • 修改并试运行,是否成功?
  • JMP 1
相关文章
相关标签/搜索