giga hertz apprendista
Numero di messaggi : 42 Data d'iscrizione : 01.09.07
| Titolo: scanner di porte Mar Nov 13, 2007 11:18 pm | |
| Qualcuno potrebbe dirmi come funziona uno scanning di porte?? cioè qualcuno che mi dica la logica di uno scanner in c++ | |
|
BlackLight Moderatore
Numero di messaggi : 277 Età : 37 Data d'iscrizione : 22.08.07
| Titolo: Re: scanner di porte Mer Nov 14, 2007 2:07 am | |
| Crei un socket con l'host che vuoi scannerizzare e poi provi a fare tante connect() su un range di porte. Quando la connect() va a buon fine la porta è aperta, quando ritorna -1 la porta è chiusa. Ti riporto la funzione principale di un port scanner che avevo fatto tempo fa in C... - Codice:
-
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h>
void addr_init(struct sockaddr_in *addr, int port, long ip) { addr->sin_family = AF_INET; addr->sin_port = htons(port); addr->sin_addr.s_addr = ip; }
int scan(char *host, int port) { int sd; struct sockaddr_in client, server;
addr_init(&server,port,inet_addr(host)); sd = socket(AF_INET, SOCK_STREAM, 0);
if (sd==-1) return -1;
if ( connect(sd, (struct sockaddr*) &server, sizeof(struct sockaddr)) < 0 ) { close(sd); return -1; }
else { close(sd); return 0; } } | |
|
giga hertz apprendista
Numero di messaggi : 42 Data d'iscrizione : 01.09.07
| Titolo: Re: scanner di porte Mer Nov 14, 2007 7:56 pm | |
| | |
|
Contenuto sponsorizzato
| Titolo: Re: scanner di porte | |
| |
|