环境:

windows xp sp 3

工具:

Ollydbg 和 exeinfo pe

查壳,还是无壳的vb程序。

打开,有一个nag窗口,点击”确认”的话才会弹出输入serial的窗口,点“取消”的话会关闭程序

OD载入,运行到弹出nag窗口的时候,F12停下来,然后ALT+ F9,点“确认”。

00402CF0   .  8D45 DC       lea eax,dword ptr ss:[ebp-0x24]
00402CF3   .  50            push eax
00402CF4   .  E8 21E4FFFF   call <jmp.&MSVBVM50.__vbaI4Var>
00402CF9   .  50            push eax
00402CFA   .  8D45 AC       lea eax,dword ptr ss:[ebp-0x54]
00402CFD      50            push eax
00402CFE      E8 1DE4FFFF   call <jmp.&MSVBVM50.#595>     ;这是个MessageBox
00402D03   .  8D95 5CFFFFFF lea edx,dword ptr ss:[ebp-0xA4] ;停在这里
00402D09   .  8D4D BC       lea ecx,dword ptr ss:[ebp-0x44]
00402D0C   .  8985 64FFFFFF mov dword ptr ss:[ebp-0x9C],eax

除Nag窗口: .点击MessageBox的“确认”后eax的值为1,所以将00402CFE的指令改为: mov eax,0x1

然后往上翻一翻看看有什么:

00402A69   .  C785 7CFFFFFF>mov dword ptr ss:[ebp-0x84],blaster9.004>;  UNICODE "Error ! Das Passwort ist falsch !"
00402A73   .  C785 74FFFFFF>mov dword ptr ss:[ebp-0x8C],0x8
00402A7D   .  E8 AAE6FFFF   call <jmp.&MSVBVM50.__vbaVarCopy>
00402A82   .  8D95 74FFFFFF lea edx,dword ptr ss:[ebp-0x8C]
00402A88   .  8D4D DC       lea ecx,dword ptr ss:[ebp-0x24]
00402A8B   .  C785 7CFFFFFF>mov dword ptr ss:[ebp-0x84],0x10
00402A95   .  899D 74FFFFFF mov dword ptr ss:[ebp-0x8C],ebx
00402A9B   .  E8 86E6FFFF   call <jmp.&MSVBVM50.__vbaVarMove>
00402AA0   .  8D95 74FFFFFF lea edx,dword ptr ss:[ebp-0x8C]
00402AA6   .  8D4D CC       lea ecx,dword ptr ss:[ebp-0x34]
00402AA9   .  C785 7CFFFFFF>mov dword ptr ss:[ebp-0x84],blaster9.004>;  UNICODE "PASSWORT FALSCH !"
00402AB3   .  C785 74FFFFFF>mov dword ptr ss:[ebp-0x8C],0x8

有个错误信息内容,可以猜测上面就是serial的比较地方。

突然间出现了这个:

00402A2A   .  68 DC1D4000   push blaster9.00401DDC                   ;  UNICODE "2G83G35Hs2"

将这个输入进去看看是什么东西:

虽然看不懂消息框弹出的内容,但是显然消息框的内容不一样了。应该就是成功了。

这次比较简单。

004028BA   > \FF75 A8       push dword ptr ss:[ebp-0x58]             ;  输入的serial
004028BD   .  68 DC1D4000   push blaster9.00401DDC                   ;  UNICODE "2G83G35Hs2"
004028C2   .  E8 83E8FFFF   call <jmp.&MSVBVM50.__vbaStrCmp>
004028C7   .  8BF8          mov edi,eax                              ;  比较结果存放到edi
004028C9   .  8D4D A8       lea ecx,dword ptr ss:[ebp-0x58]
004028CC   .  F7DF          neg edi                                  ;  取补
004028CE   .  1BFF          sbb edi,edi                  ;  edi - edi - cf
004028D0   .  47            inc edi                      ;  edi + 1
004028D1   .  F7DF          neg edi                                  ;  取补
004028D3   .  E8 60E8FFFF   call <jmp.&MSVBVM50.__vbaFreeStr>
004028D8   .  8D4D A4       lea ecx,dword ptr ss:[ebp-0x5C]
004028DB   .  E8 52E8FFFF   call <jmp.&MSVBVM50.__vbaFreeObj>
004028E0   .  66:3BFE       cmp di,si                    ; si 为0
004028E3   .  0F84 F3000000 je blaster9.004029DC             ; 不能跳

上面的计算过程可以看出,假如比较结果不为0时,一系列运算导致edi变成0

假如比较结果不为0,一系列运算会使得edi为非0

明文比较:2G83G35Hs2

160 - 15 blaster99.exe相关推荐

  1. 10自带sftp服务器_WinSCP v5.15.3 免费的 开源图形化 SFTP 客户端

    WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端.同时支持 SCP 协议.它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件. 主要功能 ...

  2. 无法初始化sftp协议。主机是sftp服务器吗?_WinSCP v5.15.3 免费的 开源图形化 SFTP 客户端...

    WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端.同时支持 SCP 协议.它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件. 主要功能 ...

  3. Word图片上传控件(WordPaster)更新-2.0.15版本

    更新说明: 1.   增加对webp图片的支持,支持微信公众号图片的下载. 效果参考:http://www.ncmem.com/doc/view.aspx?id=9761f8ce4fe04d0ab0f ...

  4. cl.exe 命令行

    使用命令后编绎 c++源文件 一.没有设置环境变量 时,指定include /lib 的中的路径 B:\VisualStudio\VC98\Bin>cl.exe main.cpp /I ../i ...

  5. 2017无盘服务器,(2017.11.19)云更新2017正式版2017.6.15.6596无盘xp-win7x32-x64-win10x64公包...

    重要更新: 一.重点功能更新 1.三层更新核心组件升级,降低80%的游戏更新量 : 2.新增显卡PNP功能 (新环境部署更简单): 3.同时支持中英双语言环境 (更高Bigger): 4.优化万兆环境 ...

  6. 最新版 Proteus 8.15 Professional 图文安装教程(附安装包)

    前言 大家好,我是梁国庆. Proteus 是世界上唯一将电路仿真软件.PCB设计软件和虚拟模型仿真软件三合一的设计平台. 本篇博主将手把手带领大家安装最新版 Proteus 8.15. 若图片加载超 ...

  7. 15种下载文件的方法

    转载:https://blog.netspi.com/15-ways-to-download-a-file/ 瑞恩甘德鲁德 原创时间:2014年6月16日 Pentesters经常将文件上传到受感染的 ...

  8. 顺无盘linux win10包,(2018.05.21)云更新2016正式版x86_2016.10.15.4976无盘xp-win7x32-x64-win10x64公包...

    官方2016.12.6更新版本修正各BUG (服务端支持x86 32位系统) Win10,ltsb企业版 2017.3.3更改三层地址,改善不配问题. 重新修改补丁,使其更稳定解决个别提示客户端配套问 ...

  9. sqlserver数据库错误码

    错误 严重性 是否记录事件 说明 -2 超时时间已到. 超时时间在操作完成或服务器没有响应之前已过. (Microsoft SQL Server,错误: -2). -1 在建立与服务器的连接时出错. ...

最新文章

  1. NR 5G PDCP分组数据汇聚协议
  2. element更改表格表头、行、指定单元格样式
  3. 面试题28 字符串排列
  4. ios html5上架,iOS原生集成H5+详细流程
  5. 网页修改iPhone13在线源码 – 无需SVIP
  6. 《天下无贼》经典对白
  7. PyTorch 深度学习:32分钟快速入门——ResNet
  8. Windows Server 2008R2 Web服务器
  9. 阶段3 2.Spring_04.Spring的常用注解_6 用于注入数据的注解
  10. Android 网络管理
  11. 淘宝类目批量查询工具v1.0 发布
  12. 51单片机模块化编程
  13. webmax官方动态
  14. AutoCAD二次开发——引线标注
  15. Playrix《梦想小镇》为何能成为10亿美元独角兽?
  16. 4块硬盘掉线导致服务器崩溃解决过程
  17. STM32CUBEIDE(15)----移植兆易创新SPI Nor Flash之GD25Q64Flash
  18. 剑指 Offer 42. 连续子数组的最大和(官解)
  19. 2022年康复医学治疗技术高级职称考试题库及答案
  20. Shadow框架接入遇到的一些错误解决

热门文章

  1. 【算法图解|3】JavaScript 如何实现数组去重
  2. vue中通过js控制页面样式方法
  3. 配置安全域名https申请免费证书并配置nginx运行环境
  4. HTML基础知识(常见元素、列表、链接元素、图片元素)
  5. 在Atlas服务器端实现中推荐使用Web Service而不是Page Method
  6. 39.数组中数值和下标相等的元素
  7. Azure DevOps Server (TFS)中代码文件换行问题解决方案(Git)
  8. (转)zabbix3.4使用percona-monitoring-plugins监控mysql
  9. 以A表中的值快速更新B表中记录的方法
  10. Linux下串口ttyS2,ttyS3不能用的问题解决办法