Poslao: 04 Dec 2013 18:46
|
offline
- savan2
- Građanin
- Pridružio: 15 Jul 2009
- Poruke: 150
|
Tvoj kod uvek pokazuje da je u pitanju enkripcija none! A gledaj gde gresis:
Citat: {
unsigned short int toSkip;
int sz = sizeof(toSkip);
fseek(pFile, 4, SEEK_SET);
fread(&toSkip, sz, 1, pFile);
toSkip = SWAP_UINT16(toSkip);
fseek(pFile, toSkip, SEEK_CUR); }
crveno = kenuo si od pozicije 4. byte
plavo = ucitavas samo jedan byte
sz?? sizeof(sz) cinimi se da i tu gresis! Ok ja cu uzeti da to bude vrednost 4 jer mi tako deluje da si vratio opet na poziciju 4 !
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00
znaci sad si na poziciji ljubicastoj (i da nisi opet nije dobro jer gledaj zasto...). Zasto:
Citat: // read encription type
{
fread(&encType, sizeof(encType), 1, pFile);
encType = SWAP_UINT32(encType);
if(ENC_NONE == encType)
printf("Enc. type is NONE");
else if(ENC_WPA == encType)
printf("Enc. type is WPA");
else if(ENC_WPA2 == encType)
printf("Enc. type is WPA2");
else
assert( "Enc. type is UNKNOWN!!! Something is wrong." && 0 );
}
Zeleno cita uvek byte 0x00 sa pozicije 5 i uvek govori da je enkripcija none!! A i da gresim opet nikako ne moze da cita atag enkripcije jer atag enkripcije se nalazi posle ssid stringa! SSid string je sledece plavo:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
Poslao: 04 Dec 2013 18:56
|
offline
- morando
- Građanin
- Pridružio: 19 Maj 2011
- Poruke: 297
|
1.
sa fseek(pFile, 4, SEEK_SET) preskacem 4 bajta i dolazim ovde:
00 00 00 01 |00 09 41 6E 64 72 6F 69 64 41 70 00
2. Tvoje "plavo" je broj elemenata 1, "sz" velicine 2 bajta ucitavam duzinu stringa SSID-a sto je ispravno!
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00
Citat:
fread
The position indicator of the stream is advanced by the total amount of bytes read.
Kad procitam sa fread "kursor citanja" se pomera koliko je i procitano, kursor je sad ovde:
00 00 00 01 00 09 | 41 6E 64 72 6F 69 64 41 70 00
|
|
|
|
Poslao: 04 Dec 2013 18:59
|
offline
- savan2
- Građanin
- Pridružio: 15 Jul 2009
- Poruke: 150
|
Da ali ti citas enkripciju sa ssid pozicije jer nisi definisao ssid citanje! Gledaj kako bi trebalo tj kako sam ja uradio kod mene, tj kako bi trebalo:
Moja zamisao u mom kodu izgleda ovako:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
zeleno preskacem, pa onda:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
crveno je duzina ssid stringa, pa onda:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
ljubicasto je ssid string, pa onda:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
zeleno preskacem, pa onda:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
crveno je enkricija tip, pa onda:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
zeleno preskacem, paonda:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
duzina password stringa, pa onda:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 00 00 00 04 00 0F 65 78 61 6D 70 6C 65 70 61 73 73 77 6F 72 64
narandzasto je password string
|
|
|
|
Poslao: 04 Dec 2013 19:03
|
offline
- morando
- Građanin
- Pridružio: 19 Maj 2011
- Poruke: 297
|
Ne citam tu jer sam je preskocio sa:
toSkip = SWAP_UINT16(toSkip);
fseek(pFile, toSkip, SEEK_CUR); }
I dolazim tacno gde je enk. tip:
00 00 00 01 00 09 41 6E 64 72 6F 69 64 41 70 |00 00 00 04
BTW. Mozes veoma lako da izdebagujes kod koristeci ftell fukciju koja govori gde je pozicija kursora u fajlu, onda samo rucno izbrojis bajtove u hex ispisu da vizuelno vidis gde se nalazi
|
|
|
|
Poslao: 04 Dec 2013 19:12
|
offline
- savan2
- Građanin
- Pridružio: 15 Jul 2009
- Poruke: 150
|
Ma ok je, nema potrebe jer atag za duzinu lozinke i atag za duzinu ssida ne prelazi 0xff jer u androidu ne moze da se upise lozinka|ssid veca od lupam 50 slova! Zato sam i citao samo 1 byte tamo! Hvala tebi opet u svakom slucaju!
|
|
|
|
Poslao: 04 Dec 2013 19:15
|
offline
- morando
- Građanin
- Pridružio: 19 Maj 2011
- Poruke: 297
|
Nema problema, mislim kod ce ti raditi u tom slucaju, ali je ipak bolje igrati po pravilima jer onda ne moze da se desi da pogresis.
|
|
|
|
Poslao: 04 Dec 2013 19:21
|
offline
- savan2
- Građanin
- Pridružio: 15 Jul 2009
- Poruke: 150
|
Doce to s' vremena na vreme jer trenutno ucim c programiranje i nisam bas dobar, samouk sam
|
|
|
|