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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Temas
Páginas: [1] 2 3 4
1  Foros Generales / Foro Libre / ¿Qué tan espía es Fibertel? en: 20 Diciembre 2017, 18:01 pm
¡Hola a todos!

Hace menos de un mes que tengo la cagada de Fibertel. Y no me gusta para nada, primero de todo buscando por internet ví cosas como estas:

Publicidad al navegar, https://www.reddit.com/r/argentina/comments/66evj8/redirectpublicidad_de_fibertel_al_navegar/

No podes acceder al router/modem localmente porque la password por defecto no está puesta la cambian, o sea si podés pero tenés que sacar el cable coaxil y hacer un reset al router para logearte en 192.168.0.1 y cuando conectás el cable coaxil de nuevo, te toman todos los datos de allá hasta el nombre de red de WiFi, en mi opinion esos datos deberían ser sólo locales, (y algunos cambios que hiciste no te los toma).

El router que venden está cerrado es un Cisco DPC3825, hay tutoriales de como flashearlo pero ya me parece mal desde el principio.

Cuando entrás a la página de www.fibertel.com.ar automáticamente te identifica por la IP y pone tu nombre y apellido en la barra, me parece horrible que hagan eso.

Todo lo que hacen me parece que está mal, y no confío para nada en Fibertel, pero como tenía apuro lo contraté el próximo mes me cambio a otra compania. Alguna vez escuché hablar de un proxy transparente también.

¿Qué opinan ustedes de Fibertel?, ¿confiarían más en Fibertel que cualquier otra cosa?

Saludos.
2  Foros Generales / Foro Libre / Matemática, ¿cómo puedo mejorar velocidad de hacer cuentas ? en: 10 Noviembre 2017, 23:39 pm
Buenas.

Soy medio lento haciendo cuentas y me a veces me hace enojar, ¿saben alguna técnica para sumar o restar más rápido?, a veces me joden con lo que me cobran y recién cuando llego a mi casa me doy cuenta, obviamente que voy a reclamar, y cuando voy a reclamar la plata me siguen mintiendo que se equivocaron "sin querer", mentirosos.
3  Seguridad Informática / Seguridad / [LFI] ¿Podemos saltar este filtro para poder leer otro tipo de archivo? en: 9 Agosto 2017, 04:17 am
Hola.

Quiero ver si consigo explotar un LFI en bibtexbrowser.

Directorio a explotar: /bibtexbrowser.php?frameset&bib=file.fib

Me puse a mirar el código de bibtexbrowser ( https://github.com/monperrus/bibtexbrowser/blob/master/bibtexbrowser.php ), y me encontré con esto:

Código
  1.  foreach(explode(MULTIPLE_BIB_SEPARATOR, $bibtex_filenames) as $bib) {
  2.    // get file extension to only allow .bib files
  3.    $ext = pathinfo($bib, PATHINFO_EXTENSION);
  4.    // this is a security protection
  5.    if (BIBTEXBROWSER_LOCAL_BIB_ONLY && (!file_exists($bib) || strcasecmp($ext, 'bib') != 0)) {
  6.      // to automate dectection of faulty links with tools such as webcheck
  7.      header('HTTP/1.1 404 Not found');
  8.      // escape $bib to prevent XSS
  9.      $escapedBib = htmlEntities($bib, ENT_QUOTES);
  10.      die('<b>the bib file '.$escapedBib.' does not exist !</b>');
  11.    }
  12.  } // end for each

Este código está un poco más actualizado que el que estoy explotando en otra página, porque la versión que esta cargada en la página donde estoy explotando la vulnerabilidad es vulnerable a XSS, cuando esta versión de bibtexbrowser no es vulnerable, se puede ver que no es vulnerable por esta línea:
Código
  1.      // escape $bib to prevent XSS
  2.      $escapedBib = htmlEntities($bib, ENT_QUOTES);

Ahora volviendo al caso de LFI:

Baja la extensión del archivo así:
Código
  1. $ext = pathinfo($bib, PATHINFO_EXTENSION);

Buscando por Google, leí que se podía hacer un bypass de la función pathinfo utilizando null byte ( http://www.madirish.net/202 ).

Entonces para cargarme el index.php intenté algo como esto: index.php%00.bib , pero no parece funcionar.

¿Qué otras cosas podría intentar? o alguna explicación de porqué esto no funciona.

Saludos

4  Programación / Programación C/C++ / {FizzBuzz} Ofuscado en C. en: 29 Junio 2017, 03:03 am
Hola.

Encontré este código buscando por Google y me parece tremendo.

Es un fizzbuzz y está terrible.

¿FizzBuzz, qué es?
Citar
Escribe, en el lenguaje de programación que desees, un programa que muestre en pantalla los números del 1 al 100, sustituyendo los múltiplos de 3 por el palabro “Fizz” y, a su vez, los múltiplos de 5 por “Buzz”. Si son múltiplos de 3 y 5, imprimir el índice.

Código
  1. #include <stdio.h>
  2.  
  3. int main() {
  4.  int i;
  5.  for (i=1; i<=100; i++) {
  6.    if (i%3==0) {
  7.      printf("Fizz");
  8.    }
  9.    if (i%5==0) {
  10.      printf("Buzz");
  11.    }
  12.    if (i%3!=0 && i%5!=0) {
  13.      printf("%d", i);
  14.    }
  15.    printf("\n");
  16.  }
  17.  return 0;
  18. }

Ofuscado:

Código
  1. int main(__,_)
  2. int __;long unsigned _;
  3. {
  4.  if(exit((asprintf((void**)&_,&(14*!(__%15)+!!(__%15)*!(__%3)*2+!!(__%3)*!(__%5)*8+!!(__%5)*!!(__%3)*24)[(const char*)&(short[]){0,'if','zz',256,'ub','zz',512,'if','zz','ub','zz',1024,'d%',2048}],__),free((puts((void*)_),_)),__<100?(**main)(__+1):0)),1){}
  5. }
  6.  

¿Alguno tendrá algún consejo o alguna guia para aprender a ofuscar código en C? Encontré cosas interesantes de todos modos quería dejar este código hermoso acá.

Saludos.
5  Informática / Hardware / [Todo congelado/Intenté de todo] Mi PC deja de alimentar a los componentes. en: 10 Junio 2017, 08:23 am
¡Buenas! Vaaamooos al tema:

Para empezar, no es es un problema de software porque probé con varios sistemas operativos (Windows como varias distros de GNU/Linux) y en todos pasa exactamente lo mismo, la PC se congela/traba automáticamente sin que yo pueda dar instrucciones/comandos, no puedo hacer nada sólo reiniciar y ahí sí vuelve a funcionar.

Mi computadora después de un tiempo aleatorio (no más de 2 días), simplemente se queda congelada y el teclado ya no prende más, la luz del "Blog Num" no se activa, la placa de video queda con una luz roja, que también significa que no tiene más alimentación.

¿Puede ser un problema de compatibilidad mi placa madre con respecto a la placa de video?, la verdad es que no sé. Este problema apareció de la nada, mi computadora funcionaba perfectamente hasta este mes.

¿Puede ser un problema de disco duro?, miré el dmesg y nunca ví ningún error de escritura ni de lectura.

Mi PC:
Código:
AMD FX(tm) 6300 Six-Core Processor (6 CPUs), ~3.5GHz
Memoria: 8GB
Placa de video: ASUS R7 250X Series.
Placa Madre: ASRock N68-GS4 FX
Fuente: EVGA 500W 80 PLUS

WTFF! is happening.

Si me dicen que es un problema de hdd me compro otro, es lo único que no cambié de la computadora, pero no estoy 100% seguro de que sea eso, es más ni siquiera me llamó la atención en el primer momento, me parece que el problema es generado por otra cosa.

Ahora saqué todo limpié todos los contactos de cada uno, cambié la pasta térmica blablabla, y vamos a ver que pasa, ahora estoy corriendo Windows les aviso si me reinicia (creo que si va a pasar).

En caso de no tener respuesta a mi pregunta, ¿en qué página me recomendarías publicar este problema?

Saludos.
6  Programación / Programación C/C++ / PTHREADS - Programación concurrente. en: 6 Mayo 2017, 21:21 pm
Código
  1. #include <stdio.h>
  2. #include <pthread.h>
  3.  
  4. pthread_mutex_t MyMutex = PTHREAD_MUTEX_INITIALIZER;
  5. pthread_cond_t seguir2 = PTHREAD_COND_INITIALIZER;
  6. pthread_cond_t seguir = PTHREAD_COND_INITIALIZER;
  7.  
  8. #define N 5
  9.  
  10. int aloja = 0;
  11. int sigo = 0;
  12.  
  13.  
  14.  
  15. /*
  16. Cuando un thread -que debe tener el mutex ya tomado- llama a wait(), suelta el mutex y
  17. entra en espera bloqueante.
  18.  
  19. DEBE TENER EL MUTEX YA TOMADO!
  20.  
  21.  
  22.  
  23. Cuando un thread llama a signal(), otro thread en espera, de haberlo, se despierta de su wait()
  24. CON EL MUTEX YA ADQUIRIDO
  25.  
  26. CON EL MUTEX YA ADQUIRIDO!
  27.  
  28. */
  29.  
  30. void *freno (void *a)
  31. {
  32. for (;;){
  33.  
  34. // Tomo el mutex.
  35. pthread_mutex_lock(&MyMutex);
  36.  
  37. // Hey!, quiero entrar, terminá lo que estás haciendo, te espero.
  38. aloja = 1;
  39.  
  40. // Espero hasta que se "apague" la función avanzar.
  41. // Cuando se apaga, AUTOMATICAMENTE TOMO YO EL MUTEX!!
  42. while (sigo != 0){printf ("me llego la señal.\n"); pthread_cond_wait(&seguir,&MyMutex);}
  43.  
  44. // Si llegué hasta acá es porque yo tengo el mutex nadie mas lo puede tomar.
  45. printf ("Estoy en freno\n");
  46.  
  47. // Terminé de hacer todo lo que quería hacer.
  48. aloja = 0; // Por más que lo ponga el 0, "avanzar" no puede entrar todavía, porque
  49. // yo tengo el mutex!
  50.  
  51.  
  52. /* Libero el mutex, es decir, ahora la función avanzar sí puede tomar el mutex, PERO
  53. a la vez no ya que está dentro de un wait esperando un SIGNAL no que libere un mutex.
  54. Aunque no está demás recordar que solo 1 puede tomar el mutex a la vez. */
  55. pthread_mutex_unlock(&MyMutex);
  56.  
  57. /*
  58. Cuando un thread llama a signal(), otro thread en espera, de haberlo, se despierta de su wait
  59. CON EL MUTEX YA TOMADO!
  60.  
  61. pthread_cond_signal(&seguir2);
  62.  
  63. */
  64.  
  65. /*
  66. Cuando un thread llama a broadcast(), todos los threads en espera, de haberlo, se despiertan de su
  67. wait CON EL MUTEX YA TOMADO, es decir en este caso, se pelean por quien toma el mutex.
  68. */
  69.  
  70. pthread_cond_broadcast(&seguir2);
  71. }
  72. }
  73.  
  74.  
  75. void *avanzar (void *b)
  76. {
  77. for (;;){
  78. // Tomo yo el mutex, nadie más lo puede tomar.
  79. pthread_mutex_lock(&MyMutex);
  80. sigo++;
  81. // Libero, ahora si puede tomar el mutex la función "freno".
  82. pthread_mutex_unlock(&MyMutex);
  83.  
  84. //sleep(3);
  85. printf ("estoy en sigo.\n");
  86.  
  87. // No puedo tomar el mutex hasta que la función freno recién llegue a la linea donde entra en espera!
  88. pthread_mutex_lock(&MyMutex);
  89. sigo--;
  90. // Libero el mutex, recien ahora pueden ejecutarse más funciones "freno", antes no porque yo tenía el
  91. // mutex tomado.
  92. pthread_mutex_unlock(&MyMutex);
  93.  
  94. printf("Avanzar: %d\n",sigo);
  95.  
  96. /* Esta señal está esperando "freno" para poder continuar, pero además de esperar la señal espera
  97. también que la cantidad de "sigo" sea igual a 0 */
  98.  
  99. /*
  100. Si sigo es un número mayor a 0, entonces de todos modos va a seguir esperando.
  101. */
  102. pthread_cond_signal(&seguir);
  103.  
  104. /*PERO! a la vez yo me bloqueo. Esperando ahora que "freno" me desbloque. */
  105. /* Y a su vez freno está esperando que yo lo desbloquee. */
  106. while (aloja != 0)pthread_cond_wait(&seguir2,&MyMutex);
  107.  
  108. /*
  109. ¿Qué pasaría si avanzar toma el mutex e incrementa en 1 la variable "sigo" y al toque "freno" pone
  110. en 1 la variable aloja?
  111.  
  112. Lo que pasaría es que la variable sigo se incrementa luego suelta el mutex, lo toma la función"freno"
  113. pone en 1 aloja pero como sigo es mayor que cero entonces SUELTA el mutex automáticamente y deja
  114. que siga funcionando "avanzar", entonces pueden pasar cosas!:
  115.  
  116. Primero de todo, no se pueden ejecutar dos "frenos" a a la vez pero si se pueden ejecutar "avanzar"
  117. muchas veces.
  118.  
  119. Entonces, avanzar toma el mutex y decrementa en 1 la variable
  120. sigo y al momento lo suelta, PERO "freno" todavía no puede hacer nada porque está esperando un
  121. signal,  no está esperando que suelte el mutex (explicado anteriormente)
  122.  
  123. Entonces yo le doy el signal y suponiendo que el numero de sigo es igual a 0, se ejecuta freno y yo
  124. entro en espera hasta que freno termine.
  125.  
  126.  
  127. */
  128. }
  129.  
  130. }
  131.  
  132. int main (void)
  133. {
  134. int i;
  135. pthread_t prueba1[N],prueba2[N];
  136.  
  137. for (i=0; i<N; i++){
  138. pthread_create(&prueba1[i],0,freno,"aloja");
  139. pthread_create(&prueba2[i],0,avanzar,"chau");
  140. }
  141.  
  142. pthread_join(prueba1[0],0);
  143. return 0;
  144. }
  145.  

El programa sigue está logica aunque las funciones no se llamen lector y escritor.

1. No puede haber un lector accediendo al arreglo al mismo tiempo que un escritor.
2. Varios lectores pueden acceder al arreglo simult´aneamente.
3. S´olo puede haber un escritor a la vez.

Y además cuando los lectores que están leyendo terminen su lectura pero no se puedan empezar nuevas lecturas hasta que el escritor escriba.

freno = escritor.
avanzar = lector.

Aunque en este caso no escriben ni leen nada solo muestran texto.

El problema es que no funciona y no sé que es lo que estoy pensando mal, el programa se congela es decir en algún momento queda esperando algo que nunca llega.

7  Foros Generales / Sugerencias y dudas sobre el Foro / ¿Subforo de Erlang? en: 15 Abril 2017, 08:48 am
Hola.

¿Acá nadie programa en Erlang?, lo busqué creo que no existe ningún subforo.

Saludos.




[MOD] Revisa tu avatar, mide 477 x 819. Las Reglas del Foro indican maximo 300 x 400, de lo contrario será retirado.
8  Programación / Programación C/C++ / Fibonacci - Dynamic Programming. en: 21 Febrero 2017, 19:27 pm
Quiero escribir esto:

Código
  1. int fib (int n){
  2.        if (n <= 1)
  3.                return n;
  4.        return fib(n-1) + fib(n-2);
  5. }
  6.  

En programación dinámica es decir sin que se recalculen tantas veces los mismos resultados y usando TOP-DOWN.

Intenté esto:
Código
  1. #define MAX 1000
  2. char mem[MAX];
  3.  
  4. void start(){
  5.        int i;
  6.        for (i=0; i<MAX; i++)
  7.                mem[i] = -1;
  8. }
  9.  
  10. int td (int n){
  11.  
  12.        // Si es igual a -1 significa que todavía no lo resolvimos.
  13.        if (mem[n] == -1){
  14.  
  15.                if (n <= 1)
  16.                        mem[n] = n;
  17.                else
  18.                        mem[n] = td(n-1) + td(n-2);
  19.        }
  20.  
  21.        return mem[n];
  22. }
  23.  

Pero no funciona funciona en los primeros a partir del número 20 tira mal el resultado, ¿alguna pista de por qué no funciona?

Saludos.
9  Foros Generales / Sugerencias y dudas sobre el Foro / Duración de la sesión, ¿sólo 90 minutos? en: 12 Febrero 2017, 16:14 pm
¿Por qué? creo que la seguridad no va por ese lado, tener que estar logeandose cada 90 minutos con eso sólo consiguieron que guarde las contraseñas en mi navegador que tampoco es seguro.

Antes no estaba así, ahora cuando estoy escribiendo algún tema o mensaje tengo que volver a logearme, después volver atrás y copiar todo el mensaje, es molesto eso.
Me parece innecesario además, si te roban la cookie con XSS en menos de 10 minutos pueden hacer todo lo que quieran, ¿cuál es el fin de una sesión de sólo 90 m?

¿O es sólo mío el problema?

Saludos.
10  Programación / Programación C/C++ / Ackermann - Programacion Dinámica en: 11 Febrero 2017, 20:31 pm
Hola a todos!

Código
  1. int ackerman_or(int m, int n)
  2. {
  3.        if(m==0)
  4.                return n+1;
  5.  
  6.        else
  7.        {
  8.                if(n==0)
  9.                        return ackerman_or(m-1, 1);
  10.                else
  11.                        return ackerman_or(m-1, ackerman_or(m, n-1));
  12.        }
  13. }
  14.  


Intenté hacer una versión utilizando programación dinámica, ya que en esta versión se recalculan demasiadas cosas pero no tuve éxito.

¿Alguien que me podría dar una calavera de como hacerlo?

Saludos.
Páginas: [1] 2 3 4
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines