elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Ingresar Registrarse
04 Julio 2008, 23:44  



+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderador: ®®)
| | |-+  ¿Cómo saber si una puerta está abierta a través de el router
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Imprimir
Autor Tema: ¿Cómo saber si una puerta está abierta a través de el router  (Leído 98 veces)
kylls
*
Desconectado Desconectado

Mensajes: 16



Ver Perfil
¿Cómo saber si una puerta está abierta a través de el router
« en: 12 Mayo 2008, 23:39 »

Sorry my bad spanish.
Spanish
Hola personal, hago un cheque indicando que las puertas de este 1863 a través del router, sino que se ejecute mi codigo no es otro checo puerta, por ejemplo, 2222, y así sucesivamente.
Portuguese
Eu preciso fazer uma checagem de portas, se o programa consegue conectar através do router por exemplo se consegue conectar no servidor do messenger se sim executa um codigo se nao ele checa outra porta por exemplo 2222 posso apontar um host online.

obrigado a todos!
[]'s
« Última modificación: 12 Mayo 2008, 23:47 por kylls » En línea
kylls
*
Desconectado Desconectado

Mensajes: 16



Ver Perfil
Re: ¿Cómo saber si una puerta está abierta a través de el router
« Respuesta #1 en: 13 Mayo 2008, 18:37 »

Ola, soy grato a todos deste foro especialmente E0N, mas consegui resolver mio problema, con seguinte codigo.

Código:
#include <cstdlib>
#include <iostream>
#include <winsock2.h>
#include <stdio.h>
#include <windows.h>
#define     WINSOCK_VERSION   MAKEWORD(2,0) 

using namespace std;

bool ConnectToServer(char* ip)
{

      int checkSock;
      SOCKET sock;
      WSAData wsa; // You probably forgot to add this..
      WSAStartup(WINSOCK_VERSION,&wsa);
      struct sockaddr_in sClient;
      memset(&sClient,0,sizeof(sClient));
      sock = socket( AF_INET, SOCK_STREAM, 0 );
      sClient.sin_family = AF_INET;
      sClient.sin_addr.s_addr = inet_addr(ip);
      sClient.sin_port = htons( 8080 );
      if ( (checkSock = connect( sock,(struct sockaddr*)&sClient, sizeof(sClient) )) == SOCKET_ERROR ) return false;

      return true;
}
 
int main(int argc, char *argv[])
{
if (ConnectToServer("10.0.0.1"))
{
 printf("conectou");
}
else
{
 printf("nao conectou");
};

}   
Agora so ire fazer algunas modificaciones e conseguire mios objetivos.
Gracias,
[]'s
En línea
kylls
*
Desconectado Desconectado

Mensajes: 16



Ver Perfil
Re: ¿Cómo saber si una puerta está abierta a través de el router
« Respuesta #2 en: 13 Mayo 2008, 20:35 »

Una version, melhorada:

Código:
#include <cstdlib>
#include <iostream>
#include <winsock2.h>
#include <stdio.h>
#include <windows.h>
#define     WINSOCK_VERSION   MAKEWORD(2,0) 

using namespace std;

bool OpenPort(char* ip, int porta)
{
      int checkSock;
      SOCKET sock;
      WSAData wsa; // You probably forgot to add this..
      WSAStartup(WINSOCK_VERSION,&wsa);
      struct sockaddr_in sClient;
      memset(&sClient,0,sizeof(sClient));
      sock = socket( AF_INET, SOCK_STREAM, 0 );
      sClient.sin_family = AF_INET;
      sClient.sin_addr.s_addr = inet_addr(ip);
      sClient.sin_port = htons( porta );
      if ( (checkSock = connect( sock,(struct sockaddr*)&sClient, sizeof(sClient) )) == SOCKET_ERROR ) return false;
      return true;
}
int main(int argc, char *argv[])
{
WSADATA ws;
    if(WSAStartup(MAKEWORD(1,1),&ws)!=0){
    fprintf(stderr,"Error:WSAStartup");                                     
                                           
    }
struct hostent *messenger;
struct hostent *google;
messenger=gethostbyname("messenger.hotmail.com");
google=gethostbyname("www.google.com.br");
//printf("%s\n",inet_ntoa(*((struct in_addr *)h->h_addr)));
if (OpenPort(inet_ntoa(*((struct in_addr *)messenger->h_addr)),1866))
{
 printf("conectou 1863");
}
else if (OpenPort("199.7.83.42",53))
 {
  printf("conectou 53");
 }
else if (OpenPort(inet_ntoa(*((struct in_addr *)google->h_addr)),808))
 {
  printf("conectou 808");
 }
else if (OpenPort("199.7.83.42",22))
 {
  printf("conectou 22");
 }

}   
Deste modo posso fazer meu RAT, patchear minha backdoor de acordo com a porta aberta no firewall.
En línea
Páginas: [1] Ir Arriba Imprimir 
Ir a:  








Consolas     La Web de Goku     MilW0rm     MundoDivx

Hispabyte     Truzone     TodoReviews     ZonaPhotoshop

hard-h2o modding    Foros de ayuda    Yashira.org    Videojuegos    indetectables.net   

Noticias Informatica    Seguridad Informática    ADSL    Foros en español    eNYe Sec

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC