美文网首页
【每日一个小程序】crackme之009

【每日一个小程序】crackme之009

作者: Sund4y | 来源:发表于2017-07-18 16:19 被阅读0次

    查壳发现vb语言写的,未加壳

    拖入od运行找消息弹窗函数显示调用就不说了,找到关键跳nop掉

    ================================================================================================

    寻找注册码

    这里借助的软件是VB decompiler

    找到关键代码

    Private Sub Command1_Click() '401FF0

    loc_00402092: var_58 = Text2.Text                 //输入的用户名

    loc_004020CA: var_44 = var_58

    loc_00402126: For var_24 = 1 To Len(var_44) Step 1      //循环开始

    loc_00402132:

    loc_00402134: If var_108 = 0 Then GoTo loc_004021D6

    loc_00402169: var_58 = CStr(Mid(var_44, CLng(var_24), 1))       //逐个取出输入的字符串

    loc_00402176: var_B4 = Asc(var_58)                                               //求出ascii码

    loc_004021A0: var_34 = var_34 + Asc(var_58)                              //加到var_34中

    loc_004021CB: Next var_24

    loc_004021D1: GoTo loc_00402132

    loc_004021D6: 'Referenced from: 00402134    

    loc_00402204: var_34 = var_34 * 1234567890                   //循环结束后把结果转换十进制乘1234567890

    loc_0040222F: call ebx(8, 00000001h, 00000004h, var_34, var_108, var_118, Me, undef 'Ignore this '__vbaFreeVarList, %ecx = %S_edx_S, 004041A0h)

    loc_00402254: call ebx(8, 00000001h, 00000009h, var_34)

    loc_00402276: var_58 = Text1.Text

    loc_00402298: var_64 = var_58

    loc_004022CB: If (var_58 = var_34) = 0 Then GoTo loc_00402391

    loc_004022D1: Beep

    loc_00402308: var_B4 = "RiCHTiG !"

    loc_00402327: var_A4 = "  RiCHTiG !!!!  ....  weiter mit dem Nächsten !!!"

    loc_00402374: var_54 = MsgBox("  RiCHTiG !!!!  ....  weiter mit dem Nächsten !!!", 48, "RiCHTiG !", 10, 10)

    loc_0040238C: GoTo loc_00402446

    loc_00402391: 'Referenced from: 004022CB

    loc_004023C2: var_B4 = "LEiDER Falsch !  "

    loc_004023E1: var_A4 = "Leider Falsch!  Nochmal veruschen ! Wenn Du es nicht schaffen solltest, schreib mir !  Andrenalin@gmx.net"

    loc_0040242E: var_54 = MsgBox("Leider Falsch!  Nochmal veruschen ! Wenn Du es nicht schaffen solltest, schreib mir !  Andrenalin@gmx.net", 16, "LEiDER Falsch !  ", 10, 10)

    loc_00402446: 'Referenced from: 0040238C

    loc_00402459: GoTo loc_0040248F

    loc_0040248E: Exit Sub

    loc_0040248F: 'Referenced from: 00402459

    loc_004024C0: GoTo loc_00esi

    End Sub

    发现输入后注册码不对,再来到OD

    发现在__vbaVarMul(乘法)函数后面还有__vbaMidStmtVa函数看了writeup是插入字符的函数,下面有push 0x4 和push 0x9应该就是这两个地方了。把第四个和第九个字符换为”-“就是正确的注册码了

    相关文章

      网友评论

          本文标题:【每日一个小程序】crackme之009

          本文链接:https://www.haomeiwen.com/subject/lqshkxtx.html