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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


  Mostrar Temas
Páginas: 1 2 [3] 4
21  Foros Generales / Dudas Generales / Precio iPad en Andorra en: 18 Marzo 2013, 12:56 pm
Hola amigos!

En Semana Santa subiré a Andorra, que me pilla cerquita, a esquiar con la familia  ;D y estaba pensando en comprar un iPad 4 mini y una camara reflex allí. ¿Alguien sabe si es verdad que hay mucha diferencia de pasta de comprar electronica en España? ¿No tiene otro impuesto parecido al IVA de aqui que suba su precio?

Grax!!
22  Programación / Programación C/C++ / [AYUDA] [C] Problema al leer archivo texto y enviar en: 26 Febrero 2013, 08:52 am
Hola! estoy haciendo una practica de la facultad en la que tengo que programar un sencillo msn/chat con sockets en C. Para ello, tengo una conversaciones en un fichero de texto, que tengo que leer y enviar a un servidor que está esperando.

Pero tengo un problema, si pongo el texto de la conversacion "a fuego" en una variable y la envio, todo va bien:

Código
  1. char *sc="hola!";
  2.    resp=sendto(conn_socket,
  3.                sc,
  4.                strlen(sc),
  5.                0,
  6.                (struct sockaddr *)&server,
  7.                sizeof(struct sockaddr)
  8.              );

Pero si primero leo el texto del archivo, y despues lo envio, se me produce un error en el servidor. Creo que es porque en el caso anterior creo la variable cadena del tamaño exacto a los datos que envío, y en el otro, creo una cadena de tamaño grande (MAXBUFLEN) y despues le agrego los datos, y claro, debe haber basura al final de la cadena. ¿Como podria solucionarlo?

Código
  1. char sc[MAXBUFLEN]="";
  2.    FILE *pFichero;
  3.    pFichero=fopen(PathFichero, "rb");
  4.    int x=0;
  5.    while (!feof(pFichero))
  6.    {
  7.        sprintf(sc,"%s%c",sc,fgetc(pFichero));
  8.        x++;
  9.    }
  10.    sc[x-1]='\0';
  11.    fclose(pFichero);
  12.    //Comprobamos que se haya leido bien el fichero
  13.    printf("[%s]",sc);
  14.    //Enviamos la conversacion
  15.    resp=sendto(conn_socket,
  16.                sc,
  17.                strlen(sc),
  18.                0,
  19.                (struct sockaddr *)&server,
  20.                sizeof(struct sockaddr)
  21.              );

Gracias!
23  Programación / Programación C/C++ / [C] [AYUDA] Problema ejecutando comando en XP 32bits en: 22 Febrero 2013, 10:44 am
Hi! Les comento un problema a ver si pueden ayudarme.

He programado una shell en C para Win, que me permite ejecutar comandos. Para ello utilizo las 2 siguientes funciones:

Código
  1. char* ReadAndHandleOutput(HANDLE hPipeRead)
  2. {
  3.    char lpBuffer[256]="";
  4.    DWORD nBytesRead;
  5.    char *partialResult;
  6.    char result[10000]="";
  7.    while(1)
  8.    {
  9.        if (!ReadFile(hPipeRead,lpBuffer,sizeof(lpBuffer),&nBytesRead,NULL) || !nBytesRead)
  10.        {
  11.            if (GetLastError() == ERROR_BROKEN_PIPE)
  12.                break; // pipe done - normal exit path.
  13.        }
  14.        partialResult = (char *) malloc(10000);
  15.        strncpy(partialResult,lpBuffer,nBytesRead);
  16.        sprintf(result,"%s%s",result,partialResult);
  17.    }
  18.    return result;
  19. }
  20.  
  21. char* executeCommand(char *argument)
  22. {
  23.    SECURITY_ATTRIBUTES sa;
  24.    STARTUPINFO si;
  25.    PROCESS_INFORMATION pi;
  26.  
  27.    void * leer;
  28.    void * escribir;
  29.  
  30.    ZeroMemory(&sa,sizeof(&sa));
  31.  
  32.    sa.nLength = sizeof(SECURITY_ATTRIBUTES);
  33.    sa.bInheritHandle = TRUE;
  34.    sa.lpSecurityDescriptor = NULL;
  35.  
  36.    CreatePipe(&leer,&escribir,&sa,0);
  37.  
  38.    GetStartupInfoA(&si);
  39.  
  40.    si.dwFlags = STARTF_USESTDHANDLES|STARTF_USESHOWWINDOW;
  41.    si.wShowWindow = SW_HIDE;
  42.    si.hStdOutput = escribir;
  43.    si.hStdError  = escribir;
  44.    si.hStdInput = leer;
  45.  
  46.    CreateProcess(0,argument,0,0,TRUE,0,NULL,NULL,&si,&pi);
  47.  
  48.    CloseHandle(escribir);
  49.  
  50.    return ReadAndHandleOutput(leer);
  51. }

La shell me funciona perfectamente en Windows Vista y 7 (tanto en 32 como en 64bits), pero en XP (32bits) el programa se me queda pillado en la siguiente instrucción:

Código
  1. if (!ReadFile(hPipeRead,lpBuffer,sizeof(lpBuffer),&nBytesRead,NULL) || !nBytesRead)

No consigo dar con el error por el que en XP se queda pillado en ese punto del código, porque el programa no se para, sigue funcionando sin hacer nada...

Por si les sirve el dato, he probado a escribir en un fichero un dato justo antes del IF ese que da el problema y despues, y el fichero lo deja pillado, porque no llega a la instruccion de cierre (logicamente).

La lectura la hago sincrona, poniendo la ultima variable de la llamada a ReadFile a NULL, asi que no veo donde puede estar el problema :/

Cualquier ayuda se la agradezco, que ando perdiendo mucho tiempo con esto

saludoss
24  Programación / Programación C/C++ / Listar directorio en c en: 6 Febrero 2013, 13:53 pm
Hola amigos,

Saben como puedo hacer para listar un dir en C? y devolver una list con los archivos y subcarpetas que contenga el directorio?

Graxx  :D
25  Sistemas Operativos / GNU/Linux / Monitorear Firewall desde Nagios en: 28 Enero 2013, 17:27 pm
Hola amigos,

Me encuentro acá configurando un Nagios. Una experiencia bonita porque permite gestionar muchas cosas desde un solo panel.

Tengo una duda, necesito monitorear los eventos de un Firewall fortigate desde Nagios. Por lo que he leido por Internet se deberia hacer por syslog.

Saben de algun plugin para Nagios o si de manera nativa puedo monitorear dichos eventos?

Graciass  ;D
26  Seguridad Informática / Análisis y Diseño de Malware / [DUDA] Hook a la api createprocess (Ansi C) en: 16 Enero 2013, 00:03 am
Hola amigos, estoy acá aprendiendo a hookear llamadas al sistema en ANSI C (no C++) y me gustaría para probar a hacer un hook a la API Createprocess de Windows, y así controlar por ejemplo que aplicaciones se ejecutan en el compu.

Pueden asesorarme un poco en el tema, tengo un poco la idea en la teoria mas o menos clara, pero en la practica ando un poco perdido

grax!
27  Programación / Programación C/C++ / [PROBLEMA] Ejecución de comandos en consola (dir vs ipconfig) Qué puede ocurrir? en: 3 Enero 2013, 19:36 pm
Hola! Les expongo un problema con el que me he encontrado mientras desarrollaba una app.

Dispongo de una app web en asp que envia instrucciones de CMD a un agente C desplegado en una máquina Windows.

Las instrucciones que recibe el agente las ejecuta utilizando las siguientes funciones, y el resultado es enviado de nuevo a la aplicación web asp:

Código:
char* ReadAndHandleOutput(HANDLE hPipeRead)
{
    char lpBuffer[256]="";
    DWORD nBytesRead;
    char *partialResult;
    char result[10000]="";
    while(1)
    {
        if (!ReadFile(hPipeRead,lpBuffer,sizeof(lpBuffer),&nBytesRead,NULL) || !nBytesRead)
        {
            if (GetLastError() == ERROR_BROKEN_PIPE)
                break;
        }
        partialResult = (char *) malloc(10000);
        strncpy(partialResult,lpBuffer,nBytesRead);
        sprintf(result,"%s%s",result,partialResult);
    }
    return result;
}

//Ejecuta un comando de CMD
char* execute(char *argument)
{
    SECURITY_ATTRIBUTES sa;
    STARTUPINFO si;
    PROCESS_INFORMATION pi;

    void * leer;
    void * escribir;

    ZeroMemory(&sa,sizeof(&sa));

    sa.nLength = sizeof(SECURITY_ATTRIBUTES);
    sa.bInheritHandle = TRUE;
    sa.lpSecurityDescriptor = NULL;

    CreatePipe(&leer,&escribir,&sa,0);

    GetStartupInfoA(&si);

    si.dwFlags = STARTF_USESTDHANDLES|STARTF_USESHOWWINDOW;
    si.wShowWindow = SW_HIDE;
    si.hStdOutput = escribir;
    si.hStdError  = escribir;
    si.hStdInput = leer;

    CreateProcess(0,argument,0,0,TRUE,0,NULL,NULL,&si,&pi);

    CloseHandle(escribir);

    return ReadAndHandleOutput(leer);
}

Funciona correctamente si le solicito comandos como "ipconfig", "arp -a" o "systeminfo" (me devuelve el resultado del comando perfectamente) pero si le solicito que me haga un "dir" o un "powershell ls", no los ejecuta.

¿Alguna idea de que puede ocurrir? Me estoy rayando :S

gracias!
28  Programación / Programación C/C++ / [DUDA] Enviar archivo a un ftp en C (windows) en: 3 Enero 2013, 16:30 pm
Hola amigos, felices fiestas  :D!

Quería preguntarles si alguien sabría decirme cómo puedo enviar un archivo a un ftp desde código C en Windows, indicándole la dirección IP, user y pass.

He buscado por el foro pero no he visto nada parecido.

Gracias!
29  Seguridad Informática / Seguridad / Utilidad para enviar automaticamente de manera cifrada archivos windows -> linux en: 27 Diciembre 2012, 15:59 pm
Hola amigos,

Estoy buscando un software que me permita realizar lo siguiente:

Tengo varios PCs con Windows en una red, en todos ellos se me genera un log diario que es creado por un software de gestión. Por otro lado tengo un Servidor Linux en el que quiero recopilar diariamente los logs que crean los PCs Windows.

Para ello, he pensado en instalar algún agente en los Windows que me envie regularmente el archivo que yo le indique al servidor linux (suponiendo que de antemano conozco el nombre y ruta donde se encuentran almacenados los logs).

El primer software en que pensé fue Netcat, y que éste fuese lanzado automaticamente una vez al dia mediante algun script/cron, pero necesito que la comunicación sea cifrada por SSL/TLS.

¿Conocen alguna utilidad que me pueda servir para dicha labor?

Gracias! Felices fiestas amigos!
30  Programación / Programación C/C++ / [DUDA] Ejecutar aplicación en C sin que aparezca la consola en: 24 Noviembre 2012, 13:20 pm
Hola foreros, estoy haciendo una aplicacion en C de consola pero que deseo que se ejecute sin que se vea la consola.

He conseguido hasta el momento ocultar la consola tras iniciarse la aplicación, llamando a la siguiente función desde el comienzo del main(), pero me muestra durante medio segundo la ventana del CMD. Os dejo el código por si a alguno os es útil:

Código:
void hideWindow(int hide)
{
    if(hide)
    {
        HWND   console;
        console = FindWindowA("ConsoleWindowClass",NULL);
        ShowWindow(console,SW_HIDE);
    }
}

¿Sabéis qué puedo hacer para que no aparezca desde el inicio la consola?

He leído bastante en el foro antes de postear y he visto que se ha preguntado anteriormente pero las soluciones propuestas no me han funcionado.

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