⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chap7-4-10.htm.primary

📁 加密与解密,软件加密保护技术与解决方案,看雪文档!
💻 PRIMARY
📖 第 1 页 / 共 4 页
字号:
<p> <span class="p9"><font face="Times New Roman" color="#000000">..&nbsp;&nbsp;&nbsp;__________</font> 
  <font face="宋体" color="#000000">剪断</font> <font face="Times New Roman" color="#000000">__________</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">..</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:0040443B&nbsp;&nbsp;51&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PUSH&nbsp;&nbsp;&nbsp;&nbsp;ECX</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:0040443C&nbsp;&nbsp;FF15E8104000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CALL&nbsp;&nbsp;&nbsp;&nbsp;[MSVBVM60!__vbaVarForNext]</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:00404442&nbsp;&nbsp;EBAF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JMP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;004043F3&nbsp;&nbsp;&lt;--</font> 
  <font face="宋体" color="#000000">返回小循环</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:00404444&nbsp;&nbsp;8D95A4FEFFFF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LEA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EDX,[EBP-015C]</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">..</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">..&nbsp;&nbsp;&nbsp;__________</font> 
  <font face="宋体" color="#000000">剪断</font> <font face="Times New Roman" color="#000000">___________</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">..</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:00404455&nbsp;&nbsp;51&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PUSH&nbsp;&nbsp;&nbsp;&nbsp;ECX</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:00404456&nbsp;&nbsp;FF15E8104000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CALL&nbsp;&nbsp;&nbsp;&nbsp;[MSVBVM60!__vbaVarForNext]</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:0040445C&nbsp;&nbsp;E930FFFFFF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JMP&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00404391&nbsp;&nbsp;&lt;--</font> 
  <font face="宋体" color="#000000">返回大循环</font> </span></p>
<p> </p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">此时你把中断给清掉,如果你按</font> <font face="Times New Roman" color="#000000">F10</font> 
  <font face="宋体" color="#000000">运行,会发现你在这段代码会一周一周运行很长时间</font> <font face="Times New Roman" color="#000000">....</font> 
  </span></p>
<p> </p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">**</font> <font face="宋体" color="#000000">那就是我怎么发现这部分是防</font> 
  <font face="Times New Roman" color="#000000">SmartCheck</font> <font face="宋体" color="#000000">的代码了。</font> 
  </span></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">参考上面的代码,你将注意我标上的两个循环,一个小的,一个大的。小的在大的里面。</font> 
  </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">如果你在</font> <font face="Times New Roman" color="#000000">004043F5</font> 
  <font face="宋体" color="#000000">跳出小循环,你将进入大循环,而大循环再次将你带入小循环。因此解决办法是在</font> 
  <font face="Times New Roman" color="#000000">00404393</font> <font face="宋体" color="#000000">处跳出大循环。</font> 
  </span></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">现在你想想,如果我们能在</font> <font face="Times New Roman" color="#000000">00404393</font> 
  <font face="宋体" color="#000000">处跳出大循环,就能用</font> <font face="Times New Roman" color="#000000">SmartCheck</font> 
  <font face="宋体" color="#000000">跟踪它了。好让我们将:</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">:00404393&nbsp;&nbsp;0F84C8000000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JZ&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00404461&nbsp;&nbsp;&lt;--</font> 
  <font face="宋体" color="#000000">跳出此大循环</font> </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">改成:</font> <font face="Times New Roman" color="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0F85C8000000&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JNZ&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00404461</font> 
  </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">这样就不躲过这段循环了吧吗?</font> </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">哈哈,用十六进制工具,修改</font> <font face="Times New Roman" color="#000000">CrackMe</font> 
  <font face="宋体" color="#000000">主文件</font> <font face="Times New Roman" color="#000000">&nbsp;</font> 
  <font face="宋体" color="#000000">,将</font> <font face="Times New Roman" color="#000000">0F84C8000000</font> 
  <font face="宋体" color="#000000">改成</font> <font face="Times New Roman" color="#000000">0F85C8000000</font> 
  <font face="宋体" color="#000000">。记得备份一下。</font> </span></p>
<p> </p>
<p> </p>
<p align="center"> <font color="#000000"><b><span class="p9"><font face="Times New Roman">&nbsp;&nbsp;&nbsp;</font> 
  <font face="宋体">还我自尊,</font> <font face="Times New Roman">SmartCheck</font> 
  <font face="宋体">再现江湖</font> </span></b></font></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">用</font> <font face="Times New Roman" color="#000000">SmartCheck</font> 
  <font face="宋体" color="#000000">重新装载该软件,键入</font> <font face="Times New Roman" color="#000000">12121,</font> 
  <font face="宋体" color="#000000">点击</font> <font face="Times New Roman" color="#000000">&quot;Check&nbsp;it&quot;</font> 
  <font face="宋体" color="#000000">。马上蹦出</font> <font face="Times New Roman" color="#000000">&quot;Sorry&nbsp;tyr&nbsp;again&quot;</font> 
  <font face="宋体" color="#000000">,这时你的微机不会发疯了</font> <font face="Times New Roman" color="#000000">:-</font> 
  <font face="宋体" color="#000000">)</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">现在点击</font> <font face="Times New Roman" color="#000000">Command1_Click&nbsp;</font> 
  <font face="宋体" color="#000000">前的</font> <font face="Times New Roman" color="#000000">&quot;+&quot;</font> 
  <font face="宋体" color="#000000">展开它,你你看到很多很多的</font> <font face="Times New Roman" color="#000000">Len</font> 
  <font face="宋体" color="#000000">、</font> <font face="Times New Roman" color="#000000">Asc</font> 
  <font face="宋体" color="#000000">、</font> <font face="Times New Roman" color="#000000">Hex$&nbsp;</font> 
  <font face="宋体" color="#000000">和</font> <font face="Times New Roman" color="#000000">&nbsp;Mid$</font> 
  <font face="宋体" color="#000000">,这都是些处理你输入的序列号基本命令。</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">我解释一下:</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Len&nbsp;-&nbsp;</font> 
  <font face="宋体" color="#000000">得到字符串的长度</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Asc&nbsp;-&nbsp;</font> 
  <font face="宋体" color="#000000">转换字符为</font> <font face="Times New Roman" color="#000000">ascii</font> 
  <font face="宋体" color="#000000">的十进制</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Hex$&nbsp;-&nbsp;</font> 
  <font face="宋体" color="#000000">转换字符为十六进制</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Mid$&nbsp;-&nbsp;STRING</font> 
  <font face="宋体" color="#000000">类型转换</font> <font face="Times New Roman" color="#000000">CHAT</font> 
  <font face="宋体" color="#000000">类型</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">UCase$&nbsp;-&nbsp;</font> 
  <font face="宋体" color="#000000">将小写字母转换为大写字母</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">看看</font> <font face="Times New Roman" color="#000000">Command1_Click</font> 
  <font face="宋体" color="#000000">里的这些信息,找找感觉</font> <font face="Times New Roman" color="#000000">...</font> 
  </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">你注意到它们都是些重复内容</font> <font face="Times New Roman" color="#000000">...</font> 
  <font face="宋体" color="#000000">因此我们找些不同的,暂时,我们不用</font> <font face="Times New Roman" color="#000000">&quot;Show&nbsp;All&nbsp;Events&quot;</font> 
  <font face="宋体" color="#000000">此招。</font> </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">在</font> <font face="Times New Roman" color="#000000">Command1_Click</font> 
  <font face="宋体" color="#000000">附近你会发现:</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Len(String:&quot;12121&quot;)&nbsp;returns&nbsp;LONG:5</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">...</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Mid$(String:&quot;12121&quot;,long:?,VARIANT:Integer:1)</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Mid$(String:&quot;12121&quot;,long:?+1,VARIANT:Integer:1)</font> 
  </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">哪处?长度由</font> <font face="Times New Roman" color="#000000">1</font> 
  <font face="宋体" color="#000000">到</font> <font face="Times New Roman" color="#000000">5</font> 
  <font face="宋体" color="#000000">?</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">**</font> <font face="宋体" color="#000000">如果你在这儿选择</font> 
  <font face="Times New Roman" color="#000000">show&nbsp;all&nbsp;event</font> 
  <font face="宋体" color="#000000">,会发现每个字符同它下一个依次比较。</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">继续,在几行后(实际重复</font> <font face="Times New Roman" color="#000000">3</font> 
  <font face="宋体" color="#000000">次)</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Text1.Text</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Len(String:&quot;12121&quot;)&nbsp;returns&nbsp;LONG:5</font> 
  </span></p>
<p> </p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">**</font> <font face="宋体" color="#000000">它的作用是取得你输入序列号的长度</font> 
  </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">为什么会运行</font> <font face="Times New Roman" color="#000000">3</font> 
  <font face="宋体" color="#000000">次?不管那么多了。</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="宋体" color="#000000">然后在那儿</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Left(VARIANT:VT_DISPATCH:.....,&nbsp;long:1)</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Asc(String:&quot;1&quot;)&nbsp;returns&nbsp;Integer:49</font> 
  </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">**</font> <font face="宋体" color="#000000">这里是取你输入的序列号第</font> 
  <font face="Times New Roman" color="#000000">1</font> <font face="宋体" color="#000000">个字符并转换成十进制。</font> 
  <font face="Times New Roman" color="#000000">&quot;1&quot;</font> <font face="宋体" color="#000000">字符的十进制是</font> 
  <font face="Times New Roman" color="#000000">49</font> <font face="宋体" color="#000000">。它会在</font> 
  <font face="Times New Roman" color="#000000">Command1_Click</font> <font face="宋体" color="#000000">里重复许多次,因此你很容易发现它。</font> 
  </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">你会看到许多</font> <font face="Times New Roman" color="#000000">Hex$</font> 
  <font face="宋体" color="#000000">,其中从上到下,有一处结果为</font> <font face="Times New Roman" color="#000000">245</font> 
  <font face="宋体" color="#000000">(下面有</font> <font face="Times New Roman" color="#000000">5</font> 
  <font face="宋体" color="#000000">处的结果都为</font> <font face="Times New Roman" color="#000000">245,</font> 
  <font face="宋体" color="#000000">我们都要进去分析)。</font> </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">具体这样:</font> </span></p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Hex$(VARIANT:Long:245)</font> 
  </span></p>
<p> <span class="p9"><font face="宋体" color="#000000">嗯?</font> <font face="Times New Roman" color="#000000">245</font> 
  <font face="宋体" color="#000000">哪里来的??</font> </span></p>
<p> </p>
<p> <span class="p9"><font face="Times New Roman" color="#000000">Ok.</font> <font face="宋体" color="#000000">选中这行,然后选择</font> 
  <font face="Times New Roman" color="#000000">&quot;Show&nbsp;All&nbsp;Events&quot;...</font> 
  </span></p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -