elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
27 Mayo 2012, 17:38  


Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.

+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Hacking Avanzado (Moderadores: ANELKAOS, TRICKY)
| | |-+  Port scanner - Averno's
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Port scanner - Averno's  (Leído 1,734 veces)
TRICKY
The "Tricky" ..
Moderador
***
Desconectado Desconectado

Mensajes: 1.605


Ver Perfil
Port scanner - Averno's
« en: 18 Junio 2008, 04:03 »

 que tal.

 Bueno, pues el kaso es que voy a compartir un software ( kreado por mi .. un tanto lame x supuesto )
 que sirve para scannear puertos. Esta basados en sockets Linux ( Berkeley API ), asi que esta hecho para
 plataformas Linux.
 El codigo es lame, pero funciona. El kaso es que direis.. Y pa que? si ya GNU viene incluyendo nmap
 en toda distro?? Bueno, pero aki entran varias kosas komo que:
 Para hacer un Stealth Scan, o derivados, has de ser r00t.
 Si haces un scann tipo Connect ( -sT ), ahi si no necesitas ser r00t; pero el logueo/canteo estara servido.

 Pues basandome en esto ultimo, el port-scanner que expongo es casi igual de cantoso, que la opcion de
 scanneo no-r00t de Nmap ( -sT ).
 Ahora, lo mas importante ( pff.. ), es que puede ser que el Admin de la Red haya deshabilitado Nmap.
 Es ahi kuando necesitareis ( si kereis scannear claro ) un scanner para vuestro sistema Linux; y es
 entonces cuando mas util puede resultaros mi scanner :_)
 Bueno, al code:

 /* port-scanner    By averno
  * Compilacion:
  * # gcc -o port-scanner port-scanner.c
  * Uso:
  * # ./port-scanner 192.168.1.63
 */

 #include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#include <unistd.h>

#define MAX 65535

/*** Kon esta version NO puedo usar hostnames, solo IPs al no hacer uso de
     gethostbyname() */


int main(int argc, char *argv[])
{

   struct sockaddr_in dest;
   struct hostent *he;

   int fd[MAX];
   int i;
   unsigned int port;

   if (argc != 2) {
     fprintf(stderr, "\n\t\t****** PORT SCANNER by AVERNO ******\n");
     fprintf(stderr, "\n\nUso: %s <IP>\n\n\n", argv[0]);
     exit(0);
   }

   /* if ((he = gethostbyname(argv[1])) == NULL) {
     error("gethostbyname()");
     exit(-1);
   } */

   printf("\n\nKomenzando el scanneo ..\n\n\n");

   for (i = 0, port = 0; i < MAX+1; i++, port++) {

      if ((fd = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
        perror("socket()");
        exit(-1);
      }

      memset(&dest, 0, sizeof(dest)); 
      dest.sin_family = AF_INET;
      dest.sin_port = htons(port);
      dest.sin_addr.s_addr = inet_addr(argv[1]);
      /* dest.sin_addr = *((struct in_addr *)he->h_addr); */
      /* bzero(&(dest.sin_zero), 8); */


      if (connect(fd, (struct sockaddr *)&dest, sizeof(struct sockaddr)) == 0) { 
 
         printf("Puerto %i OPEN!\n", port);
      }

      close(fd);

    }

    return 0;

}

/* EOF */

 Bueno, pues cortais el codigo y lo pegais en un archivo. Guardadlo como port-scanner.c
 Compilacion en comentarios.
 Ya se: es lame.

 Saludos, Suerte.

 P.D: Si os kuesta trabajo cortar desde aki el code, podeis intentarlo desde:
       http://www.geocities.com/shirleylla/port-scanner.c
        Lo acabo de subir por lo mismo. Eah, taotra.
« Última modificación: 18 Junio 2008, 04:12 por averno » En línea

"La envidia es una declaración de inferioridad"
Napoleón.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines