pf=fopen("ftp://ftp.byethost5.com/arch.txt","a+"); Es posible?

Iniciado por Mr.Blue, 2 Marzo 2011, 19:04 PM

0 Miembros y 3 Visitantes están viendo este tema.

Mr.Blue

estoy tratando de crear una conexion en base a un codigo que vi por aca.
La idea es crear un archivo en un ftp.
Lo primero que ago es crear la conexion
Código (cpp) [Seleccionar]

HINTERNET Open=InternetOpen("Explorador",0,NULL,NULL,0);
    if(Open==NULL){
       printf("[+]Error al abrir la conexion\n");

       return -1;
       }
    printf("[+]Abriendo conexion..");

   
    HINTERNET Connect=InternetConnect(Open,"ftp.byethost5.com",INTERNET_DEFAULT_FTP_PORT,"Usuario","Password",INTERNET_SERVICE_FTP,0,0);
    if(Connect==NULL){
       InternetCloseHandle(Open);
       printf("[+]Error al conectar con el servidor\n");
       main();
       
              }
       
    printf("-OK- \n[+]Conexion establecida...\n");

           
Luego creo el archivo
 
Código (cpp) [Seleccionar]
FILE *pf;
pf=fopen("ftp://ftp.byethost5.com/arch.txt","a+");
             
               if(pf==NULL)
               {
                   puts ("[+]Error al escribir/crear archivo... no se puedo abrir\n");
               }


Salida
Citar
  • Abriendo conexion..-OK-
  • Conexion establecida...
  • Error al escribir/crear archivo... no se puedo abrir
Es posblie realizar esto?, alguna sugerencia, o error en el codigo?

Garfield07

Empieza usando las funciones open () y fopen () para el archivo. Luego para conectar... socket (), connect (), send () y recv ()...


* Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente.
* No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado.
* Si compila esta bien, si arranca es perfecto.

¡Wiki elhacker.net!
Un saludo

Mr.Blue

No entendi :xD, por que deberia usar mas funciones?
si establesco una conexion a mi servidor ftp, deberia poder crear un archivo en el directorio que marco
Citarpf=fopen("ftp://ftp.byethost5.com/arch.txt","a+");
mientras este logeado.
por que utilizar send y recv?
osea en todo caso usaria send para enviar al ftp, pero estoy creando un archivo.txt en modo a+.

Cual seria la logica o los items para poder subir en tiempo real el archivo.txt?

Con esto de tiempo real me refiero...
Un ejemplo seria con un keylogger  donde las capturas podria guardarlas en un .txt, pero en vez de guardarlo en la pc victima quiero guardarlo en un ftp.

Arkangel_0x7C5

Cita de: Sr.Blanco en  2 Marzo 2011, 21:11 PM
No entendi :xD, por que deberia usar mas funciones?
si establesco una conexion a mi servidor ftp, deberia poder crear un archivo en el directorio que marcomientras este logeado.
por que utilizar send y recv?
osea en todo caso usaria send para enviar al ftp, pero estoy creando un archivo.txt en modo a+.

Cual seria la logica o los items para poder subir en tiempo real el archivo.txt?

Con esto de tiempo real me refiero...
Un ejemplo seria con un keylogger  donde las capturas podria guardarlas en un .txt, pero en vez de guardarlo en la pc victima quiero guardarlo en un ftp.

no puedes hacerlo asi, porque FTP es ningun sistema de ficheros en red, con carpetas en red quizas pudiera funcionar, o con nfs. pero no con ftp

Tendrias que implementar el cliente FTP con send y recv.
Y el protocolo no permite el aceso aleatorio. O descargas el fichero entero o lo subes entero

Gunit

#4
No es posible..
Deberias abrir un socket a ftp.byethost5.com desde el puerto 21,  y de alli hacer send con comandos FTP.. para descargar el archivo y asi modificarlo localmente..

Para ver cuales son los comandos, logueate en el servidor FTP desde consola i haz un HELP.

Mirate estos ejemplos de FTP desde C++: http://www.example-code.com/vcpp/ftp.asp

Saludos  ;-)

Arkangel_0x7C5

bueno, seria posible si antes de abrir el archivo conectaras una unidad de red, eso te permitiria acceder a ese ftp como si fuera el mismo sistema de ficheros.....

Garfield07



* Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente.
* No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado.
* Si compila esta bien, si arranca es perfecto.

¡Wiki elhacker.net!
Un saludo

Mr.Blue

Mas o menos algo de socket me acuerdo pero lo unico que logre hacer fue un chat que andaba medio pelo jaja.
lo que no entiendo aun es como relacionar con la direccion ftp
Ej
host=gethostbyname("localhost");
esta linea resuelve el dominio en este caso local host
ahora tendria que cambiar por
host=gethostbyname("ftp://ftp.blabla.com"); ? y cambiar el puerto a 21?

Pero sigo con las dudas porq si esto es la parte de servidor send, por parte cliente que recive? si tengo q enviar un archivo .txt como lo ago?

En si como interactuo con el servidor ftp mediante sockt para enviar un txt.

PD. De todas formas resolvi ya la duda inicial, de otra manera, pero me quede con esto de sockt y ftp XD

PD2. http://www.example-code.com/vcpp/ftp.asp no entiendo el codigo jajajaja, que verguenza, no utiliza las api de windows. Tendira q romperme un rato largo la cabeza para enterder :laugh:

BlackZeroX

Cita de: Arcangel_0x7C5 en  2 Marzo 2011, 22:00 PM
Tendrias que implementar el cliente FTP con send y recv.
Y el protocolo no permite el aceso aleatorio. O descargas el fichero entero o lo subes entero

En FTP, No es nesesario descargar TODO (para leer rangos de bytes) pero si e eviarlo enviarlo

Dulces Lunas!¡.
The Dark Shadow is my passion.

Gunit

Cita de: Sr.Blanco en  4 Marzo 2011, 04:19 AM
Ej
host=gethostbyname("localhost");
esta linea resuelve el dominio en este caso local host
ahora tendria que cambiar por
host=gethostbyname("ftp://ftp.blabla.com"); ? y cambiar el puerto a 21?

La direccion FTP seria ftp.blabla.com lo del "ftp://" sobra, es solo para indicar al navegador que use el protocolo FTP y no el HTTP...

para indicar el puerto se usa htons(puerto);

Leete esta guia, es donde aprendi yo a manejar sockets.. http://mzrdzoneforo.tomahost.org/index.php?PHPSESSID=f7t6o9rmcsl3a9r08f552qidj4&topic=29.0 (Creditos a MazarD)

Saludos  ;-)