通过视频学习,实现了一下简单的traceme爆破。这不是把它的序列号破译出来,只是识别了自己的号码,不算真正的爆破。(与期望有点差异)
先来看一下这款软件的逻辑结构。
先输入用户名 以及序列号
然后检验check
错误就再来一次 就是循环。
然后就是利用OD软件先载入下文件
然后按F8一步步查看,或者呢
之前看视频直接输入了GetDlgItemTextA找到了测试序列号的地方(不知道是什么意思,反正暂时先记着,之后慢慢学习~~~)
到达一个需要执行的地方,设置一个断点,点击check 进入里面的算法。
然后继续按F8 慢慢查看,会发现有用的东西
dword ptr [esp+4c]是存放用户名的地址,下面的序列号也是同理 push就是进栈,那俗话说就是把用户名压进去,接着F8往下走,出现一个跳转
它是跳转已经实现,那它上面一步呢是test eax,eax 这个呢就是你进去的用户名和序列号,它返回的是0000000,也就是错的。(肯定是错的咯)。所以这个跳转呢,我加了断点,它肯定是有问题的,如果不跳是不是就不判错了呢?然后我继续F8,走下去看看。
果然没过多久,它就跳错了。
那我ctrl+f2 重新整理下 F9至断点处,修改nop 不让它跳
然后继续执行
果然 就成功了。
时间: 2024-12-06 07:55:11