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

📄 worm.txt

📁 关于黑客的论坛的下载资料
💻 TXT
📖 第 1 页 / 共 5 页
字号:

     ┌——————————┐    Soft Bugger (90/2)
     │  拷贝心得  第八集  │    597-1306  24Hours
     └——————————┘    欢迎光临 90 网路


    由於上次弟的软体失败後 ,急忙推出下集 ,所以显得比较简陋 ,请多包涵。
    原因是弟本来想写无缝锁程式 ,无耐该种软体只有360K DRIVER 能做出来,
    於是弟又将作品抽回来 ,因此弟在此简介如何制作无缝锁吧 !

    ————————————————————————————————
    FORMAT 的部份 :

        先将磁片 ID 设定好 ,然後 FORMAT 即可....
        有关於磁碟 ID 的部份 ,请参考前几集。
        FORMAT 就使用 INT 13h 即可 ....

    ————————————————————————————————
    读取资料部份 :

    0000:0522 这个位址一般都是 02 ,代表磁区 N 值等於 2(512Bytes)
    但是如果您将它改为 6 ,就能够读出该种磁区内的资料 (请参考第五集)
    ————————————————————————————————


    ※ 弟附上一个软体 ,是一个软体保护的实例 ,让各位练习使用。

    FORMAT.EXE 这是一个用来格式化您的磁碟片 ,在您执行这个软体前 ,请在
    磁碟机A放入一片您不要的磁片 ,然後再执行这个软体 ,於是它会在第27h
    (39轨)的地方做一个额外磁区FFh的磁区 ,一般的拷贝程式无法拷贝该种特
    别的磁区(COPYWRIT、COPYIIPC 等强拷软体除外) ,於是可达到您的磁片保
    护的目地 ,因此本程式只能当做一种在磁片上做标记的程式。

    CHECK .EXE 这是用来简查磁片有没有标记 ,然後判别出结果并显示之。

    换句话说 ,这是一套上保护的软体 ,但是防拷能力并不强 ,只要稍具拷贝能
    力的软体皆能拷下来 ,至於若希望软体不能被拷贝 ,似乎只能借助於外部硬
    体才能办得到 ,因此弟只写了简单的程式。



               ┌┐┌┐┌┐∞
               ┘└┘└┘└┘
      软体保护落伍了 ,尊重智慧财产权要得 
   ================================================================

     ┌──────────┐    Soft Bugger (90/2)
     │  拷贝心得  第九集  │    597-1306  24Hours
     └──────────┘    欢迎光临 90 网路

   经过数天来苦心研究後 ,终於发现所写的无缝锁何以不能执行之 ,现在就
   展现在您的眼前 (我花了数天才研读出来..您只要看一遍就懂了) 

   在此为您解说一下磁碟参数吧 ,这个参数对於想玩磁碟保护的人绝对要学
   起来 ,因为懂了它就可以玩出一堆花样来....
   0000:0525h 02h ..... 磁片的N值 ,用以设定目前读取的ID之N值 
   0000:0526h 12h ..... 每一轨18个磁区 ,弟将它改为9,才能正确格式画磁片 

   请您放一片磁片(已格式划过的2HD磁片)到A磁碟机 ,然後执行 FORN6.EXE
   它就会帮你制造坏磁轨(4Fh轨第0面) 

   接著执行 SAVEN6.EXE ,它会把坏轨存成档案 (DEMO.DAT)  

   您可以试著看看每次格式划後的坏轨资料都不一样 ,拷贝後亦不一样 
   您可以用"TYPE DEMO.DAT"看到坏轨资料 ,这种保护是无法被覆制的 


   解说 (FORMAT-N6) :
      ┌  将磁碟参数每轨有18(12h)个磁区(0000:0526h) ,改为每轨有9个磁区
      ├  然後格式划磁片
      ├  将磁碟参数改回正常
      └  结束程式

   解说 (SAVE-N6) :
      ┌  将磁碟参数N值由2改为6
      ├  读取最後一个磁区 ,放到 Buffers
      ├  将 Buffers 的资料存档 (DEMO.DAT)
      └  结束程式

   解说磁片格式 :
       前几集我们曾经讨论过磁片格式 ,但由於太精简 ,有些人可能一知半解
   所以重新再说明一次 
      2D : 每片有39个磁轨 ,每个磁轨又分为8个磁区(DOS2.0版本)
                                         9个磁区(DOS3.0以上版本)
           但是一般360K磁碟机可以控制到41轨 ,於是也有人多用此磁轨 ,变成
           额外的磁轨保护 
     2HD : 每片有79个磁轨 ,每个磁轨又分为18个磁区(DOS3.1以上版本)
           但是一般1.2MB磁碟机可以控制到81轨 ,於是也有人多用此磁轨 ,变成
           额外的磁轨保护 

    磁区 : 每个磁区又有分为 T.H.R.N ,就相当於是该磁区的目录一样 ,记录了
           T = 磁轨  ,H = 面 , R = 第几号磁区 , N = 2 磁区有 200h Bytes
           (N=3 400hBytes  N=4 800hBytes N=5 1000hBytes N=6 2000hBytes)
           这个目录总称 ID  

    正常的一片 2D 磁片 27h 轨第0面的 ID 应该是 :
            T. H. R. N.
            27,00,01,02  ┐
            27,00,02,02  │ 这个目录(ID)就是这条
            27,00,03,02  │ 磁轨的所有东西 
            27,00,04,02  │
            27,00,05,02  │ 每个磁区可放 512Bytes
            27,00,06,02  │             (200h)Bytes
            27,00,07,02  │
            27,00,08,02  │
            27,00,09,02  ┘
    或许你已发现了 ,这条磁轨总容量是 1800h Bytes ,而如果 N=6 就有 2000h
    Bytes ,於是当您读取这个磁轨 ,就会读取超过该磁轨的容量 ,将其磁轨接缝
    处顺便读出来 ,而一般磁碟机无法处里此接缝 ,因此也就无法拷贝 

    接缝 : 磁片上有一个索引孔 ,当磁碟机读到这个孔就会开始做读写工作 ,直
           到该工作做完为止 ,但是不可能整圈磁轨全用完 ,於是造成将这未读
           写完的部份磁区(俗称接缝) 
           磁碟机的磁头在写入时 ,磁头都会加以磁化 ,但磁性物体不可能通电
           後马上有磁性 ,断电後马上没有磁性 ,由於这个剩磁 ,将接缝的资料
           变动到 (因为写完资料後磁头仍会在该轨停留到遇到下一次索引孔为
           止),这个磁性绝对无法用软体加以控制 ,所以市面上也就没有东西可
           以拷贝它 


   ┌—┐  ┌—┐  ∞      软体保护落伍了 ... 保护智慧财产权要得。
   ┘  └—┘  └—┘      请您和我们合作,软体破解只是让您更方便使
   Soft Bugger (90/2)      用,而不是方便您散播。



据说 KeyPro 保护是用某种专上此种保护的软体上的,所以应该大同小异。
某种以 KeyPro 保护的雷射印表软体 ,兹以原版与破解版说明之 :

A>DEBUG JM.EXE
-u CS:C560 (原版)

15C3:C560 9A0C003C23    CALL    233C:000C   —使用INT17h将KeyPro资料读出
15C3:C565 2E            CS:                 ┐
15C3:C566 01066901      ADD     [0169],AX   │
15C3:C56A D0E0          SHL     AL,1        │
15C3:C56C D0E0          SHL     AL,1        │
15C3:C56E D0E0          SHL     AL,1        │运算和资料比对
15C3:C570 D0E0          SHL     AL,1        │
15C3:C572 2E            CS:                 │
15C3:C573 01066901      ADD     [0169],AX   │
15C3:C577 50            PUSH    AX          │
15C3:C578 59            POP     CX          │
15C3:C579 2E            CS:                 │
15C3:C57A 2906038D      SUB     [8D03],AX   │
15C3:C57E 3C00          CMP     AL,00       │
15C3:C580 751E          JNZ     C5A0        ┘
15C3:C582 B402          MOV     AH,02
15C3:C584 9A0C003C23    CALL    233C:000C
15C3:C589 8AE6          MOV     AH,DH
15C3:C58B E89805        CALL    CB26
15C3:C58E A3F2CD        MOV     [CDF2],AX

-u CS:C560 (破解版)

15C3:C560 9A0C003C23    CALL    233C:000C  —  读资料(读不到)
15C3:C565 90            NOP                    ┐
15C3:C566 31C0          XOR     AX,AX          │已知资料运算的 AX=0
15C3:C568 2E            CS:                    │所以帮它运算。
15C3:C569 01066901      ADD     [0169],AX      ┘
15C3:C56D 90            NOP
15C3:C56E 90            NOP
15C3:C56F 90            NOP
15C3:C570 90            NOP
15C3:C571 90            NOP
15C3:C572 2E            CS:
15C3:C573 01066901      ADD     [0169],AX   ┐
15C3:C577 50            PUSH    AX          │
15C3:C578 59            POP     CX          │ 以下运算式因只用到 AX
15C3:C579 2E            CS:                 │ 故不修改其内容
15C3:C57A 2906038D      SUB     [8D03],AX   │
15C3:C57E 3C00          CMP     AL,00       │
15C3:C580 751E          JNZ     C5A0        ↓
15C3:C582 B402          MOV     AH,02
15C3:C584 9A0C003C23    CALL    233C:000C
15C3:C589 8AE6          MOV     AH,DH
15C3:C58B E89805        CALL    CB26
15C3:C58E A3F2CD        MOV     [CDF2],AX

现在的软体保护,实在越来越厉害,实在可以这样说 :
     解读不易,破解更难,所有保护,专攻DEBUG,防止破X

拷贝心得到此算是暂时告一段落了 ,原因是题裁取得不易 ,软体防破能力太强
,因此对於开站的我已无多的时间慢慢 Debug ,只好告诉各位未来续出的时间可
能会每1-2个月出一次 ,也希望各位大爷忍耐一些 ,所以先告诉各位一些主意 ,
就是对於防拷不必花时间去解 ,只要您写个小程式即可解所有 Int13 的保护 ,

1. 拦截 INT13h ,对於来自非DOS呼叫的时後 ,即将所读到的资料存档 ,以备下
   次拷贝版使用。
  (判别是否DOS呼叫 ,只要判别触动INT13时的CS是否小於自己程式的CS可得知)

2. 同上 ,但这次是将存的档案读出来。

这个程式已有人写出来 ,由於该软体并非弟所写 ,故无 Source. 可给您 ,几乎
所有的软体都可解。

SAVE.EXE 是负责 SAVE 坏轨的东西 ,键入後再输入档名 ,如 C:\A.LOK ,然後执
行原版磁片 ,这时原版磁片一边执行 ,一边将坏轨资料存档 ,最後程式执行了 ,
您的硬碟也有保护轨资料了。

重新开机 ,清掉 SAVE.EXE。

LOAD.EXE 是负责将坏轨资料放回去的 ,键入後再输入档名 ,如 C:\A.LOK ,然後
就可以执行拷贝版了。


由於关系重大 ,只有赞助本站 User 可拿到软体 ,赞助者亦不可传至它站 ,否则
後果自行负责。

※ 以上软体若有闪失 ,概不负责。
         *****   请勿上传该软体至他站 ,谢谢合作。  *****

    ┌—┐  ┌—┐  ∞
  —┘  └—┘  └—┘
┌————————————┐  软体保护落伍了
│ 拷 贝 心 得 第 十一 集 │  智慧财产权要大家来保护
└————————————┘  明天才有更好的软体可用
 Soft Bugger (90/2)  597-1306  24Hours
=============================================================
 这一集的内容由於是拼凑出来的 ,所以内容不是很好 ,但是勉强能看
=============================================================
INT_13h 所有功能涵数之解说如下:

1. AH=00  (重置磁碟系统)   ┐
2. AH=01  (取得磁碟状态)   │
3. AH=02  (读取磁区资料)   │由於一般 DOS 书籍已有介
4. AH=03  (写入磁区资料)   │绍 ,故不再多谈。
5. AH=04  (验证磁区好坏)   │
6. AH=05  ( 格式化磁轨 )   ┘

7.   AH=06  格式化损坏的磁区 (PC/XT HD Only)
     AL=磁区数
     CH=磁柱号码
     DH=磁头
     DL=磁碟机 (80h-FFh)
 返回代码 :
     成功进位旗标为零 ,AH=00
     失败进位旗标为壹 ,AH=状态  (参考AH=01)

8.   AH=07  格式化磁碟机 (PC/XT HD Only)
     同 AH=06 ,但会从指定之磁柱起开始格式化

9.   AH=08  取得磁碟参数 (PC/AT PS/2)
     DL=磁碟机  (软碟 00-7F ,硬碟 80-FF)
 返回代码 :
     成功则进位码被清除
     BL=磁碟机种类
        01  360 KB ,40轨 , 5.25□
        02  1.2 MB ,80轨

⌨️ 快捷键说明

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