• VB逆向


    大家或许有所察觉了,随着我们课程的不断深入学习,我们感觉自身逆向的“内功”也在不断的增进!

    我们从爆破入手,到现在逐步大家进入程序的内部,认识不同编译器开发的程序,探索不同的加密逻辑。

    前边,我们的例子中既有VC++开发的程序,也有Delphi开发的程序,今天我们给大家分析一个VB程序的加密和解密思路。

    为了让大家更好地了解逆向,我们需要掌握不同编译器编译出来的程序的特点,然后才能有针对性的进行逆向。

    其中,在逆向一个程序前,先搞清楚这个程序是由什么编译器和神马语言写出来的,是灰常必要的。

    高手只需要从代码间的细小差别就可以看出端倪,而菜鸟们也有便捷的工具可以一步到位告诉你这个程序是由什么编译器编译的:PEiD.exe

    我们看到了,这个程序是一个VB程序。

    Virtual BASIC是由早期DOS时代的BASIC语言发展而来的可视化编程语言。

    VB是由事件驱动的编程语言:

    就是在可视化编程环境下我们可以绘制一些窗体,按钮,编辑框等控件,然后为这些控件所可能引发的事件如按钮被单击或者被双击编写对应的处理代码。

    不过作为类似的语言,小甲鱼建议大家可以学下Delphi或者C#。

    所有的VB程序几乎都是依赖于一个外部的动态链接库。这个动态链接库的名字是:MSVBVM60.dll(可能有多个版本,但名字都差不多~)

    然而正是因为VB中所有的API函数都在DLL中去实现,所以导致我们在跟踪程序的执行代码时灰常频繁地在DLL领空和程序领空跳来跳去跳来跳去跳来跳去跳来跳去跳来跳去跳来跳去 。。。。。。

    API函数的作用有很多,例如作为中介让我们的程序和指定设备进行沟通。

    VB破解的关键

    针对变量:

    __vbaVarTstEq

    __vbaVarTstNe

    __vbaVarCompEq

    __vbaVarCompLe

    __vbaVarCompLt

    __vbaVarCompGe

    __vbaVarCompGt

    __vbaVarCompNe

    针对字符串:

    __vbaStrCmp

    __vbaStrComp

    __vbaStrCompVar

    __vbaStrLike

    __vbaStrTextComp

    __vbaStrTextLike

  • 相关阅读:
    C++中派生类使用基类成员的问题
    关于linux安装kettle的总结
    Servlet+JSP教程之:第一个Web程序
    Oracle开启和关闭的四种模式
    Android 图片设置圆角 方法之二
    Hive[6] HiveQL 查询
    JavaScript技巧45招
    JavaScript 权威指南第6版
    js 使用技巧
    Hive[5] HiveQL 数据操作
  • 原文地址:https://www.cnblogs.com/milantgh/p/3870254.html
Copyright © 2020-2023  润新知