Crackme 30

这里写图片描述
无壳 又是一道VB题目
用OD动态调试,寻找字符串
这里写图片描述
同时用VB Decompiler静态分析
这里写图片描述
有一个地方,静态反编译的没搞清楚

  loc_00403271: var_40 = CStr(Mid(var_28, 1, 1))
  loc_0040328E: var_44 = CStr(Mid(2000, 1, 1))
  loc_004032CD: var_38 = var_38 & Chr(Asc(var_40) xor ecx)
  loc_00403312: esi = 00000001h + 1
  loc_00403319: 00000001h = 00000001h + 00000001h

到最后动态调试,调出来了猫腻
这里写图片描述
这里是循环name的长度次
每次有个异或,我输入的name:123456 serial:12345

string  32 30  30  30  32  30  
name    31 32  33  34  35  36
xor     3  2    3   4   7   6  

看出来了是字符串“2000”循环与name字符串异或
写出exploit

name = "qBQSYdXUe_B\V"
string = "2000"
i = 0
s = ''
for char in name:
    s += chr(ord(char)^ord(string[i%4]))
    i += 1
print s

这里写图片描述
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值