首页
社区
课程
招聘
[求助]ZwSetInformationFile删除藏属性的病毒文件去,失败,为什么?
发表于: 2008-12-15 16:53 5333

[求助]ZwSetInformationFile删除藏属性的病毒文件去,失败,为什么?

2008-12-15 16:53
5333
VOID DeleteFileTest() 
{
	char Str[1024] = "";
	ANSI_STRING AS;
	UNICODE_STRING US;

	FILE_BASIC_INFORMATION fbi;
	FILE_DISPOSITION_INFORMATION fpi;
	NTSTATUS ntStatus;
	OBJECT_ATTRIBUTES objectAttributes;
	IO_STATUS_BLOCK iostatus;
	HANDLE hfile;
	UNICODE_STRING logFileUnicodeString;

	//初始化UNICODE_STRING字符串
	RtlInitUnicodeString( &logFileUnicodeString, 
		L"\\Device\\HarddiskVolume1\\1.LOG");
	//或者写成 "\\Device\\HarddiskVolume1\\1.LOG"


	//初始化objectAttributes
	InitializeObjectAttributes(&objectAttributes, 
		&logFileUnicodeString,
		0, 
		NULL, 
		NULL );

	//打开该文件
	ntStatus = ZwCreateFile(&hfile, 
					GENERIC_READ,
					&objectAttributes, 
					&iostatus, 
					NULL,
					0, 
					FILE_SHARE_READ,
					FILE_OPEN,
					0, 
					NULL, 
					0 );
	fbi.FileAttributes = FILE_ATTRIBUTE_NORMAL;
	ZwQueryInformationFile(hfile,
							&iostatus,
							&fbi,
							sizeof(FILE_BASIC_INFORMATION),
							FileBasicInformation);
	if (!NT_SUCCESS(ntStatus))
	{
		sprintf(Str, "\n%d---ATTR:%d", fbi.CreationTime.LowPart, fbi.FileAttributes);
		RtlInitAnsiString(&AS, Str);
		RtlAnsiStringToUnicodeString(&US, &AS, TRUE);
		NtDisplayString(&US);
		NtDelayExecution(0, &g_DelayTime);
	}

	fbi.FileAttributes = FILE_ATTRIBUTE_NORMAL;
	ZwSetInformationFile(hfile,
						&iostatus,
						&fbi,
						sizeof(FILE_BASIC_INFORMATION),
						FileBasicInformation);
	ZwClose(hfile);

	ZwCreateFile(&hfile, 
					DELETE,
					&objectAttributes, 
					&iostatus, 
					NULL,
					FILE_ATTRIBUTE_NORMAL, 
					FILE_SHARE_DELETE,
					FILE_OPEN ,//打开该文件
					0, 
					NULL, 
					0 );
	ZwSetInformationFile(hfile,
						&iostatus,
						&fpi,
						sizeof(FILE_DISPOSITION_INFORMATION),
						FileDispositionInformation);

	ZwClose(hfile);
}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 202
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
NTSTATUS = ?
你的 fbi 变量都没初始化。
2008-12-16 01:04
0
雪    币: 196
活跃值: (89)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
3
关键出错应该是:
//打开该文件
  ntStatus = ZwCreateFile(&hfile,
          GENERIC_READ,
          &objectAttributes,
          &iostatus,
          NULL,
          0,
          FILE_SHARE_READ,
          FILE_OPEN,
          0,
          NULL,
          0 );
2008-12-16 09:52
0
游客
登录 | 注册 方可回帖
返回
//