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

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


  Mostrar Temas
Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ... 36
51  Programación / Bases de Datos / [Pregunta]: ¿Cómo hacer esta consulta 2? en: 23 Abril 2021, 00:07 am
Hola,

bueno la anterior consulta ya la hace correctamente ahora tengo problemas con esta otra que es muy similar. Para este caso ya no va a eliminar las tentativas de un usuario si este llego a 6 sino que las va a eliminar si son 1 o 5 tentativas pero las eliminará si la fecha (unix) de creación tiene una antiguedad de 12 horas o más. (pero solo se evalua la más reciente)

Es decir, como son los unix no son mas que numeros enteros lo que hago para evaluar la mas reciente y ver si tiene esa antiguedad de 12 horas es tomar dentro de todos los registros/tentativas del usuario el unix mas grande.

Es decir:
Código
  1. $query = $con->prepare('DELETE FROM attempts WHERE id_user IN (SELECT A.id_user, MAX(A.unix_date) FROM attempts A INNER JOIN users U ON A.id_user = U.id_user WHERE (:unix_grace_delete_attempts >= MAX(A.unix_date)) AND U.login_banned = 0 GROUP BY A.id_user HAVING COUNT(*) >= 1 AND COUNT(*) <= 5');
  2. $query->execute(array(':unix_grace_delete_attempts' => $unix_grace_delete_attempts));
  3.  

Siempre uso BETWEEN en vez de hacer COUNT(*) >= 1 AND COUNT(*) <= 5 pero mientras mas simple de entender la consulta mejor para todos.

En relación a sobre qué es $unix_grace_delete_attempts lo que le estoy haciendo es restarle a el unix actual unas 12 horas.

Código
  1. $unix_now = time();
  2. $unix_grace_delete_attempts = strtotime('-12 hours', $unix_now);
  3.  
52  Programación / Bases de Datos / [Pregunta]: ¿Cómo puedo hacer esta consulta? en: 21 Abril 2021, 19:58 pm
Hola,

tengo una tabla 'attempts' donde guardará todas las tentativas erróneas de login de los usuarios,  como máximo pueden llegar a tener 6 tentativas.

Ejemplo:
Código
  1. * ID_USER IP
  2. 1. 37  ::1
  3. 2. 37  ::1
  4. 3. 37  ::1
  5. 4. 37  ::1
  6. 5. 37  ::1
  7. 6. 37  ::1
  8. 7. 79  225.341.63
  9.  

Básicamente tenemos 6 tentativas del usuario 37 y una tentativa en la cuenta del usuario 79 (id_user de attempt ya está relacionado con el id_user de users)

Hecho eso ahora necesito que por medio de una consulta eliminar todas las tentativas a uno de estos usuarios si llega a tener 6.

Código
  1. "DELETE FROM attempts WHERE [Aquellos usuarios que tengan = 6 tentativas]"
  2.  
53  Programación / PHP / [Pregunta]: Modificar la variable original en PHP en: 30 Marzo 2021, 18:44 pm
Hola,

tengo 2 archivos PHP donde en el primer archivo tengo definida una función:
Código
  1. function myFunction($variable)
  2. {
  3.      $variable = 3;
  4. }
  5.  



En mi segundo archivo PHP tengo definida $variable (no es un parámetro como antes), y una llamada a myFunction()
Código
  1. $variable = 7;
  2. myFunction($variable); // entonces le mando por parámetro la variable a la que le quiero modificar el valor
  3.  

Entiendo que con return en la función y $variable = myFunction($variable); asunto arreglado pero necesito hacerlo de esta forma (si es que se puede).

Capaz usando global $variable o algo así, se pueda hacer algo...
54  Programación / Desarrollo Web / [Pregunta]: ¿Existe un script (JS) para eliminar los datos en la memoria caché? en: 22 Marzo 2021, 04:14 am
La idea es saber si hay disponible algún script que al ser ejecutado elimine todos los datos de la memoria caché o al menos aquella información almacenada sobre mi aplicación web como imágenes por ejemplo.

El objetivo de encontrar este script es que cada vez que yo mejoro mi código, agrego cosas, edito cosas (como imágenes por ejemplo) estas se vean reflejadas sin que el usuario tenga que darle al "CTRL + F5".

Ya tengo un sistema de versiones donde yo para agregar una versión completo un formulario, donde escribo el título (v1.0.0), y luego las mejoras correspondiente a dicha versión.

Con el script (si es que existe) + este sistema que ya tengo, creo que puedo armarme algo para esto.
55  Programación / Desarrollo Web / [Pregunta]: Formato de imágenes "image/webp" en: 5 Marzo 2021, 05:22 am
Hola,

bueno estaba viendo que existe este formato para las imágenes además de los tradicionales ya conocidos como jpg (o jpeg), y png (sé que hay otros pero estos son los más comunes) el tema es que quiero que a partir de ahora mi aplicación acepte imágenes webp pero tengo una duda y es que no estoy seguro si las imágenes webp también existen imágenes sin fondo como lo son las de png.

Es decir, como es un formato nuevo para mi no se si dentro del formato webp puede venir una imagen sin fondo como lo sería una de .png

(( Yo valido siempre antes el mimetype de las imágenes )).

En la aplicación se permiten en lo posible todas las imágenes mientras que no sean png (sin fondo),

- image/jpg
- image/jpeg
- image/webp

no sé cual más debería incluir...
56  Programación / Desarrollo Web / [Pregunta]: Lógica para un sistema de seguridad contra ataques de fuerza bruta en el login en: 12 Febrero 2021, 23:45 pm
Básicamente estoy pensando como podría hacer un sistema nuevo de seguridad que prevenga ataques de fuerza bruta en el login.

Es decir, que un usuario determinado intente constantemente con diferentes contraseñas (se espera que tenga un diccionario de contraseñas) hasta poder ingresar a la cuenta de la victima.
Me vinieron algunas ideas pero como todo está muy fresco seguro hay cosas que estoy dejando pasar.

El sistema funcionaría de la siguiente manera, cada vez que un usuario ingrese una contraseña incorrecta el sistema le incrementará a +1 una variable que podemos llamar "attempt" (no estoy seguro si en una $_SESSION o en un campo nuevo en la bd para la cuenta de usuario que aplique), al llegar a las 40 tentativas lo que ocurrirá sería bloquear el login para ese usuario. Absolutamente nadie podrá iniciar sesión en esa cuenta por lo menos durante un periodo de tiempo que aún no defino bien, quizás una 6 horas no estoy seguro.

Por supuesto puede ocurrir que la persona que desee ingresar sesión sea el propio usuario, no el atacante. Entonces se le podría enviar un mail justo en el momento de bloquear el login explicándole lo ocurrido, recomendándole el uso de una contraseña segura, por supuesto algo que se me ocurrió es poder darle la posibilidad a el dueño de la cuenta en las opciones de privacidad de querer que su cuenta quede bloqueada (el login) ante estos casos o que no quede.

En fín, en el correo que se le enviará se le dirá que además de la recomendación del uso de contraseñas seguras y esa opción nueva de privacidad, estaría un código que deberá ingresar en un determinado formulario para que se pueda desbloquear el login nuevamente sin que tenga que esperar las 6h.

Es una idea muy fresca así que espero puedan darme más ideas, o mejoras a todo esto.
57  Programación / PHP / [Pregunta]: ¿Cómo sería el equivalente de este código JS en PHP? en: 12 Febrero 2021, 22:30 pm
No necesito que me hagan todo el algoritmo, pero hay cosas como .match de javascript que nosé cual sería en PHP.

Código
  1.                                var expression_lower = new RegExp('[a-z]');
  2. var expression_number = new RegExp('[0-9]');
  3. var expression_symbol = new RegExp('([!,%,&,@,#,$,^,*,?,_,~])');
  4. var expression_upper = new RegExp('[A-Z]');
  5. var security = 0;
  6.  
  7. if(string.match(expression_lower))
  8. {
  9. security = security + 1;
  10. }
  11.  
  12. if(string.match(expression_number))
  13. {
  14. security = security + 1;
  15. }
  16.  
  17. if(string.match(expression_symbol))
  18. {
  19. security = security + 1;
  20. }
  21.  
  22. if(string.match(expression_upper))
  23. {
  24. security = security + 1;
  25. }
  26.  
  27. if(string.length >= 8)
  28. {
  29. security = security + 1;
  30. }
  31.  
58  Programación / Desarrollo Web / [Pregunta]: Definir un arreglo vacío (javascript). en: 3 Enero 2021, 22:32 pm
Hola,

¿Cómo podría definir un arreglo vacío?
Me explico...

Código
  1. var formdata = new FormData();
  2. var my_array = []; // esto es un arreglo vacío, si por consola imprimimos este dato nos va a devolver: []
  3.  
  4. for(var i = 0; i < my_array.length; i++)
  5. {
  6.      formdata.append('my_array[]', my_array[i]);
  7. }


Como el tamaño del arreglo es 0 porque está vacío, no va a entrar en ninguna interacción y no va a agregar dicho arreglo.

Intenté con algunas otras maneras pero siempre me termina agregando un dato vacío.. "" cuando lo llamo con formdata.get('my_array[]'); y lo que yo quiero que devuelva sea: [] que significa arreglo vacío.


Mod: Sacados los comentarios a texto para mejor lectura.
59  Programación / Desarrollo Web / [Pregunta]: ¿Por qué pasa esto con mis llamadas AJAX? Es algo totalmente ilógico y sin sentido. en: 28 Diciembre 2020, 00:39 am
Hola,

bueno tengo para mostrarles hoy, dos funciones que hacen llamadas a código del servidor por medio de AJAX.

El problema que tengo es que si estas funciones ajax se ejecutan de manera "Secuencial" es decir, primero una y después la otra no va a haber ningún problema. Pero si las ejecuto al mismo momento se me bugean por lo menos la primer llamada de la siguiente manera.

Cuando digo que se bugean me refiero a que cuando la intento volver a llamar a dicha función esta no se ejecuta (no pasa absolutamente nada)

Para el ejemplo que les tengo, Un sistema donde tengo dos cajas donde en principio son de color gris pero al ejecutar "Ajax_Colour_A();" o "Ajax_Colour_B();" por medio de la consola del navegador va a modificar el color de las cajas. Si es Ajax_Colour_A modificará con color ROJO la primer caja pero si es Ajax_Colour_B modificará con color azul la segunda caja.

Además, abajo de todo habrá un mensaje en texto plano, de "Ejecutando..." cuando se este ejecutando el archivo php que este mensaje ayudará a que vean que no se ejecuta el archivo cuando se bugea su función correspondiente.

- test.php (tendrá las dos cajas y las definiciones de las funciones necesarias)
- ajax_colour_a.php (este archivo php será el que tendrá un script para modificar el color de la caja A con color ROJO)
- ajax_colour_b.php (este archivo php será el que tendrá un script para modificar el color de la caja B con color AZUL)

Aclaración: No hace falta verle el sentido al código, es solamente un ejemplo lo más básico posible para poder entender el problema.

test.php
Código
  1. <div id="box_a" style="background: #f2f2f2; border: 1px solid #e6e6e6; height: 300px; width: 300px; padding: 10px;">
  2.         <h2 style="text-align: center; margin-top: 70px;">AJAX #1</h2>
  3.         <h6 style="text-align: center; margin-top: 10px;">Ajax_Colour_A();</h6>
  4. </div>
  5. <div id="box_b" style="background: #f2f2f2; border: 1px solid #e6e6e6; height: 300px; padding: 10px;">
  6.         <h2 style="text-align: center; margin-top: 70px;">AJAX #2</h2>
  7.         <h6 style="text-align: center; margin-top: 10px;">Ajax_Colour_B();</h6>
  8. </div>
  9.  
  10. <script type="text/javascript">
  11.    var ajax_file_used = null;
  12.    var ajax_files = ['ajax_colour_a.php', 'ajax_colour_b.php'];
  13.    var ajax_enviando = [];
  14.    var ajax_solicitud = [];
  15.  
  16.    for(var i = 0; i < ajax_files.length; i++)
  17.    {
  18.        ajax_enviando[ajax_files[i]] = false;
  19.        ajax_solicitud[ajax_files[i]] = null;
  20.    }
  21.  
  22.    function Ajax_Colour_A()
  23.    {
  24.        ajax_file_used = 'ajax_colour_a.php';
  25.  
  26.        if(ajax_enviando[ajax_file_used] == false)
  27.        {
  28.            ajax_enviando[ajax_file_used] = true;
  29.  
  30.            ajax_solicitud[ajax_file_used] = $.ajax({
  31.                url: (ROOT_URL)+'/ajax/'+(ajax_file_used),
  32.                type: 'POST',
  33.                dataType: 'html',
  34.  
  35.                success: function()
  36.                {
  37.                    ajax_enviando[ajax_file_used] = false;
  38.                }
  39.            })
  40.  
  41.            .done(function(results)
  42.            {
  43.                $('body').append(results);
  44.            })
  45.  
  46.            .fail(function()
  47.            {
  48.                ajax_enviando[ajax_file_used] = false;
  49.            })
  50.        }
  51.    }
  52.  
  53.    function Ajax_Colour_B()
  54.    {
  55.        ajax_file_used = 'ajax_colour_b.php';
  56.  
  57.        if(ajax_enviando[ajax_file_used] == false)
  58.        {
  59.            ajax_enviando[ajax_file_used] = true;
  60.  
  61.            ajax_solicitud[ajax_file_used] = $.ajax({
  62.                url: (ROOT_URL)+'/ajax/'+(ajax_file_used),
  63.                type: 'POST',
  64.                dataType: 'html',
  65.  
  66.                success: function()
  67.                {
  68.                    ajax_enviando[ajax_file_used] = false;
  69.                }
  70.            })
  71.  
  72.            .done(function(results)
  73.            {
  74.                $('body').append(results);
  75.            })
  76.  
  77.            .fail(function()
  78.            {
  79.                ajax_enviando[ajax_file_used] = false;
  80.            })
  81.        }
  82.    }
  83. </script>
  84.  


ajax/ajax_colour_a.php
Código
  1. <!-- ajax_colour_a.php -->
  2. <?php
  3. echo "<br>ejecutando...<br>";
  4.  
  5. ?>
  6. <script type="text/javascript">
  7. document.getElementById('box_a').style.background = 'red';
  8. </script>
  9.  

ajax/ajax_colour_b.php
Código
  1. <!-- ajax_colour_b.php -->
  2. <?php
  3. echo "<br>ejecutando...<br>";
  4.  
  5. ?>
  6. <script type="text/javascript">
  7. document.getElementById('box_b').style.background = 'blue';
  8. </script>
  9.  

La verdad no puedo entender que es lo que está mal con el código porque todo debería de funcionar de 10, estuve todo el día de el porque de esto pero no se entiende.
60  Programación / Desarrollo Web / [Pregunta]: ¿Cómo puedo manipular un entero y un decimal en conjunto en una consulta SQL? en: 24 Diciembre 2020, 03:03 am
Buenas noches,

me refiero a tener los siguientes campos en una base de datos:

- number_int // representa un numero entero
- number_dec // representa un numero decimal (solo la parte después de la coma)

Ejemplos:

- number_int // por ejemplo: 9
- number_dec // por ejemplo: 34 donde 34 es "x, 34"

Mi pregunta es que en una consulta SQL yo pueda juntar tanto el number_int como el number_dec y formen un valor, en este caso el valor formado sería el 9.34 o 9,34

Creo que con eso ya me pude dar a entender correctamente, pero por las dudas agrego otro ejemplo:

Código
  1. "SELECT * FROM tabla WHERE Juntar(number_int y number_dec) >= x and Juntar(number_int y number_dec) <= y"
  2.  

Gracias.

Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ... 36
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines