Hoe worden programma's nu eigenlijk gekraakt? """"""""""""""""""""""""""""""""""""""""""""" Dat is iets wat we ons allemaal wel eens afvragen, immers, we hebben bijna allemaal 1 of meerdere illegale programma's in ons bezit en die kopieeren we weer door voor vrienden, kennissen en sommigen zelfs voor geld. Maar wat is dat kraken nu eigenlijk. We gingen eens op onderzoek uit. Daarbij stoten we op nogal wat informatie. Laten we om te beginnen duidelijk stellen dat kraken van software een strafbare handeling is. De gegevens hieronder zijn ook zeker geen handleiding om te gaan kraken maar om inzicht te geven in hoe programma's beveiligt zijn. de onderstaande programma voorbeelden zijn allemaal al in gekraakte verisie's in omloop en derhalve valt daar geen 'eer' meer aan te behalen. het vervelende en frustrerende van het beveiligen van programma's is het feit dat je welliswaar iets kunt bedenken waardoor het 'circuit' er wat moeilijker vat op krijgt, maar ook in die omgeving staat de vooruitgang en dus de kennis toename niet stil. Of het beveiligen van programma's dus echt zin heeft valt nog te betwijfelen al denken we dat het intikken van woord zoveel van pagina zoveel vaak al meer dan voldoende is om greote groepen kopieerders de lol van hun programma te ontnemen. Iedereen weet hoe we over piraterij denken, maar het is een gegeven waar we mee moeten leven en waar we net als bij het belasting betalen/ontduiken opeens niet meer zo nauw kijken als het is ons straatje past. Dan nu eerst maar eens wat PC gegevens, vooral om wel aan te geven hoe het gebeurt, maar gelijktijdig om de Amiga kant, en die hebben jullie allemaal te ontlasten ; ACCOLADE GAMES als b.v PAPERBOY en TESTDRIVE PC """"""""""""""""""""""""""""""""""""""""""""""" Enige kennis van programma's als Norton Utilities en PC tools is wel noodzakelijk. Dat zelfde geld voor HEX getallen e.d. Bij deze programma's gaat u zoeken naar bytes met de volgende inhoud: 55 56 57 06 1E Deze strings vervangt u door: 31 C0 C3 06 1E en voila, de klus is geklaard. GRAND PRIX CIRCUIT BY ACCOLADE """""""""""""""""""""""""""""" Accolade, ook niet gek bedacht vervolgens een nieuwe beveiliging voor het spel Grand Prix: beveiliging vervangen door 1. BE 06 00 E8 13 00 EB 16 00 EB 13 00 2. F6 C4 10 75 0B EB 0E 10 75 0B 3. 72 5F BB 90 90 BB 4. 75 47 BE 90 90 BE 5. B8 09 02 EB 0A 02 6. 75 03 E8 03 EB 03 E8 03 (GPEGA.EXE) LEISURE SUIT LARRY II BY SIERRA """"""""""""""""""""""""""""""" Bij Larry moet iedereen die het spel wil spelen eerst in het bijbehorende boekje zoeken naar het telefoonnummer van de dame om in het spel te kunnen komen. Met het onderstaande neemt het programma genoegen met alles wat er maar ingetikt wordt door de gebruiker: 1. Rename SIERRA.EXE naar SIERRA.XXX 2. Laad DEBUG en tik het volgende in: E 0394 F6 E 4210 52 5C E 9E1D B8 08 35 CD 21 89 1E FC 12 8C 06 FE 12 B8 24 35 E 9E2D CD 21 89 1E 00 13 8C 06 02 13 B8 24 35 CD 21 89 E 9E3D 1E 04 13 8C 06 06 13 07 1E 0E 1F BA 6B 9C B8 23 E 9E4D 25 CD 21 BA 6C 9C B8 24 35 CD 21 1F E8 5A 00 C7 E 9E5D 06 FA 12 01 00 C3 90 57 51 B9 0F 00 BF 86 BA C6 E 9E6D 05 00 83 C7 09 E2 F8 59 5F 2E C7 06 10 3F 0E 01 E 9E7D E9 8F A3 90 90 90 90 90 90 90 90 90 90 98 90 83 E 9E8D 3E FA 12 00 75 01 C3 1E 07 E F676 8E D8 B1 03 W Q Als laatste geef je de file weer zijn oorspronkelijke naam. MANHUNTER: NEW YORK BY SIERRA """"""""""""""""""""""""""""" Zoek in de file MHVOL.1 naar de volgende bytes: 41 06 7A en vervang die door 7F C3 00 GATO: WORLD WAR 2-CLASS SUBMARINE SIMULATOR BY SPECTRUM HOLOBYTE """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Om van dit spel de beveiliging weg te halen doe je het volgende: Sector Offset Inhoud Verander naar 53 0E 72 11 90 90 53 13 72 0C 90 90 53 53 72 EB 53 65 75 EB THE GAMES: SUMMER EDITION BY EPYX """"""""""""""""""""""""""""""""" Zoek naar de volgende bytes : E8 87 00 59 C6 Vervang die door : 59 59 5F EB 55 CALIFORNIA GAMES BY EPYX """"""""""""""""""""""""" Laad CALGAMES.EXE in een file-editor' Zoek naar de volgende bytes : FA FC 55 56 57 Vervang die vervolgens door : 00 00 31 C0 C3 THE PRINT SHOP BY BR0DERBUND """""""""""""""""""""""""""" De Print Shop gebruikt 2 sektie's met code waarin de beveiliging staat. De eerste bevind zich in PS.EXE en wordt gebruikt als een programma van Floppy gerund wordt. PSINIT.OVR doet het zelfde als men het programma op HD installeert. Eenmaal aktief gaan beiden zoeken naar een speciaal geformatteerde track op de A: drive en wanneer die niet gevonden wordt zal het programma niet starten. Nadat men het volgende had gedaan bleek het wel mogelijk om zowel van flop als van HD op te starten: RENAME PS.EXE PS.ZAP - Rename voor DEBUG DEBUG PS.ZAP - Start DEBUG S0 9000 CD 13 - Zoek naar Disk interrupt 13 XXXX:3AC6 - Je vind dan deze twee XXXX:3ADF U 3AC6 - Unassemble de code om zeker te weten dat je goed zit. XXXX:3AC6 INT 13 test disk in A: XXXX:3AC8 MOV BYTE PTR [0A91],02 XXXX:3ACD DEC BYTE PTR [0A91] XXXX:3AD1 JZ 3AE6 XXXX:3AD3 MOV DH,00 \ XXXX:3AD5 MOV DL,00 | Hier wordt gekeken naar XXXX:3AD7 MOV CH,09 | de speciale track XXXX:3AD9 MOV CL,0A | XXXX:3ADB MOV AL,01 | XXXX:3ADD MOV AH,04 | XXXX:3ADF INT 13 / XXXX:3AE1 CMP AH,00 Als die er niet is, XXXX:3AE4 JNZ 3ACD Einde programma A 3AC6 Deze weggooien XXXX:3AC6 NOP verwijder de INT 13 XXXX:3AC7 NOP XXXX:3AC8 A 3ADD Verwijder de 'echte' versie test. XXXX:3ADD MOV AH,00 Geef wat hij wil in AH XXXX:3ADF NOP verwijder INT 13 XXXX:3AE0 NOP XXXX:3AE1 W schrijf de veranderde code weg. Q Quit DEBUG RENAME PS.ZAP PS.EXE programma weer renamen. En dan nu het tweede deel van de beveiliging: DEBUG PSINIT.OVR Start DEBUG S0 2000 CD 13 zoek naar disk interrupt 13 XXXX:0479 Je vind dan de volgende 3: XXXX:0492 XXXX:04BD U 0479 XXXX:0479 INT 13 een test voor disk in A: XXXX:047B MOV BYTE PTR [CD57],02 XXXX:0480 DEC BYTE PTR [CD57] XXXX:0484 JZ 04DB XXXX:0486 MOV CL,11 \ XXXX:0488 MOV AH,04 | XXXX:048A MOV DH,00 | XXXX:048C MOV CH,09 | Weer die speciale zoeker XXXX:048E MOV DL,00 | de speciale track XXXX:0490 MOV AL,01 | XXXX:0492 INT 13 / XXXX:0494 CMP AH,00 Klopt het niet? Dan einde XXXX:0497 JNZ 0480 programma. U 04BD XXXX:04BD INT 13 XXXX:04BF CMP AH,00 XXXX:04C2 JNZ 04A5 XXXX:04C4 ADD BX,018B XXXX:04C8 MOV CL,05 XXXX:04CA ES: XXXX:04CB MOV AL,[BX] XXXX:04CD CMP AL,41 XXXX:04CF JNZ 04DB XXXX:04D1 INC BX XXXX:04D2 DEC CL XXXX:04D4 JNZ 04CA XXXX:04D6 MOV AX,0000 XXXX:04D9 JMP 04DE A 0479 XXXX:0479 NOP Verwijder INT 13 XXXX:047A NOP XXXX:047B A 0490 XXXX:0490 MOV AH,00 Geef AH wat je wilt XXXX:0492 NOP Verwijder INT 13 XXXX:0493 NOP XXXX:0494 A 04BD XXXX:04BD JMP 04D6 Jump naar success exit code XXXX:04BF W Wegschrijven maar... Q Quit DEBUG En ook Printmaster is nu zo leeg als maar kan........ GOLD RUSH! BY SIERRA """""""""""""""""""" Ook bij dit programma weer een 80 bladzijdes waarin men naar codes moet gaan zoeken. Gebruik GRDIR voor DEBUG en tik het volgende in: E 28C CC E 28D 7A W Q Zij die wat beter thuis zijn in het gebruik van assembly en programma's als Debug kunnen op die manier heel wat programma's leeghalen. Voor de Amiga liggen de zaken waarschijnlijk heel anders. Flink oefenen dus.......... The Flying Eagle voor de SAEN