文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 国产软件 | 国外软件 | 汉化补丁 | 设为首页 | 加入收藏
网站首页 软件下载
数码学院 网络学院
业界资讯 | 图形图像 | 操作系统 | 网络冲浪 | 工具软件 | 办公软件 | 媒体动画 | 精文荟萃 | 认证考试 | 网站建设 | 技术开发 | 专栏
当前位置:abcdown网络学院网络冲浪黑客天空BBS的无敌杀手
精品广告
推荐TOP10
·黑客技术之知道对方IP入侵别人的电脑
·黑客攻破SQL服务器系统的十种方法
·教你简单方法查找黑客的老巢
·最新技术 黑客用DNS翻新DDOS攻击手法
·拒绝网络黑客 如何防御Sniffer攻击
·黑客必学—开启肉鸡终端全攻略
·黑客入侵Win XP常用七大招数
·从后台得到webshell十大技巧大汇总
·小心!黑客软件最常用的连接端口曝光
·最新技术 黑客用DNS翻新DDOS攻击手法
·红黑过招 WinRAR破解“磁盘加密王”
·入侵宝典 用SlimFTP将肉鸡改为私人服务器
·黑客攻击行为的特征分析及反攻击技术
·隐匿行踪 “隐形”账号让肉鸡长寿
·黑客入侵计算机常用手段及应对措施
·利用IP地址欺骗突破防火墙
·冲浪DDoS(拒绝服务)攻击的趋势与防御
·浅析Windows 2000/XP服务与后门技术
·浅析无线入侵检测系统 的应用及优缺点
·黑客入侵实例 记对Discuz论坛的入侵
阅读TOP10
·黑客技术之知道对方IP入侵别人的电脑
·黑客入侵Win XP常用七大招数
·流光5.0使用小窍门
·不用任何软件(木马程序)盗取账号密码
·流光教程一
·收费网站破解攻略
·QQ的攻击手段----密码破译
·让XP-SP2肉鸡支持远程多用户登陆
·流光破解ftp密码教程
·破解收费影视网站的影片下载地址
·警惕:QQ盗取之七招八式揭密(上)
·如何隐藏程序的运行
·破解Windows XP 登陆口令
·用DESKTOP.INI和folder.htt来自动运行程序
·黑QQ常用密码排行榜
·流光教程三
·计算机密码破解实用手册
·流光教程四
·巧妙收集入侵Windows系统的证据
·黑客网上收徒 专家提醒学技术走正路

BBS的无敌杀手

日期:2005年7月8日 作者:清风网络学院 查看:[大字体 中字体 小字体]


大家想一下,如果把这个expliot放在一台Server上,在向一个BBS论坛上发垃圾帖子,几秒中一个论坛就会被上百个垃圾帖子贴满.用户也无法浏览了...下面这段代码有点象,但需要改.我可不干,实在...实在...太.那个了

/* 这是一个向bbs自动发文章的程序,它可以把硬盘上的一篇文章发到bbs server的 */
/* 某个版中,适合于网络速度慢的情况下发表文章,减少等待时间 */
/* 只是本程序依赖于具体的上站按键序列,自然要因bbs server的不同和你在 */
/* bbs server上的ID的不同而加以修改 */
/* 另外下面的字符 ^W的输入方法如下: 左手按住Ctrl键不放,右手先按V,再按W */
/* ^P的输入方法相同. 为了不影响我发这篇文章,我把它们都改成了两个字符,即 */
/* ^W改为^和W,^P改为^和P,编译之前需要改回来 */
/* 不要把本程序用来干坏事,那不是本人所希望看到的 */
/* 作者: Netguy 1998.1.3 */
/* 本程序适用于UNIX系统,编译方法为: */
/* Linux: cc -lbsd -o post post.c */
/* SunOS: cc -lsocket -lnsl -lucb -o post post.c */
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define N 26
#define M 5
#define BOARD 19
#define TITLE 23
#define SIZE 1024
#define TRUE -1
#define FALSE 0
#define NUM_OF_BOARD 105
char *boardName[NUM_OF_BOARD]={
"211", /* 1 */
"Campus", /* 2 */
"Education", /* 3 */
"Endusers", /* 4 */
"Schools", /* 5 */
"Student", /* 6 */
"Tsinghua", /* 7 */
"UESTC", /* 8 */
"Office12", /* 9 */
"Office11", /* 10 */
"Office13", /* 11 */
"Office9", /* 12 */
"Office5", /* 13 */
"Office6", /* 14 */
"Office4", /* 15 */
"Office2", /* 16 */
"Office15", /* 17 */
"Office10", /* 18 */
"Office1", /* 19 */
"Office17", /* 20 */
"Office16", /* 21 */
"Office8", /* 22 */
"Office3", /* 23 */
"Office14", /* 24 */
"AR", /* 25 */
"Chemistry", /* 26 */
"CS", /* 27 */
"EE", /* 28 */
"Graduate", /* 29 */
"Material", /* 30 */
"MBA", /* 31 */
"Office7", /* 32 */
"PPCenter", /* 33 */
"Transportation", /* 34 */
"3com", /* 35 */
"AIX", /* 36 */
"IBMNetwork", /* 37 */
"IntelNetwork", /* 38 */
"Modem", /* 39 */
"Netscape", /* 40 */
"Oracle", /* 41 */
"Router", /* 42 */
"Solaris", /* 43 */
"Sybase", /* 44 */
"Telecom", /* 45 */
"3D", /* 46 */
"Browser", /* 47 */
"CAD", /* 48 */
"Database", /* 49 */
"Freeware", /* 50 */
"Game", /* 51 */
"Hacker", /* 52 */
"Hardware", /* 53 */
"iNet", /* 54 */
"JAVA", /* 55 */
"MultiMedia", /* 56 */
"NetSoftware", /* 57 */
"NetTech", /* 58 */
"NT", /* 59 */
"OS2", /* 60 */
"Programming", /* 61 */
"Unix", /* 62 */
"Virus", /* 63 */
"Visual", /* 64 */
"Windows", /* 65 */
"Astrology", /* 66 */
"Automobile", /* 67 */
"Chess", /* 68 */
"Connoisseur", /* 69 */
"Economy", /* 70 */
"Feelings", /* 71 */
"Film", /* 72 */
"Friend", /* 73 */
"Gathering", /* 74 */
"IQ_park", /* 75 */
"Joke", /* 76 */
"Life", /* 77 */
"Memory", /* 78 */
"Military", /* 79 */
"Photography", /* 80 */
"Tour", /* 81 */
"Digest", /* 82 */
"Emprise", /* 83 */
"Literature", /* 84 */
"Music", /* 85 */
"Poetry", /* 86 */
"Reading", /* 87 */
"Story", /* 88 */
"Badminton", /* 89 */
"Basketball", /* 90 */
"Football", /* 91 */
"Health", /* 92 */
"Ping-pong", /* 93 */
"Sports", /* 94 */
"Tennis", /* 95 */
"Progwork", /* 96 */
"TipWorld", /* 97 */
"English", /* 98 */
"Mathematics", /* 99 */
"Phylosophy", /* 100 */
"Physics", /* 101 */
"Advice", /* 102 */
"Help", /* 103 */
"sysop", /* 104 */
"Test" /* 105 */
};
/* 下面的字符串就是你自己上bbs站时的按键序列,需要修改以符合自己的情况 */
/* 左边的一列是server传过来的,右边的一列是需要自己从键盘输入的 */
char command1[ N ][80]={
"login:", "bbs\r\n", /* 以bbs登录 */
"):", "yourID\r\n", /* 自己的bbs ID */
":", "passWord\r\n", /* 密码 */
"", "\r\n", /* server要你按回车键*/
" ..", "\r\n", /*按任何键继续.. */
" ..", "\r\n", /*按任何键继续.. */
" ..", "\r\n", /*按任何键继续.. */
"G)oodBye", "e\r\n", /*主菜单下按e键 */
"E)xit", "b\r\n", /*分类讨论区菜单下按b*/
"[h]", ",", /* 版名 */
"[h]", "^P", /* 按^P发文章 */
"]", " ", /* 文章题目 */
"T", "\r\n" /*确定 */
};
/* 下面的字符是文章输入完之后的情况 */
/* 左边的一列是需要自己从键盘输入的,右边的一列是server传过来的 */
char command2[ M ][20]={
"^W", "]:", /*文章输完后按Ctrl-W存盘*/
"s\r\n", "[h]", /*按s转信 */
"!\r\n" /*旋风离站 */
};
int sockfd=-1; /*管套描述符 */
void waitString(char *string); /*等待一个特定字符串 */
unsigned char receiveChar(void) //从socket读取server发来的一个字节
{ char tmp;
if(read(sockfd,& tmp,1)<=0 ) { printf("read socket error.\n"); exit(-1);}
return tmp;
}
void sendChar(char ch) //从socket向server发送一个字节
{
if( write(sockfd,& ch,1)<0 ) { printf("write socket error.\n"); exit(-1); }
}
void sendString(char p[]) //从socket向server发送一个字符串
{
if(write(sockfd,p,strlen(p))<0) { printf("write socket error.\n"); exit(-1); };
}
void killHandle(void) //信号处理函数
{
close(sockfd);
exit(0);
}
/*===========================================================================*/
main(int argc,char **argv)
{
struct sockaddr_in host;
struct hostent *hp;
int commandCounter;
int status;
int f,k;
char fileBuf[SIZE];
if( argc<4) { printf("Usage: %s fileName boardName title\n",argv[0]);
exit(0);
}
f=open(argv[1],O_RDONLY); /*打开本地磁盘文件 */
if( f< 0) { printf("open file error\n"); exit(-1); }
for(k=0; k< NUM_OF_BOARD; k++)
{
if( strcmp(argv[2],boardName[k])==0)
{ sprintf(& (command1[BOARD][0]),"%d\r\n\r\n",k+1);
break;
}
}
if(k>=NUM_OF_BOARD) { printf("Bad boardName: %s\n",argv[2]);
exit(0);
}
strcpy(& (command1[TITLE][0]),argv[3]);
strcat(& (command1[TITLE][0]),"\r\n");
signal(SIGTERM,killHandle); /* 设回调函数 */
signal(SIGINT,killHandle);
hp = gethostbyname("bbs.gznet.edu.cn"); /* bbs服务器的名字 */
if(hp==NULL) { printf("Unkonwn host\n"); exit(-1); }
bzero((char *)& host,sizeof(host));
bcopy(hp->h_addr,(char *)& host.sin_addr,hp->h_length);
host.sin_family=AF_INET;
host.sin_port=htons(23); /*telnet标准端口 */
if ( (sockfd=socket(AF_INET,SOCK_STREAM,0))<0 ) /* 阻塞式socket */
{ printf(" Error open socket\n");
exit(-1);
}
status=connect(sockfd,(struct sockaddr *)& host,sizeof(host));/*连接*/
if(status<0) { printf("Connect error\n"); exit(-1); }
for(commandCounter=0; commandCounter< N; ) /*登录进bbs站 */
{ waitString( command1[commandCounter ++] );
sendString( command1[commandCounter ++] );
}
while( (status=read(f,fileBuf,SIZE) )>0 ) /*把文件内容发往bbs */
{ for(k=0; k< status; k++)
{ write(sockfd,&(fileBuf[k]),1);
if( fileBuf[k]==0x0A ) write(sockfd,"\0x0D",1);
}
}
sleep(1);
close(f);
for(commandCounter=0; commandCounter< M -1; ) /* 存盘离站 */
{ sendString( command2[ commandCounter ++] );
waitString( command2[ commandCounter ++ ]);
}
sendString(command2[M-1] );
sleep(1);
close(sockfd);
printf("\npost ok.\n");
}
/*===========================================================================*/
void waitString( char *string) /*从server发来的字节流中匹配特定串,找到就返回 */
{
int m,n;
int len;
char equal;
char term[]="dumb"; /* 终端类型: 哑终端 */
int status;
struct timeval timeout;
struct fd_set mask;
unsigned char c,cmd,opt;
len=strlen(string); /* 欲匹配的串的长度 */
m=0; /* 串中的当前匹配位置 */
equal=FALSE; /* 布尔变量 */
for(;;)
{ n=read(sockfd,& c,1); /* 读取一个字节 */
if( n<=0 ) { printf("socket read error.\n"); exit(-1); }
if (c == 255) // IAC字符,后跟telnet命令和协商选项
{
cmd = receiveChar(); //读入命令
opt = receiveChar(); //读入选项
switch(opt) {
case 1: // echo协商选项,本程序未处理
break;
case 3: // supress go-ahead(抑制向前选项)
break;
case 24: // terminal type(终端类型选项)
if (cmd == 253) {
// IAC WILL terminal-type 将告诉server终端类型
sendChar((char)255);
sendChar((char)251);
sendChar((char)24);
// IAC SB terminal-type IS IAC SE
sendChar((char)255); //传送终端类型字符串
sendChar((char)250);
sendChar((char)24);
sendChar((char)0);
sendString(term);
sendChar((char)255);
sendChar((char)240);
}
else if (cmd == 250) { //SB和SE要配对出现
while(receiveChar() != 240)
;
}
break;
default: // some other command1
if (cmd == 253) {
// IAC DONT whatever
sendChar((char)255); //其它的协商选项均不同意
sendChar((char)252);
sendChar((char)opt);
}
}
}
else //处理字符数据
{ putchar(c);
if( *(string+m)==c ) { m++; equal=TRUE; } //相等则匹配下一字符
else { m=0; equal=FALSE; }//不等则从头再来
if(equal==TRUE && m>=len) return; //找到期待的字符串就返回
}
}
}

(出处:ABC网络学院



上一篇:在Linux上建立DNS服务器

下一篇:QQ上兜售英语四六级答案


BBS的无敌杀手 相关软件: BBS的无敌杀手 相关文章:
·骑马与砍杀完美解密中文版0808版
·全球排名第一的杀软 BitDefender Pro Plus +可升级算号器v9.0 汉化版
·军统最后的暗杀名单
·3593病毒专杀工具
·精彩装甲射击游戏《杀出国界》
·江民杀毒软件 KV2007 标准版免费使用30天
·Illustrator.CS2.杀手计
·地球杀场
·《铁血三国志》华丽必杀演示动画
·木马杀客5.31 绿色特别版 Build 10.10.18 (更新07月26病
·卡巴斯基杀毒软件优化设置指南
·熊猫烧香病毒专杀及手动修复方案
·国外最新杀毒软件排行榜
·终极刺客2:沉默杀手秘籍
·反病毒知识:如何让你的移动硬盘在DOS下杀毒
·[揭密]东北财经大学王婷婷的露点自杀事件(续)
·如何创建应急启动、杀毒盘 dos下杀毒之教程
·《拳皇2002》隐藏超杀出招表 - 技巧心得
·《猎杀潜航3》潜艇修改大全
·《恶夜杀机》硬件解决完全方案

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.abcdown.net
首页 | 本站声明 | 下载帮助 | 发布软件 |
中文版权所有:ABC学院 浙ICP备05000717号