Dunque premetto che sto facendo questo prog per me, nel senso che mi serve per recuperare la pass del router -_-', uno zyxel 600
ecco il codice qua di seguito:
Codice PHP:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
FILE *status;
int o=0, p;
int i=0,z=0,x=0,c=0,v=0,b=0,n=0,u,y=0,j=0;
char parola[10]={0,0,0,0,0,0,0,0,0,0};
char pass=0;
printf("Start Script!\n");
for(i=33; i<126; i++) {
parola[9]=i; //0
for(z=33; z<126; z++){
parola[8]=z; //1
for(x=33; x<126; x++){
parola[7]=x; //2
for(c=33; c<126; c++){
parola[6]=c; //3
for(v=33; v<126; v++){
parola[5]=v; //4
for(b=33; b<126; b++){
parola[4]=b; //5
for(c=33; c<126; c++){
parola[3]=c; //6
for(v=33; v<126; v++){
parola[2]=v; //7
for(b=33; b<126; b++){
parola[1]=b; //8
for(n=33; n<126; n++){
parola[0]=n; //9
printf("la pass è: %s \n", parola);
while(1){
status=popen("telnet 192.168.1.1", "w");
write(fileno(status), "%s\r",parola);
scanf("%d", o);
pclose(status);
p++;
}
}
}
}
}
}
}
}
}
}
}
return 0;
}
/////////////////////////////////////////////////////
//impostando così l'open file riesce ad acedere al router
//while(1){
// status=popen("telnet 192.168.1.1", "w");
// write(fileno(status), "parola", strlen("parola"));
// scanf("%d", u);
// pclose(status);
//}
e questo è quello che mi rilascia lo script:
bash-2.05b$ ./force
Start Script!
la pass è: !!!!!!!!!!
Trying 192.168.1.1...
Connected to 192.168.1.1.
Escape character is '^]'.
Password: **
Password: ***********************
Password: **********
Password: ***********************
Bad Password!!!
Connection closed by foreign host.
Broken pipe
bash-2.05b$
come potete vedere inizia a caricare pass su pass ma non capisco da dove le piglia
inoltre io voglio che l'array parola sia vuoto in origine, ho provato ad inizializzarlo all'inizio ma non pare funzi molto... visto che mi spara fuori sti caratteri qua:
!!!!!!!!!!
se potete darmi qualche dritta ve ne sarei infinitamente grato.
ciao