
    U N I V E R S A L   F R E E D O M   F O R   A L L   B Y T E S 


                      Filnavn: Crackhlp.txt

Indhold: Anmeldelse af vrktjer til cracking og en generel    
         vejledning i cracking der kan bruges p alle maskintyper.
         Hvert afsnit indledes af en '*', du kan sge p i    
         editoren, nr du skal lse afsnittet.
         Ordforklaring:
         
         Trappe  : Nr man trapper et maskinkode program krer man
                   instruktionerne en for en, men uden at kre ned
                   i subrutiner. Disse kres som et alm program.

         Trace   : Nr man tracer et program trapper man det ogs, 
                   men man krer ned i subrutinerne og flger 
                   derfor programmets krsel slavisk.




* Anmeldelse af vrktjer:

  Jeg vil blot udbrede kendskabet til nogle fremragende vrktjer 
  der er yderst velegnede til cracking/reverse engineering p PC'ere 
  under DOS plus vidergive en vejledning i cracking. Det forudsttes at lseren 
  kender til maskinkode og DOS'ens virkemde.

  Det ene program hedder SOURCER. Med det kan du lave EXE-filer, 
  COM-filer, overlays, kodestumper og devicedrivere om til  kildekode 
  s din assembler kan reassemble koden, efter du har fjernet den 
  irriterende kopi-beskyttelse. Du kan selvflgelig ogs njes med at 
  hugge de fede rutiner, der ligger i programmet eks musikrutiner. 
  Sourceren kan ogs analysere programmet. Den kan lave et trdiagram over 
  rutinerne i koden og fortlle dig, hvor programmet evt handler et 
  givet INT (interrupt handlers).  Programmet er uforskammet praktisk at 
  have, nr man ikke kan afholde sig fra at pille ved andres kode. 
  Det lykkedes mig som blank novice at fjerne kopibeskyttelsen p 
  crimewave p ca 5 minutter. Af andre faciliteter kan nvnes udpakning 
  af anvendte pakningsformater ex IBM/MICROSOFT og at Sourceren 
  selvlgelig stter kommentarer i kildekoden, s du kan se hvad ex et 
  givet INT udfrer.

  Det andet program hedder PERISCOPE.
 Periscope er en debugger, der har en del af de faciliteter som man kan nske 
 sig som pilfinger. Den strste fordel ved dette program er at det kan narre 
 en del spil, fordi det gr uden om DOS'en. Det lgger sig ind p INT 9 og 
 aktiveres s frst ved et tryk p eks venstre shift-tast. Desuden har du 
 muligheden for at aktivere Periscope vha hardware-reset via INT 02. 
 Programmet er dog ikke perfekt for eks Silent Service II opdager det og 
 crasher maskinen. For uden denne smarte detalje har det flere faciliteter 
 end ex Turbo Debuggeren.
  Begge de ovennvnte programmer er rimelige lette at finde ud af ogs 
  uden manualer pga deres indbyggede hjlpefunktioner. Programmerne er 
  ikke PD/shareware og br naturligvis kbes ligesom du jo ogs kber 
  alle dine spil, din Norton utilities, WP, Borland-produkter etc

  Der er ogs et andet program som du br kende til, jeg har dog ikke 
  downloadet det d.d., men det er PD. Det hedder Ralph Browns Spawn og 
  jeg har set det p flere danske Boards. Det lgger sig p et eller 
  flere INTs og afventer INT kald. Nr det forekommer, gemmer det s 
  hvorfra det blev kaldt og med hvilke parametre. P den mde kan man 
  alts finde ud af nr INT $25 og INT $35 bliver kaldt frste gang. 
  En rigtig dejlig sladrehank.










 * Og nu til afsnittet om cracking teknik











** Tekniken bag cracking:

    Ordforklaring til ikke (eller usikre) Pc-brugere.

    JMP svarer til GOTO i Basic JMP SHORT betyder en absolut jump
    der ikke fylder mere end et betinget hop, 2 bytes.

    NOP svarer til NOP p alle andre sprog No OPeration
  
    INT kaldene er en rkke interrupts til at kalde ROM'ens og DOS'ens
    funktioner. INT 16 tester for keystroke og INT 21 klarer dos'ens
    funktioner.
  
  
 *** Her flger en god igangsttende vejledning:  
  
  1) Det glder om at fjerne kopibeskyttelsen, der ndvendigvis
     bliver checket for i en (sub)rutine i programmet.
     Dette gr vi ved at isolere denne rutine og eliminere      
     beskyttelsen.

  2) Indls programmet vha debuggeren

  3) Kr programmet til en fast udgangsposition (adresse), ex et INT 16 
     eller et INT 21, sdan at du altid er sikker p at starte samme sted.

  4) Nu skal du s trappe dig i gennem programmet, dvs JL i Peri-               
  scope eller F8 i Turbo debuggeren. Dvs Nr du mder et CALL                       
  udfrer du det, men alts uden at trace det, P den mde sparer du en masse 
  tid fremfor at trace programmet. 

Tips: 
Hvis du er smart bruger du periscopes funktion til at trappe ex 1000 
instruktioner frem p denne mde 

a) Trap ex 1000 instruktioner frem

b) Reagerer kopibeskyttelsen ikke s g til punkt a

c) Reload programmet/boot og kr programmet til den  udgangsposition du nede 
til fr du trappede dig frem til at kopisikringen virkede. 
  ex : Du trappede dig frem til adresse 1234:1234 og trapper
       nu 1000 instruktioner frem = kopisikringen virker
       reload og go indtil 1234:1234

Trap ex 500 instruktioner frem

d) Hvis kopisikringen ikke virker ved du nu at den vil virke inden
   for de nste 500 instruktioner. Dvs fra 1234:1234+500 instruktioner til 
   1234:1234+1000 instruktioner

Hvis den virker ved du at du kopisikringen virker fra 1234:1234 og 500 
instruktioner frem.

e) Du skal nu indsnvre antallet af instruktioner du krer frem til du har 
fundet den Call/rutine der udlser kopisikringen

  5) P et tidspunkt vil maskinen i en af disse calls, som du skriver 
  adressen ned p, opdage at ex et password er ugyldigt eller at en anden 
  betingelse som der beskytter programmet mod kopiering ikke er opfyldt og 
  typisk enten crashe eller komme med en spydig kommentar, som forkert 
  password og derefter g i st, eller bare boote.

  6) Fordi du har skrevet adressen ned p den sidste CALL som programmet 
  krte kan du nu stte et breakpoint p den adresse, hvor call'et str.

  7) Check en gang til om det stadig vk er i denne rutine at det 
  forfrdelige sker, s du ikke spilder din tid ved at sjuske 
  (jeg gr det ikke selv)

  8) Nr du er sikker p at vre p den adresse hvor CALL'en str 
    bruger du samme fremgangsmde som tidligere, punkt 4-7.
    Subrutinen vil sandsynligvis kalde flere andre subrutiner.

  9) Du vil nu vre i en rutine, hvor programmet finder ud af at du prver 
  at fuppe det. Der vil s vre et betinget hop som vil hoppe til den 
  ubehagelige rutine. Det laver du ex om til en NOP eller et JMP short, 
  hvis du er uheldig m du skrive koden lidt om.

 10) Der vil sandsynligvis vre mere end et kopicheck. Ex en checksum p 
 koden og andre metoder, der vil afslre din tilstedevrelse. 
 Brug punkt 4-7 til at finde disse.

 11) Nu finder du de steder, hvor du har lavet rettelser i .exe eller 
 .com filen, som spillet bestr af, ved at sge p den byterkkeflge, som 
 er omkring din rettelse. Diskedit i Norton utilities er udmrket til dette.

12) Hvis alt er get godt har du nu cracket et spil, fundet stedet hvor et 
serienr ikke godkendes eller noget andet godt.

Ovenstende metode glder for al cracking, Men der er mange problemer 
undervejs, som krver individuelle lsninger. Et problem er hvis programmet 
er pakket s krver det at du udpakker det fr at du kan rette i det med 
DISKEDIT. Dette kan gres med sourcer, hvis du alts har det.

Tips: Indlser programmet ex en overlay fil eller krer en .exe fil s 
placer et breakpoint ($CC) i filen der hvor det vil startes.


NB: Har du fundet en god metode til at lse nogle af de problemer
    som man kommer ud i denne sport, s lav en textfil og upload 
    den til glde for alle os freaks. 

Your Cracking mate



!!!             UNIVERSAL FREEDOM FOR ALL BYTES NOW            !!!







 






  
  





















