1.Delphi软件çç ´è§£
Delphi软件çç ´è§£
第ä¸æï¼å¶é åç¸
ããåæ±ç¼åè°è¯å¨è·è¸ªé½æ¯ä¸å¯è½é²æ¢çï¼å 为ææçWinç¨åºé½å¿ é¡»éè¿APIæ¥è°ç¨Windowsç³»ç»ä¸çå ³é®DLLçï¼å¦Kernel.dllãGDI.dllçï¼ï¼ç¶èAPIæ¯å¯ä»¥Hookçãæ们åªè½ä»èªå·±ç代ç çææ¥ä¿æ¤æ们çå³å¨æå®äºã
ãã为äºèªå·±è°è¯å以åç»´æ¤çæ¹ä¾¿ï¼æ们ä¸è¬éç¨ææä¹çååç»æ们çå½æ°å½åï¼å¯è¿ç»äºCrackerå¯ä¹ä¹æºãä¾å¦è¿æ ·çå½æ°æ¯ä»ä¹ææ大家åºè¯¥ä¸ç®äºç¶å§?调调试java底层源码解析IsRegisteredï¼ï¼ï¼IsLicensedï¼ï¼ï¼LicenseVerifyï¼ï¼ï¼CheckRegï¼ï¼â¦â¦è¿æ ·Crackerå°±å¯ä»¥è½»æ¾å°ä»æ°å个å½æ°ä¸æ¾å°ä»çç®æ ââä½ ç注åç æ ¡éªå½æ°!èä¸ç ´è§£Delphiç¼åç软件è¿æä¸ä»¶TMGå°ç»çç ´è§£å©å¨ââDeDeãå®å¯ä»¥è½»æ¾å°çå°ä½ 软件éçFormãUnitåå½æ°åï¼è¿å¯ä»¥åæ±ç¼ä¸é¨å代ç ï¼æ´å¯ä»¥åWinDASMåä½åæ±ç¼æ´å¤ç代ç ï¼å¯¹Delphiç¼åºçç¨åºå¨èæ大ã
ãã为äºä¸ç»Crackeråé 温馨èéçç ´è§£ç¯å¢ï¼è¦æ ææ··ä¹±ï¼Obfuscateï¼æ们ç代ç ï¼å°è½¯ä»¶ä¸ææçå½æ°åå ¨é¨æ¿æ¢æéæºçæçå½æ°åãä¾å¦Func_3dfsa_fszlfv��è¿ä¸ªå½æ°æ¯ä»ä¹ææ?ææåªæ天ç¥éäºãç½ä¸æç°æç代ç æ··ä¹±å¨ï¼æä½ ä½¿ç¨çç¼ç¨è¯è¨çç§ç±»å¯ä»¥æ¾å°ä¸äºãä½è¦æ³¨æï¼åªæå½ä½ è¦åå¸è½¯ä»¶æ¶æ使ç¨å®ï¼èä¸ä¸å®æ³¨æå¤ä»½æºä»£ç ãå¦åï¼å½ä½ çä¸æä½ èªå·±ç代ç æ¶å°±çæ¥äºï¼ï¼
第äºæï¼ç¨å ¬åï¼å¹¶æ¹å
ããå¦å¤ï¼ä¸å®è¦ä½¿ç¨å ¬å¼å¯åç®æ³ä¿æ¤ä½ ç软件ãRSAãDSAåEl Gamalä¹ç±»çç®æ³é½å¯ä»¥ä»ç½ä¸æ¾å°ãä½æ³¨æï¼å°ä½ ç®æ³åå ä¸æææ¶åå°ç®æ³å称çåç¬¦ä¸²å ¨é¨æ¹åãé¿å 被Crackeråç°ä½ ç¨çç®æ³è模仿ååºæ³¨åæºæ¥!ä½ è¿å¯ä»¥å¼ å ææ´ï¼ææç¨çDSAï¼å°ååå ¨é¨æ¿æ¢æRSAã
ããå ¶å®ç®æ³ï¼å¦å¯¹ç§°ç®æ³åHashç®æ³ä¹è¦æ³¨ææ¹åï¼å¦åè¿æ ·ï¼
ããEncryptedCode = Blowfishï¼MD5ï¼UserNameï¼ï¼MD5ï¼Keyï¼ï¼ï¼
ãã//ä½ çå å¯ç®æ³ï¼ä½¿ç¨äºBlowfishï¼å¯¹ç§°ç®æ³ï¼åMD5ï¼Hashç®æ³ï¼
ããè½ç¶é£äºCrackerä¸äºè§£BlowfishåMD5ç®æ³çåçï¼ä¹ä¸ä¼éåæ¨æµå®ä»¬ï¼ä½ä»ä»¬äºè§£ä½ çæ ¡éªç®æ³çæµç¨åç®æ³åï¼ä¾¿å¯é©¬ä¸ä»ç½ä¸æ¾å°ç±»ä¼¼çBlowfishåMD5ç®æ³å ï¼ä»è模æä½ ç软件仿é åºæ³¨åæºã
ããå¦æä½ ç¨ä¸å¸¸è§çï¼ç®æ³å¦Skipjackï¼NASAç¾å½èªå¤©å±æ åç®æ³ï¼ãLOKIã3-WAYãSaferä¹ç±»ä¸åºåä½ä¿å¯ç¨åº¦å¾é«çç®æ³ï¼å¹¶ä¸å ¨é¨æ¹åï¼è¿æ ·å°±ä¼ä¼¤éä»ä»¬èçäºã
ããå½ç¶ï¼æ好æHashç®æ³ä¹å ¨é¨æ¹åï¼ä¼ç»ä»ä»¬å¶é æ´å¤çå°é¾ãä½æ³¨æï¼MD5åSHAä¹ç±»çHashåå§å¼ä¼è¢«Crackerä»å åä¸æ¾å°ï¼è¿æ ·ä»å°±ç¥éä½ ç¨çHashäºãæ以建议åæ¶ä½¿ç¨MD5çåå½¢ç®æ³Ripe-MDï¼RMDï¼ææå ¶å®çHashï¼å¦TigerãHavalçç®æ³ã
第ä¸æï¼é»æ¢å«äººè°è¯
ããè¿æä¸ç¹ï¼è°è¯å¨å¯¹æ们çå¨èå¾å¤§ï¼æ们ä¸ä¼è®©Cracker们èèææå°ä½¿ç¨SoftICEãTRWæOllyDbgæ¥è°è¯æ们çç¨åºãé¤äºå¸¸ç¨çMeItICEæ¹æ³å¤ï¼è¿éæç»ä¸ä¸ªç¬è åçæ¹æ³ï¼
ãã{ æ£æ¥èªå·±çè¿ç¨çç¶è¿ç¨æ¯å¦ä¸ºExplorer.exeï¼å¦åæ¯è¢«è°è¯å¨å è½½äº}
�
ãã{ ä¸è¿æ³¨æï¼æ§å¶å°ç¨åºçç¶è¿ç¨å¨WinNTä¸æ¯Cmd.exe!}
ãã{ 注æå è½½TlHelp.pasåå }
ããprocedure CheckParentProcï¼
ããvar //æ£æ¥èªå·±çè¿ç¨çç¶è¿ç¨
ããPn: TProcesseNtryï¼
ããsHandle:THandleï¼
ããHï¼ExplProcï¼ParentProc:Hwndï¼
ããFound:Booleanï¼
ããBuffer:array[0..]of Charï¼
ãããPath:stringï¼
ããbegin
ããH:= 0ï¼
ããExplProc:= 0ï¼
ããParentProc:= 0ï¼
ãã//å¾å°Windowsçç®å½
ããSetStringï¼Pathï¼Bufferï¼
ããGetWindowsDirectoryï¼Bufferï¼Sizeofï¼Bufferï¼- 1ï¼ï¼ï¼
ããPath:= UpperCaseï¼Pathï¼+ '\EX PLORER.EXE'ï¼//å¾å°Explorerçè·¯å¾
ãã//å¾å°ææè¿ç¨çåè¡¨å¿«ç §
ããsHandle:= CreateToolHelpSnap Shotï¼THCS_SNAPALLï¼0ï¼ï¼
ããFound:= ProcessFirstï¼sHandleï¼Pnï¼ï¼//æ¥æ¾è¿ç¨
ããwhile Found do //éåææè¿ç¨
ããbegin
ããif Pn.szExeFile = ParamStrï¼0ï¼then //èªå·±çè¿ç¨
ããbegin
ããParentProc:= Pn.thParentProcessID://å¾å°ç¶è¿ç¨çè¿ç¨ID
ãã//ç¶è¿ç¨çå¥æ
ããH:= OpenProcessï¼PRO CESS_ALL_ACCESSï¼Trueï¼Pn.thParent ProcessIDï¼ï¼
ããend
ããelse if UpperCaseï¼Pn.szExeFileï¼= Path then
ããExplProc:= Pn.thProcessIDï¼//Ex plorerçPID
ããFound:= ProcessNextï¼sHandleï¼Pnï¼ï¼//æ¥æ¾ä¸ä¸ä¸ª
ããendï¼
ãã//ç¶è¿ç¨ä¸æ¯Explorerï¼æ¯è°è¯å¨â¦â¦
ããif ParentProc <> ExplProc then
ããbegin
ããTerminateProcessï¼Hï¼0ï¼ï¼//æä¹!é¤ä¹èåå¿«ä¹! :ï¼
ãã//ä½ è¿å¯ä»¥å ä¸å ¶å®ä»ä¹æ»æºä»£ç æ¥æ¶é£æ¶é£è¿ä½å¯ç±çCracker:ï¼
ãããend�
ããend�
ããä½ å¯ä»¥å¨Delphiæè VCä¸è¯è¯ï¼è¿æ ·å¯ä»¥æDelphiåVCææäºï¼å ä¸ºä½ ç°å¨ç¨çæ¯DelphiåVCçå ç½®è°è¯å¨æ¥è¿è¡ä½ çç¨åºãè°è¯çæ¶åä½ è¿æ¯æå®ç注éå æå§ï¼åå¸æ¶å«å¿è®°æ¿æ´»å!