elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


  Mostrar Mensajes
Páginas: 1 ... 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 [32] 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 ... 231
311  Programación / Desarrollo Web / Re: Duda implementando "HMAC-based One-time Password Algorithm" en: 22 Diciembre 2019, 04:13 am
Te refieres a algo como utilizar el valor en formato base32 para realizar el hasheo y demas?

He modificado la funcion para poder testeaar varios valores al mismo tiempo:

Código
  1. function hotp($key,$c) {
  2. $mask = ['f' => '7','e' => '6','d' => '5','c' => '4','b' => '3','a' => '2','9' => '1','8' => '0'];
  3. echo "key: $key\n";
  4. echo "c: $c\n";
  5. $hash_value_str = hash_hmac("sha1",$c,$key);
  6. echo "hash: $hash_value_str\n";
  7. echo "4bits (hex): ".$hash_value_str[39]."\n";
  8. $offset = intval($hash_value_str[39],16)*2;
  9. $extract = substr($hash_value_str,$offset,8);
  10. echo "extract: $extract\n";
  11. if(isset($mask[$extract[0]])) {
  12. echo $extract[0]."& 7 =";
  13. $extract[0] = $mask[$extract[0]];
  14. echo $extract[0]."\n";
  15. echo "new extract: $extract\n";
  16. }
  17. $value = intval($extract,16);
  18. echo "Value: $value\n";
  19. return ($value % 1000000);
  20. }

Y ahora solo tengo que hacer:

Código
  1. $base32 = new Base2n(5, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', FALSE, TRUE, TRUE);
  2. $ct = floor(time()/30);
  3. $key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
  4. echo "Key in base32: ".$base32->encode($key)."\n";
  5.  
  6. printf("%06d\n",hotp($key,$ct));
  7. printf("%06d\n",hotp($base32->encode($key),$ct));
  8.  

Tiene muchos Echo la funcion que se pueden comentar, estan ahi para de momento validar que la funcion esta haciendo bien  los pasos del algoritmo.

Alguna salida es:

Código:
Key in base32: IFAUCQKBIFAUCQKBIFAUCQKBIFAUCQKBIFAUCQKBIFAUCQKBIFAQ====
key: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
c: 52566234
hash: 428fc537d16c867ee7e1b4b3cc432c7e288d5769
4bits (hex): 9
extract: e1b4b3cc
e& 7 =6
new extract: 61b4b3cc
Value: 1639232460
232460
key: IFAUCQKBIFAUCQKBIFAUCQKBIFAUCQKBIFAUCQKBIFAUCQKBIFAQ====
c: 52566234
hash: a49ac9470db4a542a36b42d28b7e089e11123f8a
4bits (hex): a
extract: 42d28b7e
Value: 1121094526
094526

Ahora como comentas he probado la llave en su formas de AAAAA y en sus forma en base32.

El google Authenticator lo configuro de la siguiente manera:

Primero agrego la llave en su formato base32


Y obtienes los valores



Pero no coincide con lo que arroja el programa, tengo la duda de saber si el valor $C es correcto, lo obtengo del time/30:

Código
  1. $ct = floor(time()/30);

Saludos!

MOD: Imagenes adaptadas a lo permitido.
312  Programación / Desarrollo Web / Re: dominios gratuitos tipo .tk en: 22 Diciembre 2019, 03:16 am
Jajaja que basura de servicio es Wix ...
313  Programación / Desarrollo Web / Re: dominios gratuitos tipo .tk en: 22 Diciembre 2019, 01:36 am
Solo el cargar la pagina hace como 150 requets de recursos diferentes y mas de 5 Megasbytes....
314  Foros Generales / Foro Libre / Re: Tomar café podría ayudar a reducir el riesgo de padecer Alzheimer o Parkinson en: 21 Diciembre 2019, 22:51 pm
Hola a todos Mi nombre es Alberto y soy Cafeinomano.

Entonces soy inmune. Bebo más café que agua.
Es diferente reducir el riesgo a ser eliminarlo, yo tambien tomo mucho cafe en noches de hacking.

315  Foros Generales / Dudas Generales / Re: deep web en: 21 Diciembre 2019, 09:18 am
antes antes que no existiera google youtube etc era mas fácil...ahora como se hace ?

Mas facil con modem telefonico de 26 o 52 Kbps?

¿Te conectabas a BBS ?

Saludos!
316  Foros Generales / Dudas Generales / Re: Emoji Fingerprint en: 21 Diciembre 2019, 05:48 am
Si las Apis mas modernas te pueden dar mas pistas del navegador por ejemplo en el canvas algunos navegadores que si soportan CanvasRenderingContext2D manejan de forma diferente el imageSmoothingEnabled  Incluso algunos no lo soportan del todo.

Puede aplicarle ese efecto a una imagen y ver el resultado (Creo que luego publicare la prueba mencionada)

En la siguiente pagina pueden ver algunos de los Emojis, (No estan todos, estory corrigiendo un bug que tiene la pagina)
Emoji Fingerprint

Algunas imágenes de muestra

Código:
data:image/png;base64,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

Código:
data:image/png;base64,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]Imagen 2
317  Programación / Desarrollo Web / Re: Duda implementando "HMAC-based One-time Password Algorithm" en: 21 Diciembre 2019, 04:22 am
 ;-) ;-) ;-) Muchas gracias.

He hecho una implementacion algo vaga (Ahorita no esta optimizada ni nada) y aunque llego al mismo resultado del ejemplo que muestras si meto el hash indicado del ejemplo, y si, produce el Valor de 6 dígitos del ejemplo.

Código:
$hash_value_str = "1f8698690e02ca16618550ef7f19da8e945b555a";

Código
  1. <?php
  2. /* dd if=/dev/urandom of=./key.dat bs=1024 count=1*/
  3. include_once("Base2n.php");
  4. $base32 = new Base2n(5, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567', FALSE, TRUE, TRUE);
  5. $mask = ['f' => '7',
  6. 'e' => '6',
  7. 'd' => '5',
  8. 'c' => '4',
  9. 'b' => '3',
  10. 'a' => '2',
  11. '9' => '1',
  12. '8' => '0'];
  13. //$key = file_get_contents("./key.dat");
  14. $key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
  15. $ct = floor(time()/30);
  16. $hash_value_str = hash_hmac("sha1",$ct,$key);
  17. //$hash_value_str = "1f8698690e02ca16618550ef7f19da8e945b555a";
  18. echo "$hash_value_str\n";
  19. echo strlen($hash_value_str)."\n";
  20. echo $hash_value_str[39]."\n";
  21. $offset = intval($hash_value_str[39],16)*2;
  22. echo "offset: $offset\n";
  23. $extract = substr($hash_value_str,$offset,8);
  24. echo "extract: $extract\n";
  25. if(isset($mask[$extract[0]])) {
  26. $extract[0] = $mask[$extract[0]];
  27. }
  28. echo "extract: $extract\n";
  29. $value = intval($extract,16);
  30. echo "Valor: $value\n";
  31. echo "Digtos: ". ($value % 1000000) ."\n";
  32. echo $base32->encode($key) ."\n";
  33. ?>
  34.  

El detalle es que paso la salida en Base32 del valor $key a la aplicación del Google Autenticador y los números que ahí produce no coinciden con los que arroja el programa cuando metod los valores de $key y el valor $ct en  base a time()/30.

Voy a ver que puedo estar haciendo mal. Tome una implementacion de base32 que se encuentra en el siguiente link, por si alguien lo quiere probar.

https://github.com/ademarre/binary-to-text-php/blob/master/Base2n.php

Saludos!

318  Foros Generales / Noticias / Re: ¿Cómo sabe Facebook sugerirte personas que quizá conozcas? en: 21 Diciembre 2019, 03:57 am
Yo pensaba en las redes Wi-fi por las que pasas, Estaciones locales de telefonía y localización geográfica en general.

Si es posible que también esos criterios tengan cierta ponderación. Yo le apuesto mas a lo que mencione, siempre que instalas el facebook te pide acceso a tu registro telefonico y en base a eso te recomienda amigos en fin.

Saludos!
319  Programación / Desarrollo Web / (Solucionado) Duda implementando "HMAC-based One-time Password Algorithm" en: 21 Diciembre 2019, 00:02 am
Bueno, lo pongo aqui por que no se si corresponde mas a seguridad o PHP, pero su implementación ayuda mucho en el desarrollo WEB. Que algun moderador lo mueva a donde sea mas conveniente.

Estoy implementando el algoritmo para HOTP (HMAC-based One-time Password Algorithm) En su modalidad basada en el tiempo de UNIX

Actualemente tengo lo siguiente:

Código
  1. /*
  2. dd if=/dev/urandom of=./key.dat bs=1024 count=1
  3. */
  4. $key = file_get_contents("./key.dat");
  5. $ct = floor(time()/30);
  6. echo hash_hmac("sha1",$ct,$key)."\n";
  7.  

El código actualmente genera un hash distinto cada 30 segundos exactos mi duda es como llegar a los 6 u 8 dígitos que muestra la aplicaciones de Authenticator como la de google.

Nota para los que me digan que no utilize sha1, lo utilize por que wikipedia indica que es el default, pero espero que pueda ser configurable para utilizar sha256 y alguno de la misma familia.

https://en.wikipedia.org/wiki/HMAC-based_One-time_Password_algorithm

Saludos.



Solucionado gracias a las observaciones de MinusFour.

La funcion quedo de la siguiente manera:

Código
  1. function hotp($key,$c) {
  2. $mask = ['f' => '7','e' => '6','d' => '5','c' => '4','b' => '3','a' => '2','9' => '1','8' => '0'];
  3. $hash_value_str = hash_hmac("sha1",pack("H*",sprintf("%016x",$c)),$key);
  4. $offset = intval($hash_value_str[39],16)*2;
  5. $extract = substr($hash_value_str,$offset,8);
  6. if(isset($mask[$extract[0]])) {
  7. $extract[0] = $mask[$extract[0]];
  8. }
  9. $value = intval($extract,16);
  10. return ($value % 1000000);
  11. }

Y para utilizarlo solo basta llamarla:

Código
  1. $ct = floor(time()/30);
  2. $key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
  3. printf("%06d\n",hotp($key,$ct));
  4.  

Esto arroja los 6 dígitos que deben de coincidir con la aplicación de Autenticador que tengamos instalada en el móvil.

Para este ejemplo se puede configurar manualmente como se muestra en una las imágenes.

320  Foros Generales / Noticias / Re: 27.000 'bots' actuaron en Twitter durante las elecciones del 10N, según la la... en: 20 Diciembre 2019, 23:43 pm
Twitter es un desmadre se vuelven tendencia temas como si fuera el fin del mundo y al final es solo algo muy local donde solo quedan 2 bandos diametralmente opuestos a favor y en contra.
Páginas: 1 ... 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 [32] 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 ... 231
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines