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

📄 lesson1401.htm

📁 为所有对破解感兴趣的朋友准备的礼物。希望大家能够喜欢。
💻 HTM
字号:
<html>
<head>
<title>看雪学苑</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">
<!--
.p8 {  font-size: 8pt}
.p9 {  font-size: 9pt}
a:hover {  color: #00FF00}
a {  text-decoration: none; color: #3333CC}
.p12 {  font-size: 12pt; font-weight: bold; color: #FF3333}
-->
</style>
</head>

<body bgcolor="#FFFFFF" text="#000000" link="#000000" vlink="#000000" alink="#000000">
<a name="top"></a> 
<script src="fubiao.js" tppabs="http://toye.dihou.org/img/fubiao.js"></script>
<table width="80%" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="#99CCFF" bordercolorlight="#99CCFF" bordercolordark="#99CCFF">
  <tr> 
    <td width="72%" class="p9"><a href="javascript:if(confirm('http://toye.yeah.net/  \n\n这个文件不能通过 Teleport Pro 取回, 因为 它被访问于一个域或在它的起始地址边界外部的路径上.  \n\n你想从服务器打开它吗?'))window.location='http://toye.yeah.net/'" tppabs="http://toye.yeah.net/">看雪教学</a></td>
    <td width="10%" class="p9">&nbsp; </td>
    <td width="10%"><a href="index.htm" tppabs="http://toye.dihou.org/index.htm" class="p9">返回<br>
      首页 <br>
      </a></td>
    <td width="8%"><a href="molu.htm" tppabs="http://toye.dihou.org/molu.htm" class="p9">返回<br>
      目录 </a></td>
  </tr>
</table>
<table width="80%" cellspacing="0" cellpadding="0" align="center">
  <tr bgcolor="#FFFF33"> 
    <td> 
      <div align="center"><span class="p"><b><font color="#FF3333" class="p11">第十课 
        crack常见技巧</font></b></span></div>
    </td>
  </tr>
</table>
<table border="1" width="80%" cellpadding="0" bordercolor="#86D8FF" bgcolor="#FBFDFF" align="center">
  <tr> 
    <td width="50%" valign="middle" align="center" class="p9" height="20"> 
      <div align="left"><span class="p9"><span class="p9">1、<font color="#FF3366">一些常用方法</font></span></span></div>
    </td>
    <td width="50%" valign="top" class="p9" height="20"> 
      <div align="left"><span class="p9"><span class="p9">5、<a href="lesson1406.htm" tppabs="http://toye.dihou.org/lesson1406.htm">Key 
        File保护</a></span></span></div>
    </td>
  </tr>
  <tr> 
    <td width="50%" valign="middle" align="center" class="p9" height="20"> 
      <div align="left"><span class="p9"><span class="p9">2、<span class="p9"><span class="p9"><a href="lesson1402.htm" tppabs="http://toye.dihou.org/lesson1402.htm">序列号方式</a></span></span></span></span></div>
    </td>
    <td width="50%" valign="top" class="p9" height="20"><span class="p9"><span class="p9">6、<span class="p9"><span class="p9"><a href="lesson1407.htm" tppabs="http://toye.dihou.org/lesson1407.htm">功能限制的程序</a></span></span> </span></span></td>
  </tr>
  <tr> 
    <td width="50%" valign="middle" align="center" class="p9" height="20"> 
      <div align="left"><span class="p9"><span class="p9">3、<a href="lesson1403.htm" tppabs="http://toye.dihou.org/lesson1403.htm">NAG方式(警告窗口)</a></span></span></div>
    </td>
    <td width="50%" valign="top" class="p9" height="20"><span class="p9"><span class="p9">7、<a href="lesson1408.htm" tppabs="http://toye.dihou.org/lesson1408.htm">InstallSHIELD 
      Setups </a></span></span></td>
  </tr>
  <tr> 
    <td width="50%" valign="middle" align="center" class="p9" height="20"> 
      <div align="left"><span class="p9"><span class="p9">4、<a href="lesson1404.htm" tppabs="http://toye.dihou.org/lesson1404.htm">运行时间限制</a></span></span></div>
    </td>
    <td width="50%" valign="top" class="p9" height="20">8、<a href="lesson1410.htm" tppabs="http://toye.dihou.org/lesson1410.htm">CD-check</a></td>
  </tr>
</table>
<p align="center" class="p9"><span class="p9"><span class="p9">1、<span class="p9">一些常用方法</span></span></span></p>
<p align="left" class="p9"><b><font color="#000000">1、利用S命令查找字符串</font></b><br>
  <br>
  S命令是在在内存中搜寻特定数据,很常用,其一般格式:<br>
  <b>S [-<font color="#FF6666">cu</font>][<font color="#FF3366">address</font> 
  L <font color="#FF6666">length</font> <font color="#FF3366">data-list</font>]</b><br>
  <font color="#FF0099">address</font>  :搜索的起始地址<br>
  <font color="#FF3366">length </font>  :搜索的长度(字节长)<br>
  <font color="#FF3366">data-list</font> :可以是一系列字节,也可以是字符串, 字符串可以用单引号,也可以用双引号括住.<br>
  <font color="#FF6666">-c </font>    :使查找区分大小写<br>
  <font color="#FF3333">-u</font>     :查找Unicode 编码的字符串. </p>
<p align="left" class="p9">例: <br>
  S 0 L FFFFFFFF 'string' (从0到FFFFFFFF找'string')<br>
  S 0 L FFFFFFFF 42,75,4C,4C 65 54 (查找十六进制串42754C4C6554)<br>
  S 30:0 L ffffffff 'string' 这条命令是在整个4GB虚拟地址范围里搜寻字符串 'string'</p>
<p align="left" class="p9"><font color="#3333FF">在此例中30:0中的“0030”是什么意思?</font></p>
<p align="left" class="p9">在win的保护模式下CS,DS,ES,FS,GS不叫段寄存器,叫段选择器! 在保护模式中,内存分为了好多的段,在trw下用gdt就可以看到段的<span class="p9">编号,类型,开始物理地址,SIZE,属性。让我们看看编号0030是什么东西! 
  </span></p>
<table width="80%" cellspacing="0" bgcolor="#E6E6F4">
  <tr> 
    <td width="19%"> 
      <div align="center"><span class="p9">编号</span></div>
    </td>
    <td width="12%"> 
      <div align="center"><span class="p9">类型</span></div>
    </td>
    <td width="26%"> 
      <div align="center"><span class="p9">开始物理地址</span></div>
    </td>
    <td width="23%"> 
      <div align="center"><span class="p9">SIZE</span></div>
    </td>
    <td width="20%"> 
      <div align="center"><span class="p9">属性</span></div>
    </td>
  </tr>
  <tr> 
    <td width="19%"> 
      <div align="center"><span class="p9">0030</span></div>
    </td>
    <td width="12%"> 
      <div align="center"><span class="p9">data32</span></div>
    </td>
    <td width="26%"> 
      <div align="center"><span class="p9">0000000</span></div>
    </td>
    <td width="23%"> 
      <div align="center"><span class="p9">FFFFFFFF</span></div>
    </td>
    <td width="20%"> 
      <div align="center"><span class="p9">0ewa</span></div>
    </td>
  </tr>
</table>
<p><span class="p9"> 这个段是32位数据类型,长度为4G ,我们还可以看到很多的段,它们有可能会指向同一个物理地址,但它们的类型,属性可能不同! 
  如一些段指向的地址是不可读写的,但另外一个段指向的同一物理地址是可读写的! 如果我们通过不可写的那段的编号放到段选择器,然后进行读写操作,肯定死掉了。 
  但换了另外一个段对同一个地方读写那就没问题! 保护模式的内存管理挺有趣的,大家不妨看看这方面的书! (D.Boy) </span></p>
<p align="left" class="p9"><b>2、如何比较两文件的不同</b><br>
  <br>
  2.1、用Wdasm反来后,用ultraedit来比较;<br>
  <br>
  2.2、用hex workshop 3.0来直接比较两EXE;<br>
  <br>
  2.3、你也可用补丁制作工具CodeFusion 3.0来比较两文件,具体参考补本制作一课。<br>
  <br>
  等等; </p>
<p align="left" class="p9"><b>3、如何截取汇编文本代码</b><br>
  <br>
  3.1 SOFTICE 第一步运行SOFTICE的symbol loader快捷方式,打开菜单的“SoftICE initialisation settings”选项。将历史缓冲区(history 
  buffer)调大些(默认为256,不能放足够多的缓冲数据)。然后切换到SOFTICE调试画面下,来到你要抓取的地方,反汇编这些代码,如:U CS:EIP 
  L 1000 ,立即按CTRL+D返回到windows环境,再次来到symbol loader程序,选择File/Save SoftICE History 
  As ... 。<br>
  <br>
  3.2 在SOFTICE基础下,装载Icedump 6.016,用:/Screendump抓取。 不加参数命令:/Screendump 选取模式,重复执行,会在0、1、2、3、4五种模式下转换。 
  模式1(默认)是以文本方式存盘,模式2是以HTML文件存盘。其它的请参考其readme. 模式选好后,就可用命令: /SCREENDUMP [路径]文件名 
  抓取整个SOFTICE的屏幕。<br>
  <br>
  3.3 在TRW2000下:u 401000,402000 >myfile或 u 401000 L 100 >myfile <br>
  <br>
  3.4 用W32DASM反汇编后截取,具体参考第八课。 </p>
<p align="left" class="p9"><b>4、充分利用条件中断</b><br>
  <br>
  4.1 在SOFTICE下: BPX &lt;APIName&gt; &lt;Condition&gt; 或 &lt;COMMAND&gt; DO &quot;&lt;COMMAND&gt;&quot;<br>
  如:bpx GetWindowTexta if EAX==00000008 // 当 EAX=8中断GetWindowTexta<br>
    BPX GetWindowTexta do &quot;x&quot;// 当 GetWindowTexta被中断SOFTICE自动回到windows界面。<br>
    BPX GetWindowTexta do &quot;d EAX&quot;// 当 GetWindowTexta被中断,自动显示EAX的值。 <br>
  <br>
  4.2 在TRW2000下: BP?? <parameters> [IF (conditions)] [DO "statement"] <br>
  如:g if ((byte)*eip==c2&&eip>401000&&al==ff) <br>
    bpx loadlibrarya do "dd *(esp+4)" (注:该命令需在TRW2000 1.22版以上)<br>
</p>
<p align="left" class="p9"><b>5、利用宏来可方便平时的操作</b><br>
  <br>
  如我们经常把GetDlgItemText/GetDlgItemTextA/GetWindowText/GetWindowTextA同时设断,这样 SoftICE 
  就一定会拦住(至少在初级阶段是这样).这些是最常使用的 BPX,几乎对所有的程序都有效.我们可以在winice.dat里加上这一宏命令:<br>
  MACRO bpxgeta="bpx GetDlgItemTextA; bpx getwindowtexta; bpx getdlgitemint; bpx 
  getdlgitemtext;"<br>
  以后,只要下命命令令:bpxgeta就可。 <br>
</p>
<p align="left" class="p9"><b>6、其它一些技巧</b><br>
  <br>
  例:用两行指令设置EAX为1.<br>
  ①XOR EAX,EAX // 设置EAX为0<br>
   MOV EAX,00000001 //把1放到EAX<br>
  ②XOR EAX,EAX // 设置EAX为0<br>
   INC EAX // EAX加1<br>
  ③PUSH 00000001 // Push 1进栈<br>
   POP EAX // 出栈1到EAX</p>
<p align="left" class="p9"><b>7、NOP指令</b><br>
  <br>
  尽量少用NOP指令补丁原程序,除非实在必要。可用其它更好的方法代替,如:INC EAX, DEC EAX 可替代两个NOP指令等。 </p>
<p align="left" class="p9">最后特别感谢RuFeng帮助。</p>
<table width="80%" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="#99CCFF" bordercolorlight="#99CCFF" bordercolordark="#99CCFF">
  <tr> 
    <td width="82%" class="p8" height="34">Copyright @看雪 2000 All rights reserved 
        <a href="mailto:toye@126.com">与我联系</a></td>
    <td width="10%" class="p9" height="34"><a href="index.htm" tppabs="http://toye.dihou.org/index.htm">返回<br>
      首页</a></td>
    <td width="8%" class="p8" height="34"><a href="molu.htm" tppabs="http://toye.dihou.org/molu.htm" class="p9">返回<br>
      目录</a></td>
  </tr>
</table>
<p> </p>
</body>
</html>

⌨️ 快捷键说明

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