lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
From: electronicsouls at hushmail.com (electronicsouls@...hmail.com) Subject: [ElectronicSouls] - Scanner -----BEGIN PGP SIGNED MESSAGE----- Dear List, I'm real fucking tired of writing witty descriptions for this shit. # cat fresh2.txt /* * * !! PRIVATE CODE !! * DO NOT DISTRIBUTE !@# * * ( ( F R E S H ) ) - String Scanner * * (C) BrainStorm [ElectronicSouls] * This code is deticated to my bro it_fresh =) * * "KEEP THE SPIRIT ALIVE!" * */ #include <stdio.h> #include <netdb.h> #include <string.h> #include <fcntl.h> #include <unistd.h> #include <time.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #define STR1 "BSD" #define STR2 "7.0" #define STR3 "IRIX" #define STR4 "6.2" #define STR5 "4.2" #define STR6 "6.5" #define STR7 "5.6" #define STR8 "5.7" #define STR9 "5.8" #define STR10 "Wingate>" #define FSTR1 "Feb 28" #define FSTR2 "Pro" void usage (char *s); void timedout (); int scan (char *host); int scan2 (char *host); FILE *infile, *outfile; int sock, numforks = 0, timesup = 0, port; void usage(char *s) { printf("\n\n ( ( F R E S H ) ) \n"); printf(" [ E l e c t r o n i c S o u l s ] \n\n"); printf(" [!] Usage: ./fresh [IPfile] [OUTfile] [Childs] \n\n"); exit(0); } int scan1(char *host) { struct sockaddr_in sin; int sock, len; u_char buf[4000]; sock = socket(AF_INET, SOCK_STREAM, 0); if (!sock) { fprintf(stderr, "unable to get socket\n"); return; } sin.sin_family = AF_INET; sin.sin_port = htons(23); sin.sin_addr.s_addr = inet_addr(host); if (connect(sock, (struct sockaddr*)&sin, sizeof(sin)) == 0) { while (1) { memset(buf, 0, sizeof(buf)); if ((len = read (sock, buf, 1)) <= 0) break; if (*buf == (unsigned int) 255) { read(sock, (buf + 1), 2); if (*(buf + 1) == (unsigned int) 253 && !(u_char) * (buf + 2)); else if ((u_char) * (buf + 1) == (unsigned int) 253) { *(buf + 1) = 252; write (sock, buf, 3); } } else { if (*buf != 0) { bzero (buf, sizeof (buf)); read (sock, buf, sizeof (buf)); usleep(40000); if (strstr(buf, STR1)) { fprintf(outfile, "%s:BSD-telnetd\n", host); printf("--- BSD:\n"); printf("%s\n", host); alarm(0); return 1; } if (strstr(buf, STR2)) { fprintf(outfile, "%s:RedHat-7.0\n", host); printf("--- RedHat7.0:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR3)) { fprintf(outfile, "%s:IRIX\n", host); printf("--- IRIX:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR4)) { fprintf(outfile, "%s:rh6.2\n", host); printf("--- RedHat6.2:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR5)) { fprintf(outfile, "%s:FreeBSD 4.2\n", host); printf("--- FreeBSD4.2:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR6)) { fprintf(outfile, "%s:IRIX 6.5\n", host); printf("--- IRIX 6.5:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR7)) { fprintf(outfile, "%s:SunOS 5.6\n", host); printf("--- SunOS 5.6:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR8)) { fprintf(outfile, "%s:SunOS 5.7\n", host); printf("--- SunOS 5.7:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR9)) { fprintf(outfile, "%s:SunOS 5.8\n", host); printf("--- SunOS 5.8:\n", host); printf("%s\n"); alarm(0); return 1; } if (strstr(buf, STR10)) { fprintf(outfile, "%s:Wingate\n", host); printf("--- Wingate:\n", host); printf("%s\n"); alarm(0); return 1; } } } } } alarm(0); close(sock); return; } int scan2(char *host) { struct sockaddr_in sin; int sock, len; u_char buf[4000]; sock = socket(AF_INET, SOCK_STREAM, 0); if (!sock) { fprintf(stderr, "unable to get socket\n"); return; } sin.sin_family = AF_INET; sin.sin_port = htons(21); sin.sin_addr.s_addr = inet_addr(host); if (connect(sock, (struct sockaddr*)&sin, sizeof(sin)) == 0) { while (1) { memset(buf, 0, sizeof(buf)); if ((len = read (sock, buf, 1)) <= 0) break; if (*buf == (unsigned int) 255) { read(sock, (buf + 1), 2); if (*(buf + 1) == (unsigned int) 253 && !(u_char) * (buf + 2)); else if ((u_char) * (buf + 1) == (unsigned int) 253) { *(buf + 1) = 252; write (sock, buf, 3); } } else { if (*buf != 0) { bzero (buf, sizeof (buf)); read (sock, buf, sizeof (buf)); usleep(40000); if (strstr(buf, FSTR1)) { fprintf(outfile, "%s:WU 2.6.0\n", host); printf("--- WU-2.6.0:\n"); printf("%s\n", host); alarm(0); return 1; } if (strstr(buf, FSTR2)) { fprintf(outfile, "%s:ProFtpd\n", host); printf("--- ProFtpd:\n", host); printf("%s\n"); alarm(0); return 1; } } } } } alarm(0); close(sock); return; } int main (int argc, char *argv[]) { int n; char buf[1024]; time_t start; if (argc < 4) usage (argv[0]); if (((infile = fopen (argv[1], "r")) == NULL) || ((outfile = fopen (argv[2], "a")) == NULL)) { fprintf (stderr, "Unable to open file(s) for reading!\n"); exit (-1); } start = time(0); while (!feof (infile)) { fgets ((char *) &buf, sizeof (buf), infile); if (buf[strlen (buf) - 1] == '\n') buf[strlen (buf) - 1] = '\0'; if (!(fork ())) { scan1(buf); exit(0); } else { numforks++; if (numforks > atoi(argv[3])) for (numforks; numforks > atoi(argv[3]); numforks--) wait (NULL); } } fclose (infile); fclose (outfile); printf ("\n\n\n [ F R E S H ] - (C) ElectronicSouls\n"); printf ("[Done] Completed in %lu seconds\n\n", (time(0) - start)); exit(0); } # The Electronic Souls Crew [ElectronicSouls] (c) 2002 "Unga bunga." -----BEGIN PGP SIGNATURE----- Version: Hush 2.2 (Java) Note: This signature can be verified at https://www.hushtools.com/verify wmQEARECACQFAj3pdAEdHGVsZWN0cm9uaWNzb3Vsc0BodXNobWFpbC5jb20ACgkQ39CI 8XTNSM5yaQCgjcLF5hd4GEj7RLCUzuH84ObjQYEAnAuzXpw+LutdjTJTCnbkuMTpoDfk =XvK1 -----END PGP SIGNATURE----- Concerned about your privacy? Follow this link to get FREE encrypted email: https://www.hushmail.com/?l=2 Big $$$ to be made with the HushMail Affiliate Program: https://www.hushmail.com/about.php?subloc=affiliate&l=427
Powered by blists - more mailing lists