Searching for sites to hack... ---------------------------------------- by Phantom One way to search for sites is by using Altavista/Lycos & other search engines...To get what you want, you must suply some sort of description of what you are looking for. For example if i want to look for systems running Irix, i should search for "Irix", "Irix OS".. Also, you could search for "Me", "My page" and so on... Another way to find hostnames to attack is by using irc. On irc one can find a lot of hostnames by entering one channel and then do a "/who #channel", or to see a person's hostname, "/whois person". In fact, irc is better than most search engines, because in there, one can find lots of hostnames.... :) Also, by using some goood scanners, for blind search, one can determine only by suplying some domain, all the adresses necesary... (scanner included below). One good method was (now it's about over) to get the domain names from rs.internic.net in the /domains directory... of course, you still can, but there aint so many of them left... /* It's not ours...but it's very kewl... use it like only with ip numbers like: "ip -c 207.23.57"... */ #include #include #include #include "netdb.h" struct hostent *gethostbyaddr(); void bad_addr(); main(argc, argv) int argc; char *argv[]; { char addr[4]; int i, j, a0, a1, a2, a3, c, classB, classC, single, hex; char *fmt = "%d.%d.%d"; char **ptr; struct hostent *host; extern char *optarg; classB = classC = single = hex = 0; while((c = getopt(argc,argv,"bcsx")) != EOF) { switch(c) { case 'b': classB++; break; case 'c': classC++; break; case 's': single++; break; case 'x': hex++; break; } } if(classB == 0 && classC == 0 && single == 0) { fprintf(stderr, "usage: %s [-b||-c||-s] [-x] xxx.xxx[.xxx[.xxx]]\n", argv[0]); exit(1); } if(classB) if(hex) { fmt = "%x.%x"; sscanf(argv[3], fmt, &a0, &a1); } else { fmt = "%d.%d"; sscanf(argv[2], fmt, &a0, &a1); } else if(classC) if(hex) { fmt = "%x.%x.%x"; sscanf(argv[3], fmt, &a0, &a1, &a2); } else { fmt = "%d.%d.%d"; sscanf(argv[2], fmt, &a0, &a1, &a2); } else if(single) if(hex) { fmt = "%x.%x.%x.%x"; sscanf(argv[3], fmt, &a0, &a1, &a2, &a3); } else { fmt = "%d.%d.%d.%d"; sscanf(argv[2], fmt, &a0, &a1, &a2, &a3); } sscanf(argv[1], fmt, &a0, &a1, &a2); addr[0] = (unsigned char)a0; addr[1] = (unsigned char)a1; if(a0>255||a0<0) bad_addr(a0); if(a1>255||a1<0) bad_addr(a1); if(classB) { if(hex) printf("Converting address from hex. (%x.%x)\n", a0, a1); printf("Scanning Class B network %d.%d...\n", a0, a1); while(j!=256) { a2=j; addr[2] = (unsigned char)a2; jmpC: if(classC) if(hex) printf("Converting address from hex. (%x.%x.%x)\n", a0, a1, a2); printf("Scanning Class C network %d.%d.%d...\n", a0, a1, a2); while(i!=256) { a3=i; addr[3] = (unsigned char)a3; jmpS: if ((host = gethostbyaddr(addr, 4, AF_INET)) != NULL) { printf("%d.%d.%d.%d => %s\n", a0, a1, a2, a3, host->h_name); ptr = host->h_aliases; while (*ptr != NULL) { printf("%d.%d.%d.%d => %s (alias)\n", a0, a1, a2, a3, *ptr); ptr++; } } if(single) exit(0); i++; } if(classC) exit(0); j++; } } else if(classC) { addr[2] = (unsigned char)a2; if(a2>255||a2<0) bad_addr(a2); goto jmpC; } else if(single) { addr[2] = (unsigned char)a2; addr[3] = (unsigned char)a3; if(a2>255||a2<0) bad_addr(a2); if(a3>255||a3<0) bad_addr(a3); goto jmpS; } exit(0); } void bad_addr(addr) int *addr; { printf("Value %d is not valid.\n", addr); exit(0); }