C++黑客项目:U盘病毒免疫器

U盘病毒的原理主要是autorun.inf文件

autorun.inf是我们电脑使用中比较常见的文件之一 ,其作用是允许在双击磁盘时自动运行指定的某个文件。但是近几年出现了用autorun.inf文件传播木马或病毒,它通过使用者的误操作让目标程序执行,达到侵入电脑的目的,带来了很大的负面影响。

今天教大家用MFC做一个免疫器
界面:在这里插入图片描述
有一个combo box控件,为它添加一个变量

CComboBox m_CbDrive;

两个变量

wchar_t *AUTORUN =L"antorun.inf";
wchar_t *IMMUNITY= L"\\Immunity...\\";

初始化combo box控件函数:

void CImmunityUDlg::InitComboDrive()
{
    
    
	TCHAR szDriveStr[MAXBYTE] = {
    
     0 };
	TCHAR* pTmp = NULL;
	SetDlgItemText(IDC_COMBO_DRIVE,L"请选择免疫的磁盘盘符");
	GetLogicalDriveStrings(MAXBYTE,szDriveStr);
	pTmp = szDriveStr;
	while (*pTmp)
	{
    
    
		m_CbDrive.AddString(pTmp);
		pTmp += 4;
	}
}

在OnInitDialog()中调用.
免疫按钮的处理事件:

void CImmunityUDlg::OnBtnImmunity()
{
    
    
	TCHAR szPath[MAX_PATH] = {
    
     0 };
	GetDlgItemText(IDC_COMBO_DRIVE, szPath,MAX_PATH);
	wcscat(szPath, AUTORUN);
	BOOL bRet = CreateDirectory(szPath, NULL);
	if (!bRet)
	{
    
    
		AfxMessageBox(_T("无法免疫该盘符!可能已经免疫,或者该盘符为不可读写状态!"));
		return;
	}
	wcscat(szPath, IMMUNITY);
	bRet= CreateDirectory(szPath, NULL);
	if (!bRet)
	{
    
    
		AfxMessageBox(_T("无法免疫该盘符!可能已经免疫,或者该盘符为不可读写状态!"));
	}
}

取消免疫按钮的处理事件:

void CImmunityUDlg::OnBtnCancel()
{
    
    
	TCHAR szPath[MAX_PATH] = {
    
     0 };
	GetDlgItemText(IDC_COMBO_DRIVE,  szPath, MAX_PATH);
	wcscat(szPath, AUTORUN);
	wcscat(szPath, IMMUNITY);
	RemoveDirectory(szPath);
	ZeroMemory(szPath, MAX_PATH);
	GetDlgItemText(IDC_COMBO_DRIVE, szPath, MAX_PATH);
	wcscat(szPath, AUTORUN);
	wcscat(szPath, IMMUNITY);
}

一切都弄好了,让程序run起来,把这个程序放在桌面上
点击免疫按钮:会在桌面上生成一个文件夹
在这里插入图片描述
点进去:
在这里插入图片描述
删除autorun.inf试试:
在这里插入图片描述
好了,这个项目就完成了

猜你喜欢

转载自blog.csdn.net/m0_47563648/article/details/109141365
今日推荐