160 - 11 Andrnalin.4
環境:
Windows xp sp3
打開,這次的界面炫酷多了,就像輸保險箱密碼。
旁邊一個“UNREGISTRIERT”表示還沒注冊
輸入個666666,沒反應又沒有確認按鈕,可以猜測是用timer來檢測輸入的正確性
查殼,無殼的VB程序
OD載入,繼續是查字符串:
00404A6B mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E747D7AFF7C7F82836D74RR7A7F7E7B7C7D826D81KE7B7C" 00404AA3 push Andréna.00401EBC UNICODE "REGISTRIERT" 00404C88 mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E747D7A7D7C7F82836D74747A7F7E7G7C7D826D817E7B7C" 00404CC0 push Andréna.00401EBC UNICODE "REGISTRIERT" 00404EA5 mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "Q817E747D7AFF7C7F82836D74RR7A7F7E7B7C7D826D81KEZB7C" 00404EDD push Andréna.00401EBC UNICODE "REGISTRIERT" 004050C2 mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E747D7AFP7C7F82836D74RR7A7F7E7B7C7D826D81KE7B7C" 004050FA push Andréna.00401EBC UNICODE "REGISTRIERT" 004052DF mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E747G7AFF7C7F82836D74RR7A7F7E7B7C7D826D81KE7B7C" 00405317 push Andréna.00401EBC UNICODE "REGISTRIERT" 004054FC mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E747D" 00405534 push Andréna.00401EBC UNICODE "REGISTRIERT" 00405719 mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E7WOD7AFF7C7F82836D74RR7A7F7E7B7C7D826D81KE7B7C" 00405751 push Andréna.00401EBC UNICODE "REGISTRIERT" 00405936 mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "http://beam.to/cugABCDEFGHIJKLMNOPQRSTUVWXYZ1234567" 0040596E push Andréna.00401EBC UNICODE "REGISTRIERT" 00405B53 mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E747D7AFF7C7F82836D74RR7A7F7E7B7C7D826D8KKE7B7C" 00405B8B push Andréna.00401EBC UNICODE "REGISTRIERT" 00405D70 mov dword ptr ss:[ebp-0xAC],Andréna.004 UNICODE "0817E747$7AFF7C7F82836D74RR7A7F7E7B7C7D826D81KE7B7C" 00405DA8 push Andréna.00401EBC UNICODE "REGISTRIERT" 省略下面內容...這么多個注冊,隨便跟一個進去:
00404C7D ? > \8D45 CC ? ? ? lea eax,dword ptr ss:[ebp-0x34] 00404C80 ? . ?8D8D 4CFFFFFF lea ecx,dword ptr ss:[ebp-0xB4] 00404C86 ? . ?50 ? ? ? ? ? ?push eax ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ; /var18 00404C87 ? . ?51 ? ? ? ? ? ?push ecx ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ; |var28 00404C88 ? . ?C785 54FFFFFF>mov dword ptr ss:[ebp-0xAC],Andréna.0040>; |UNICODE "0817E747D7A7D7C7F82836D74747A7F7E7G7C7D826D817E7B7C" 00404C92 ? . ?C785 4CFFFFFF>mov dword ptr ss:[ebp-0xB4],0x8008 ? ? ? ; | 00404C9C ? . ?FF15 5C104000 call dword ptr ds:[<&MSVBVM60.__vbaVarTs>; \__vbaVarTstEq 00404CA2 ? . ?66:85C0 ? ? ? test ax,ax ; 這個很樣子很熟悉吧 00404CA5 ? . ?74 4C ? ? ? ? je XAndréna.00404CF3 00404CA7 ? . ?8B45 08 ? ? ? mov eax,dword ptr ss:[ebp+0x8] 00404CAA ? . ?50 ? ? ? ? ? ?push eax 00404CAB ? . ?8B10 ? ? ? ? ?mov edx,dword ptr ds:[eax] 00404CAD ? . ?FF92 38030000 call dword ptr ds:[edx+0x338] 00404CB3 ? . ?50 ? ? ? ? ? ?push eax 00404CB4 ? . ?8D45 AC ? ? ? lea eax,dword ptr ss:[ebp-0x54] 00404CB7 ? . ?50 ? ? ? ? ? ?push eax 00404CB8 ? . ?FF15 3C104000 call dword ptr ds:[<&MSVBVM60.__vbaObjSe>; ?MSVBVM60.__vbaObjSet 00404CBE ? . ?8B08 ? ? ? ? ?mov ecx,dword ptr ds:[eax] 00404CC0 ? . ?68 BC1E4000 ? push Andréna.00401EBC ? ? ? ? ? ? ? ? ? ?; ?UNICODE "REGISTRIERT"又是通過輸入的內容來計算一個值,然后和那一大串字符進行比較。
關鍵這個值是怎么來的,這次不能“goodname”了,那就“123456789”,在[ebp-2c]就可以看到你輸入的內容計算出來的值了。
居然是“032333435363738393A”,居然只是轉成16進制然后在前加個0而已。這樣的話搞不到一個“81”出來啊,試一下
“987654321”,結果還是一樣。那就應該和那兩個“*”“#”有關了。換成“1#23456789”和“1*23456789”還是沒有“81”出來。
那就“9*87654321”吧,這次居然不一樣了,變成了“042341403F3E3D3C3B3A”,那“98*7654321”計算出來的結果又太大了。
終于,“87*654321”搞出一個“08F”來,這樣就可以猜出來,還是通過映射出來的字符串與字符串進行比較。映射出來的字符串
可以肯定是16進制范圍的,也就是“0-F”。仔細觀察用來比較的字符串,符合規定的只有兩個:
004065E4 "0817E747D7A7D7C7F82836D74747A7F7E7B7C7D826D817E7B7C“ 004054FC “0817E747D”但是短的那個是不行的,至于原因不清楚,猜測應該是有個長度要求。
映射關系可以通過多次輸入的出(我覺得比看程序更有意思):
1 ? ? 7B ? ? ? 5 ? ?7F ? ? ?9 ? ? ?83
2 ? ? 7C ? ? ? 6 ? ?80 ? ? ?* ? ? ?74
3 ? ? 7D ? ? ? 7 ? ?81 ? ? ?# ? ? ?6D
4 ? ? 7E ? ? ? 8 ? ?82 ? ? ?0 ? ? ?7A
參照這個表,對著上面[004065E4]的內容,就可以得出:
74*3032589#**0541238#7412
總結
以上是生活随笔為你收集整理的160 - 11 Andrnalin.4的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 160 - 10 Andrénalin.
- 下一篇: 调试九法(第1次阅读)