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

📄 chap6-1-21.htm.primary

📁 加密与解密,软件加密保护技术与解决方案,看雪文档!
💻 PRIMARY
📖 第 1 页 / 共 3 页
字号:
<html>
<head>
<title>Crack Tutorial</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="style/css.css" type="text/css">
<link rel="stylesheet" href="../STYLE/Css.css" type="text/css">
</head>

<body bgcolor="white" text="#000000" link="#004080" vlink="#004080" background="../image/Back.gif">
<p><a href="../catalog.htm">目录</a>>>第6章</p>
<p align="center" class="shadow1Copy"><b class="p3">第6章 软件保护技术</b></p>
<table width="80%" border="0" cellspacing="0" cellpadding="3" align="center" bgcolor="#bcbcbc" bordercolor="#111111" class="shadow1">
  <tr> 
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-1.htm"><font color="#FFFFFF">第一节 常见保护技巧</font></a></div>
    </td>
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-2.htm"><font color="#FFFFFF">第二节 反跟踪技术</font></a></div>
    </td>
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-3.htm"><font color="#FFFFFF">第三节 加密算法</font></a></div>
    </td>
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-4.htm"><font color="#FFFFFF">第四节 软件保护建议</font></a></div>
    </td>
  </tr>
</table>
<p align="center"><span class="p9"><b>第一节 常见保护技巧</b></span></p>
<table border="1" width="80%" cellpadding="5" bordercolor="#111111" bgcolor="#efefef" align="center" cellspacing="0">
  <tr> 
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center" class="p"><span class="p9"><span class="p9">1、<a href="Chap6-1-1.htm">序列号方式</a> </span></span></div>
    </td>
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center">2、<a href="Chap6-1-2.htm">警告(NAG)窗口</a></div>
    </td>
    <td width="34%" valign="top" class="p9" height="23"> 
      <div align="center"><span class="p9">3、<a href="Chap6-1-3.htm">时间限制</a></span></div>
    </td>
  </tr>
  <tr> 
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center">4、<a href="Chap6-1-4.htm">Key File保护</a></div>
    </td>
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center">5、<a href="Chap6-1-5.htm">功能限制的程序</a> </div>
    </td>
    <td width="34%" valign="top" class="p9" height="23"> 
      <div align="center">6、<a href="Chap6-1-6.htm">CD-check</a></div>
    </td>
  </tr>
</table>
<p align="center"><span class="p9"><span class="p9"><b>2、<a href="Chap6-1-2.htm">警告(NAG)窗口</a></b> <span class="p9"><span class="p9"><span class="p9"><span class="p9"><span class="p9"><span class="p9"><span class="p9"><span class="p9"><span class="p9"><font color="#FF3366">【习题】</font></span></span></span></span></span></span></span></span></span></span></span></p>
<p align="left"><b><span class="p9">1、习题一</span></b><span class="p9"> <a href="Exercise/section02/chap6-1-2-01.zip">chap6-1-2-01</a> 
  157K NAG 易</span></p>
<p align="left"><b><span class="p9">2、习题二</span></b><span class="p9"> <a href="Exercise/section02/chap6-1-2-02.zip">chap6-1-2-02</a> 
  2K NAG 易</span></p>
<p align="left"><b><span class="p9">3、习题三 </span></b><span class="p9"><a href="Exercise/section02/chap6-1-2-03.zip">chap6-1-2-03</a> 
  9K NAG 中</span></p>
<p align="left"><b><span class="p9">4、习题四 </span></b><span class="p9"><a href="Exercise/section02/chap6-1-2-04.zip">chap6-1-2-04</a> 
  23K NAG 中(需<a href="Exercise/cw3220.zip">cw3220.dll</a>)</span></p>
<p align="left"><b><span class="p9">5、习题五</span></b><span class="p9"> <a href="Exercise/section02/chap6-1-2-05.zip">chap6-1-2-05 
  </a>193K NAG 中</span></p>
<p align="left"> 
  <script language="JavaScript1.2">
NS4 = (document.layers) ? 1 : 0;
IE4 = (document.all) ? 1 : 0;
ver4 = (NS4 || IE4) ? 1 : 0;

if (ver4) {
    with (document) {
        write("<STYLE TYPE='text/css'>");
        if (NS4) {
            write(".parent {position:absolute; visibility:visible}");
            write(".child {position:absolute; visibility:visible}");
            write(".regular {position:absolute; visibility:visible}")
        }
        else {
            write(".child {display:none}")
        }
        write("</STYLE>");
    }
}

function getIndex(el) {
    ind = null;
    for (i=0; i<document.layers.length; i++) {
        whichEl = document.layers[i];
        if (whichEl.id == el) {
            ind = i;
            break;
        }
    }
    return ind;
}

function arrange() {
    nextY = document.layers[firstInd].pageY +document.layers[firstInd].document.height;
    for (i=firstInd+1; i<document.layers.length; i++) {
        whichEl = document.layers[i];
        if (whichEl.visibility != "hide") {
            whichEl.pageY = nextY;
            nextY += whichEl.document.height;
        }
    }
}

function initIt(){
    if (!ver4) return;
    if (NS4) {
        for (i=0; i<document.layers.length; i++) {
            whichEl = document.layers[i];
            if (whichEl.id.indexOf("Child") != -1) whichEl.visibility = "hide";
       }
        arrange();
    }
    else {
        divColl = document.all.tags("DIV");
        for (i=0; i<divColl.length; i++) {
            whichEl = divColl(i);
            if (whichEl.className == "child") whichEl.style.display = "none";
        }
    }
}

function expandIt(el) {
    if (!ver4) return;
    if (IE4) {
        whichEl = eval(el + "Child");
        if (whichEl.style.display == "none") {
            whichEl.style.display = "block";
        }
        else {
            whichEl.style.display = "none";
        }
    }
    else {
        whichEl = eval("document." + el + "Child");
        if (whichEl.visibility == "hide") {
            whichEl.visibility = "show";
        }
        else {
            whichEl.visibility = "hide";
        }
        arrange();
    }
}

onload = initIt;

</script>
</p>
<div id="KB1Parent" class="parent" align="left"> <a href="#" onClick="expandIt('KB1'); return false" class="p9"> 
  1、习题一 答案</a> </div>
<div id="KB1Child" class="child" align="left"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  <table width="100%" align="center" cellspacing="0">
    <tr bgcolor="#EFEFEF"> 
      <td height="28"> 
        <p class="p9">此程序在开始运行有NAG出现,退出时也会出现。 <br>
          在SOFTICE下命令: <br>
          bpx messageboxa <br>
          开始运行程序,立即将中断,此时按F11将看到NAG。(不要按F5,不然你点OK将不会中断),F11的含义:执行到返回地址(^G @ss:sp;) 
          然后按OK,将再次中断返回SOFTICE。如下: <br>
          * Reference To: user32.MessageBoxA, Ord:0000h <br>
          &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br>
          :0043EFDE E87572FCFF&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          Call 00406258 <br>
          :0043EFE3 33D2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; xor edx, edx---你将落在此 <br>
          :0043EFE5 8B83C8020000&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mov 
          eax, dword ptr [ebx+000002C8] <br>
          :0043EFEB E8A82EFEFF&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          call 00421E98 <br>
          :0043EFF0 5B&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; pop ebx <br>
          :0043EFF1 C3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; ret <br>
          按F10,走出此CALL,会来到: <br>
          :00439721 8D4000&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; lea eax, dword ptr [eax+00] <br>
          :00439724 53&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; push ebx <br>
          :00439725 6683B86602000000&nbsp; &nbsp; &nbsp; &nbsp; cmp word ptr [eax+00000266], 
          0000 <br>
          :0043972D 7410&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; je 0043973F-------此处可跳出NAg的call <br>
          :0043972F 8BD8&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; mov ebx, eax <br>
          :00439731 8BD0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; mov edx, eax <br>
          :00439733 8B8368020000&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mov 
          eax, dword ptr [ebx+00000268] <br>
          :00439739 FF9364020000&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; call 
          dword ptr [ebx+00000264] ----产生NAg的窗口 <br>
          :0043973F 5B&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; pop ebx&lt;---你来到此 <br>
          :00439740 C3&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; ret <br>
          好,现在找到1个地方,此时按F5,程序运行。最后,关闭程序,将再次中断。(你不要禁止开始的断点) <br>
          按f11,NAG出现,点击Ok,再次中断,按F10来到: <br>
          :0043709B 8945FC&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; mov dword ptr [ebp-04], eax <br>
          :0043709E 8B45FC&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; mov eax, dword ptr [ebp-04] <br>
          :004370A1 6683B8B602000000&nbsp; &nbsp; &nbsp; &nbsp; cmp word ptr [eax+000002B6], 
          0000 <br>
          :004370A9 7441&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; je 004370EC-------此处可跳出NAg的call <br>
          :004370AB 33C0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; xor eax, eax <br>
          :004370AD 55&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; push ebp <br>
          :004370AE 68D5704300&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          push 004370D5 <br>
          :004370B3 64FF30&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; push dword ptr fs:[eax] <br>
          :004370B6 648920&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; mov dword ptr fs:[eax], esp <br>
          :004370B9 8B5DFC&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; mov ebx, dword ptr [ebp-04] <br>
          :004370BC 8B55FC&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; mov edx, dword ptr [ebp-04] <br>
          :004370BF 8B83B8020000&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; mov 
          eax, dword ptr [ebx+000002B8] <br>
          :004370C5 FF93B4020000&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; call 
          dword ptr [ebx+000002B4]----产生NAg的窗口 <br>
          :004370CB 33C0&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; xor eax, eax---你将会来到此 <br>
          :004370CD 5A&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; pop edx <br>
          :004370CE 59&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; pop ecx <br>
          :004370CF 59&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; pop ecx <br>
          <br>
          好了,在十六进制工具修改0043972D和004370A9处,将两处的je改jne (74 to 75) 
  </table>
</div>
<div id="KB2Parent" class="parent" align="left"> <a href="#" onClick="expandIt('KB2'); return false" class="p9"> 
  2、习题二 答案</a></div>
<div id="KB2Child" class="child" align="left"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  <table width="100%" align="center" cellspacing="0">
    <tr bgcolor="#EFEFEF"> 
      <td height="28"> 
        <p class="p9">在SOFTICE下命令:bpx&nbsp; MessageBoxA <br>
          然后再运行程序,将会中断,按f11后NAG将出现,点击OK,将再次被中断,具体如下: <br>

⌨️ 快捷键说明

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