160 - 9 Andrnalin.2
来源:互联网 发布:淘宝运营策划案 编辑:程序博客网 时间:2024/06/16 04:19
环境:
Windows xp sp3
打开,这次升级了,有个Name和一个Key,输入:
Name:goodname
Key:12345678
肯定错误。拿到错误信息的字符串
查壳,无壳的VB程序。
直接OD载入,字符串搜索,找到刚刚得错误信息的字符串
00402308 UNICODE "RiCHTiG !" ;这个和之前那个一个样嘛00402327 UNICODE " RiCHTiG !!!! .... weiter mit dem N"004023C2 UNICODE "LEiDER Falsch ! "004023E1 UNICODE "Leider Falsch! Nochmal veruschen ! Wenn Du es nicht schaffen solltest, schreib mir ! Andrenalin@g"
00402176 . 66:8985 4CFFF>mov word ptr ss:[ebp-0xB4],ax ; 上面一个函数是取Name的字符的值,保存到ax0040217D . 8D55 CC lea edx,dword ptr ss:[ebp-0x34]00402180 . 8D85 44FFFFFF lea eax,dword ptr ss:[ebp-0xBC]00402186 . 52 push edx ; /var1800402187 . 8D8D 74FFFFFF lea ecx,dword ptr ss:[ebp-0x8C] ; |0040218D . 50 push eax ; |var280040218E . 51 push ecx ; |saveto80040218F . 899D 44FFFFFF mov dword ptr ss:[ebp-0xBC],ebx ; |00402195 . FF15 94414000 call dword ptr ds:[<&MSVBVM50.__vbaVarAd>; \__vbaVarAdd0040219B . 8BD0 mov edx,eax ; 这个是将当前字符的值和前面字符的值之和加起来0040219D . 8D4D CC lea ecx,dword ptr ss:[ebp-0x34]004021A0 . FFD6 call esi004021A2 . 8D4D A8 lea ecx,dword ptr ss:[ebp-0x58]004021A5 . FF15 B8414000 call dword ptr ds:[<&MSVBVM50.__vbaFreeS>; MSVBVM50.__vbaFreeStr
004021D1 .^\E9 5CFFFFFF jmp Andréna.00402132 ; 这个jmp上面的内容是将Name输入的字符都加起来,goodname是:34A,保存在[ebp-2C]中004021D6 > 8D4D CC lea ecx,dword ptr ss:[ebp-0x34]004021D9 . 8D95 54FFFFFF lea edx,dword ptr ss:[ebp-0xAC]004021DF . 51 push ecx ; /var18004021E0 . 8D45 94 lea eax,dword ptr ss:[ebp-0x6C] ; |004021E3 . 52 push edx ; |var28004021E4 . 50 push eax ; |SaveTo8004021E5 . C785 5CFFFFFF>mov dword ptr ss:[ebp-0xA4],0x499602D2 ; |004021EF . C785 54FFFFFF>mov dword ptr ss:[ebp-0xAC],0x3 ; | 004021F9 . FF15 5C414000 call dword ptr ds:[<&MSVBVM50.__vbaVarMu> ; \__vbaVarMul004021FF . 8BD0 mov edx,eax ; 上面这个Mul是将加起来的值乘以0x499602D2
上面那一段内容是算出用到的值X。
下面的内容是往X里面添加“-”,让它看上去更像Key
00402204 . FFD6 call esi 00402206 . 8B1D A0414000 mov ebx,dword ptr ds:[<&MSVBVM50.__vbaMi>; MSVBVM50.__vbaMidStmtVar0040220C . 8D4D CC lea ecx,dword ptr ss:[ebp-0x34] ; 加-0040220F . 51 push ecx00402210 . 6A 04 push 0x4 ; 位置00402212 . 8D95 54FFFFFF lea edx,dword ptr ss:[ebp-0xAC]00402218 . 6A 01 push 0x1 ; 数量0040221A . 52 push edx0040221B . C785 5CFFFFFF>mov dword ptr ss:[ebp-0xA4],Andréna.0040>; 这是"-"00402225 . C785 54FFFFFF>mov dword ptr ss:[ebp-0xAC],0x80040222F . FFD3 call ebx ; <&MSVBVM50.__vbaMidStmtVar>00402231 . 8D45 CC lea eax,dword ptr ss:[ebp-0x34] ; 同上00402234 . 8D8D 54FFFFFF lea ecx,dword ptr ss:[ebp-0xAC]0040223A . 50 push eax0040223B . 6A 09 push 0x90040223D . 6A 01 push 0x10040223F . 51 push ecx00402240 . C785 5CFFFFFF>mov dword ptr ss:[ebp-0xA4],Andréna.0040>0040224A . C785 54FFFFFF>mov dword ptr ss:[ebp-0xAC],0x800402254 . FFD3 call ebx ; 这个调用的函数和上面的一样
总结就是:
设:
输入的字符串为Name,
X是Name每一位加起来的结果
sum_1是最后计算的结果,sum_1 = X*0x499602D2 (转成10进制就是1234567890)
然后再对sum_1进行修改,在第4个数字和第9个数字位置改为“-”
于是:
Name::goodname
X = 34A
sum_1 = 1039506163380
sum_2 = 103-5061-3380
所以:
Key :103-5061-3380
0 0
- 160 - 9 Andrnalin.2
- 160 - 8 Andrnalin.1
- 160 - 11 Andrnalin.4
- 160cracked-2
- 160 - 2 Afkayas.1
- 160 - 3 Afkayas.2
- 160 - 5 ajj.2
- 160 - 7 aLoNg3x.2
- 接口2 课本160
- Codeforces Round #160 (Div. 2)
- 160
- 160---
- 160
- 160
- 160
- 160
- 160
- 160
- 测试
- leetcode-447-Number of Boomerangs
- 目前在机器学习领域异构计算得到重视,GPU占据主流位置,Fpga初现端倪,不知fpga在机器学习的前景如何?
- 新年的第十天
- CSS实现的几款不错的菜单栏
- 160 - 9 Andrnalin.2
- HDU 5616Jam's balance
- JZOJ 4058. 【JSOI2015】子集选取
- Maven项目pom.xml文件报xxx\target\classes\META-INF\MANIFEST.MF (系统找不到指定的路径)问题
- spring3.x第十章 Spring的事务管理难点剖析
- 洛谷 P1736 创意吃鱼法
- 进行异构计算时,GPU,FPGA,CPU,DSP这些平台各有什么特点?如何选择?
- qt MVC(一)
- 愿浮萍乘风破浪