CVE-2022-21910 and CVE-2022-21879 进攻IOCTL
说明
今年一月份微软修补了关于我的一个漏洞报告的问题并分配CVE-2022-21910与CVE-2022-21879,该报告总共报送了四个问题同时MSRC也为此分配了四个案例,其中两处越界读取被认为两个信息泄露漏洞,两处空指针的问题没有被认。
报告以及poc可以在这里找到
https://github.com/tianlinlintian/Report-vulnerabilities/tree/main/21910%20or%2021879
如果你看完我的报告,可能会惊讶:漏洞如此简单,竟然没有人报告过,这可能是由于clusport.sys没有被人发掘过而导致的,下图中可以看到此漏洞影响范围非常少,所以我就是来分享怎么是想到看clusport.sys的。
发现过程
如果你了解过驱动开发,相信对符号链接并不陌生,一般来说,它通过IoCreateSymbolicLink调用创建,遍历SymbolicLink这些并不难,只需要调用QueryDosDevice即可。
不仅仅只有符号链接可以打开后调用DeviceIoControl来进入驱动的IRP_MJ_DEVICE_CONTROL例程,还有设备名本身可以,因为设备本身也是一个对象,它可以被如ObSetSecurityObjectByPointer之类的函数设置安全描述符,如果该安全描述符被user可以打开,那么它就值得一看,这么一个例子是CNG
下面是获得这些能打开的符号链接以及设备名的代码(以当前进程权限)
//目的:获得当前进程所有可以打开的驱动设备名以及设备连接//要查看名字所在的驱动可在DeviceIoControl调用之前设置了一个 __debugbreak()断点
//还需要设置cpu为单核,命中 __debugbreak()断点后继续对bp nt!IofCallDriver下断点然后按g放行
//nt!IofCallDriver断下后,一直按t单步跟,跟不了多久就会进入目标驱动的ioctl派遣函数(也就是nt!guard_dispatch_icall消失的时候),此时如果没有符号可通过基地址对比查看对应驱动//因为还有部分驱动在IRP_MJ_CREATE派遣函数中也就是在打开设备时进行了了判断,比如WS2IFSL.sys(一个例子是CVE-2019-1215)
//所以为了包含所有可能的结果即使在打开设备时出错但只要不是拒绝访问或者没有设置IRP_MJ_CREATE,设备无效那么就打印错误值 以及设备名,这种情况需要自己去驱动的IRP_MJ_CREATE分析//关于ioctl定位通过对IofCompleteRequest交叉引用即可#include "windows.h"
#include "stdio.h"#pragma comment(lib,"ntdll.lib")#define STATUS_BUFFER_TOO_SMALL 0xC0000023
#define STATUS_NO_MORE_ENTRIES 0x8000001Atypedef struct _UNICODE_STRING
{unsigned short Length;unsigned short MaxLength;unsigned long Pad;wchar_t* Buffer;
}UNICODE_STRING;typedef struct _OBJECT_ATTRIBUTES {ULONGLONG Length;HANDLE RootDirectory;_UNICODE_STRING* ObjectName;ULONGLONG Attributes;PVOID SecurityDescriptor;PVOID SecurityQualityOfService;
} OBJECT_ATTRIBUTES;extern "C"
{int __stdcall ZwOpenDirectoryObject(HANDLE*, int DesiredAccess, _OBJECT_ATTRIBUTES*);int __stdcall ZwQueryDirectoryObject(HANDLE, void* Buffer, unsigned long BufferSize, BOOL ReturnSingleEntry, BOOL RestartScan, unsigned long* pContext, unsigned long* pReturnLength);int __stdcall ZwOpenSymbolicLinkObject(HANDLE* LinkHandle, int DesiredAccess, _OBJECT_ATTRIBUTES* ObjectAttributes);int __stdcall ZwQuerySymbolicLinkObject(HANDLE LinkHandle, _UNICODE_STRING* LinkTarget, unsigned long* ReturnedLength);int __stdcall ZwQueryObject(HANDLE, unsigned long Class, void* Buffer, unsigned long BufferSize, unsigned long* pReturnedLength);int __stdcall ZwClose(HANDLE);
}wchar_t* Print_Level(int lvl)
{if (!lvl) return (WCHAR*)L"";else if (lvl == 1) return (WCHAR*)L"=>";else if (lvl == 2) return (WCHAR*)L"==>";wchar_t X = '=';wchar_t* p = (wchar_t*)LocalAlloc(LMEM_ZEROINIT, (lvl * 2) + 2 + 2); //Never freed, fix laterint lvl_x = lvl, i = 0;while (lvl_x--) p[i++] = X;p[i] = '>';return p;
}BOOL ShouldConcat(wchar_t* pStr)
{if (!pStr) return FALSE;unsigned long Len = wcslen(pStr);if (Len){if (pStr[Len - 1] == '\\') return FALSE;}return TRUE;
}int Recur(HANDLE hDirectory, wchar_t* DirName, int LevelX)
{unsigned long BufSize = 0;void* Buffer = 0;unsigned long Context = 0;int ret = 0;WCHAR path[MAX_PATH] = { 0 };while (ret >= 0){unsigned long ReturnLength = 0;ret = ZwQueryDirectoryObject(hDirectory, 0, 0, TRUE, FALSE, &Context, &ReturnLength);// wprintf(L"%s ret: %X, Context: %X, ReturnLength: %X\r\n",Print_Level(LevelX),ret,Context,ReturnLength);if (ret == STATUS_BUFFER_TOO_SMALL){BufSize = ReturnLength;Buffer = LocalAlloc(LMEM_ZEROINIT, BufSize);ret = ZwQueryDirectoryObject(hDirectory, Buffer, BufSize, TRUE, FALSE, &Context, &ReturnLength);// wprintf(L"%s ret: %X, Context: %X, ReturnLength: %X\r\n",Print_Level(LevelX),ret,Context,ReturnLength);_UNICODE_STRING* pUni = (_UNICODE_STRING*)Buffer;char* StartBuffer = (char*)Buffer;char* EndBuffer = ((char*)Buffer) + ReturnLength;char* Cur = (char*)pUni;char* Str1 = (char*)(pUni->Buffer);unsigned long Len1 = pUni->MaxLength;char* Str2 = (char*)((pUni + 1)->Buffer);unsigned long Len2 = (pUni + 1)->MaxLength;if ((Cur >= StartBuffer) && (Cur + (sizeof(_UNICODE_STRING) * 2) <= EndBuffer) /*At least two _UNICODE_STRING structures*/&&(Str1 >= StartBuffer) && (Str1 + Len1 <= EndBuffer)&&(Str2 >= StartBuffer) && (Str2 + Len2 <= EndBuffer)){wchar_t* Name = 0, * Type = 0;if (pUni->Length != 0 && pUni->MaxLength != 0 && pUni->Buffer != 0) Name = pUni->Buffer;pUni++;if (pUni->Length != 0 && pUni->MaxLength != 0 && pUni->Buffer != 0) Type = pUni->Buffer;wchar_t FullObjName[MAX_PATH + 1] = { 0 };if (Name && Type && !_wcsicmp(Type, L"Device")){// wprintf(L"%s Name: %s, Type: %s\r\n", Print_Level(LevelX), Name, Type);wcscpy_s(FullObjName, DirName);wcscat_s(FullObjName, Name);memcpy_s(path, MAX_PATH, L"\\\\.\\GLOBALROOT\\Device", MAX_PATH);wcscat_s(path, FullObjName);HANDLE hDriver = CreateFileW(path, MAXIMUM_ALLOWED, 0, NULL, OPEN_EXISTING, 0, NULL);if (hDriver != INVALID_HANDLE_VALUE) {printf("%S\n", path);}else if (GetLastError() > 5 && GetLastError() != 31){printf("%S 需要进一步分析,错误值%d\n", path, GetLastError());}memset(path, 0, MAX_PATH);//wprintf(L"%s\n", FullObjName);}if (!_wcsicmp(Type, L"Directory")){_UNICODE_STRING UNI_S = { 0 };wchar_t* Dir_S = Name;UNI_S.Length = wcslen(Dir_S) * 2;UNI_S.MaxLength = UNI_S.Length + 2;UNI_S.Buffer = Dir_S;_OBJECT_ATTRIBUTES ObjAttr_S = { sizeof(ObjAttr_S) };ObjAttr_S.RootDirectory = hDirectory;ObjAttr_S.ObjectName = &UNI_S;ObjAttr_S.Attributes = 0x40;HANDLE hDir_S = 0;int ret_S = ZwOpenDirectoryObject(&hDir_S, 0x20001, &ObjAttr_S);if (ret_S < 0){}else{if (ShouldConcat(FullObjName)) wcscat_s(FullObjName, L"\\");int R = Recur(hDir_S, FullObjName, LevelX + 1);ZwClose(hDir_S);}}}}}return 0;
}int main()
{_UNICODE_STRING UNI = { 0 };wchar_t* Dir = (WCHAR*)L"\\";UNI.Length = wcslen(Dir) * 2;UNI.MaxLength = UNI.Length + 2;UNI.Buffer = Dir;_OBJECT_ATTRIBUTES ObjAttr = { sizeof(ObjAttr) };ObjAttr.ObjectName = &UNI;ObjAttr.Attributes = 0x40;HANDLE hDir = 0;int ret = ZwOpenDirectoryObject(&hDir, 0x20001, &ObjAttr);wprintf(L"ZwOpenDirectoryObject, ret: %X, HANDLE: %X\r\n", ret, hDir);if (ret >= 0){Recur(hDir, (WCHAR*)L"\\", 1);ZwClose(hDir);}char* buf = (char*)malloc(0xffffff);char path[MAX_PATH] = { 0 };HANDLE hDriver = NULL;memset(buf, 0, 0xffffff);QueryDosDeviceA(NULL, buf, 0xffffff);for (size_t i = 0; i < 0xffffff; i++){if (buf[i] == 0 && buf[i + 1] != 0){memcpy_s(path, MAX_PATH, "\\\\.\\", MAX_PATH);char* test = &buf[i + 1];strcat_s(path, test);hDriver = CreateFileA(path, MAXIMUM_ALLOWED, 0, NULL, OPEN_EXISTING, 0, NULL);if (hDriver != INVALID_HANDLE_VALUE) {printf("%s\n", path);}else if (GetLastError() > 5 && GetLastError() != 31){printf("%s 需要进一步分析,错误值%d\n", path, GetLastError());}memset(path, 0, MAX_PATH);}}return 0;
}
由于只是获得能通信名字,这些来看IRP_MJ_CREATE的处理倒是可以,而进一步发送ioctl需要拥有对应的权限。(https://docs.microsoft.com/en-us/windows-hardware/drivers/storage/acls-and-the-device-stack)
如果以成功发送ioctl为目的,从方便角度上看,MAXIMUM_ALLOWED改为GENERIC_WRITE | MAXIMUM_ALLOWED是更好的选择。
将MAXIMUM_ALLOWED改为GENERIC_WRITE | MAXIMUM_ALLOWED并在server 2022上运行后,我得到了如下结果
\\.\GLOBALROOT\Device\NDMP2
\\.\GLOBALROOT\Device\0000006a 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\NTPNP_PCI0002
\\.\GLOBALROOT\Device\0000008e
\\.\GLOBALROOT\Device\00000068 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\NDMP4
\\.\GLOBALROOT\Device\0000000f
\\.\GLOBALROOT\Device\MMCSS 需要进一步分析,错误值1168
\\.\GLOBALROOT\Device\USBPDO-1
\\.\GLOBALROOT\Device\00000074
\\.\GLOBALROOT\Device\NTPNP_PCI0005 需要进一步分析,错误值50
\\.\GLOBALROOT\Device\00000084 需要进一步分析,错误值32
\\.\GLOBALROOT\Device\00000070
\\.\GLOBALROOT\Device\0000001b
\\.\GLOBALROOT\Device\00000094
\\.\GLOBALROOT\Device\00000005
\\.\GLOBALROOT\Device\ahcache
\\.\GLOBALROOT\Device\00000015
\\.\GLOBALROOT\Device\NDMP10
\\.\GLOBALROOT\Device\NDMP9
\\.\GLOBALROOT\Device\PEAuth
\\.\GLOBALROOT\Device\NDMP11
\\.\GLOBALROOT\Device\0000006f 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\WMIDataDevice
\\.\GLOBALROOT\Device\Spaceport
\\.\GLOBALROOT\Device\0000006b 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\LanmanDatagramReceiver
\\.\GLOBALROOT\Device\0000007b
\\.\GLOBALROOT\Device\VMCIGuestDev 需要进一步分析,错误值50
\\.\GLOBALROOT\Device\ConDrv 需要进一步分析,错误值1168
\\.\GLOBALROOT\Device\USBPDO-2
\\.\GLOBALROOT\Device\USBFDO-0
\\.\GLOBALROOT\Device\Null
\\.\GLOBALROOT\Device\00000085 需要进一步分析,错误值32
\\.\GLOBALROOT\Device\NamedPipe
\\.\GLOBALROOT\Device\NTPNP_PCI0040
\\.\GLOBALROOT\Device\00000071
\\.\GLOBALROOT\Device\0000001c
\\.\GLOBALROOT\Device\00000095
\\.\GLOBALROOT\Device\00000081
\\.\GLOBALROOT\Device\NTPNP_PCI0041
\\.\GLOBALROOT\Device\KsecDD
\\.\GLOBALROOT\Device\00000016
\\.\GLOBALROOT\Device\DeviceApi 需要进一步分析,错误值87
\\.\GLOBALROOT\Device\vmmemctl
\\.\GLOBALROOT\Device\NTPNP_PCI0043
\\.\GLOBALROOT\Device\CNG
\\.\GLOBALROOT\Device\00000012 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\lwm 需要进一步分析,错误值123
\\.\GLOBALROOT\Device\NTPNP_PCI0044
\\.\GLOBALROOT\Device\NTPNP_PCI0045
\\.\GLOBALROOT\Device\0000006c 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\0000007c
\\.\GLOBALROOT\Device\USBPDO-3
\\.\GLOBALROOT\Device\USBFDO-1
\\.\GLOBALROOT\Device\00000086
\\.\GLOBALROOT\Device\Mailslot
\\.\GLOBALROOT\Device\00000072 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\0000001d
\\.\GLOBALROOT\Device\RasAcd
\\.\GLOBALROOT\Device\Tdx
\\.\GLOBALROOT\Device\00000007
\\.\GLOBALROOT\Device\PointerClass0
\\.\GLOBALROOT\Device\WindowsTrustedRT
\\.\GLOBALROOT\Device\00000017
\\.\GLOBALROOT\Device\PointerClass1 需要进一步分析,错误值32
\\.\GLOBALROOT\Device\00000027
\\.\GLOBALROOT\Device\PointerClass2 需要进一步分析,错误值32
\\.\GLOBALROOT\Device\RdpBus
\\.\GLOBALROOT\Device\0000006d 需要进一步分析,错误值433
\\.\GLOBALROOT\Device\VmSwitchInternal 需要进一步分析,错误值50
\\.\GLOBALROOT\Device\AppidEDPPlugin
\\.\GLOBALROOT\Device\USBFDO-2
\\.\GLOBALROOT\Device\KeyboardClass0
\\.\GLOBALROOT\Device\MQAC
\\.\GLOBALROOT\Device\USBPDO-0
\\.\GLOBALROOT\Device\CLUSPORT
\\.\GLOBALROOT\Device\0000001e
\\.\GLOBALROOT\Device\0000001a
\\.\GLOBALROOT\Device\00000093
\\.\GLOBALROOT\Device\ClusDisk
\\.\GLOBALROOT\Device\Netbios
\\.\GLOBALROOT\Device\00000018
\\.\GLOBALROOT\Device\Afd
\\.\GLOBALROOT\Device\NameResTrk 需要进一步分析,错误值87
\\.\GLOBALROOT\Device\NDMP1
\\.\GLOBALROOT\Device\WS2IFSL 需要进一步分析,错误值87
\\.\GLOBALROOT\Device\0000006e
\\.\VDRVROOT
\\.\ROOT#SYSTEM#0000#{97ebaacb-95bd-11d0-a3ea-00a0c9223196}
\\.\USB#VID_0E0F&PID_0003#6&30c5d09c&0&5#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_2#{dbe4373d-3c81-40cb-ace4-e0e5d05f0c9f}
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_0#{dbe4373d-3c81-40cb-ace4-e0e5d05f0c9f}
\\.\ROOT#spaceport#0000#{ef66a56f-88d1-4cd8-98c4-49faf57ad8af}
\\.\{08BE4064-D3FA-4495-8582-6E5F82A2501D}
\\.\PCI#VEN_8086&DEV_10D3&SUBSYS_07D015AD&REV_00#000C29FFFF37254900#{cac88484-7515-4c03-82e6-71a87abac361}
\\.\PCI#VEN_8086&DEV_10D3&SUBSYS_07D015AD&REV_00#000C29FFFF37254900#{ad498944-762f-11d0-8dcb-00c04fc3358c}
\\.\USB#ROOT_HUB#5&2891968b&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
\\.\ROOT#SYSTEM#0000#{cf1dda2c-9743-11d0-a3ee-00a0c9223196}
\\.\SWD#MSRRAS#MS_NDISWANIPV6#{ad498944-762f-11d0-8dcb-00c04fc3358c}
\\.\DISPLAY#Default_Monitor#4&427137e&0&UID0#{10910c20-0c64-4172-9409-add3064c0cad}
\\.\ahcache
\\.\HID#VID_0E0F&PID_0003&MI_01#8&12a4bdba&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd} 需要进一步分析,错误值32
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_2#{97fadb10-4e33-40ae-359c-8bef029dbdd0}
\\.\PEAuth
\\.\SWD#MSRRAS#MS_NDISWANIPV6#{cac88484-7515-4c03-82e6-71a87abac361}
\\.\HCD1
\\.\WMIDataDevice
\\.\Spaceport
\\.\SWD#MSRRAS#MS_AGILEVPNMINIPORT#{cac88484-7515-4c03-82e6-71a87abac361}
\\.\USB#ROOT_HUB20#5&36a4b5d6&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
\\.\{C5E84FD3-7C28-4127-9537-46932AEC7DB5}
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_0#{97fadb10-4e33-40ae-359c-8bef029dbdd0}
\\.\ACPI#VMW0003#4&1bd7f811&0#{378de44c-56ef-11d1-bc8c-00a0c91405dd}
\\.\ACPI#PNP0303#4&1bd7f811&0#{884b96c3-56ef-11d1-bc8c-00a0c91405dd}
\\.\ROOT#SYSTEM#0000#{0a4252a0-7e70-11d0-a5d6-28db04c10000}
\\.\{FB65BF16-81E0-4A40-9856-6C9342225361}
\\.\ROOT#spaceport#0000#{53f5630e-b6bf-11d0-94f2-00a0c91efb8b}
\\.\ROOT#SYSTEM#0000#{ffbb6e3f-ccfe-4d84-90d9-421418b03a8e}
\\.\{33E69CE9-E4B4-4024-82A7-961C99B04B17}
\\.\ROOT#SYSTEM#0000#{3c0d501a-140b-11d1-b40f-00a0c9223196}
\\.\SWD#MSRRAS#MS_NDISWANIP#{ad498944-762f-11d0-8dcb-00c04fc3358c}
\\.\vmmemctl
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_1#{97fadb10-4e33-40ae-359c-8bef029dbdd0}
\\.\SWD#MSRRAS#MS_NDISWANBH#{ad498944-762f-11d0-8dcb-00c04fc3358c}
\\.\{CAB6BE80-91EE-4D3A-A11A-E30DC775CEA8}
\\.\HCD2
\\.\SWD#MSRRAS#MS_NDISWANBH#{cac88484-7515-4c03-82e6-71a87abac361}
\\.\ACPI_HAL#PNP0C08#0#{15c5e253-b8c4-452e-99df-461d0f5078c8}
\\.\DISPLAY#Default_Monitor#4&427137e&0&UID0#{e6f07b5f-ee97-4a90-b076-33f57bf4eaa7}
\\.\HID#VID_0E0F&PID_0003&MI_00#8&367bfb7c&0&0000#{378de44c-56ef-11d1-bc8c-00a0c91405dd} 需要进一步分析,错误值32
\\.\ROOT#vdrvroot#0000#{2e34d650-5819-42ca-84ae-d30803bae505}
\\.\MAILSLOT
\\.\HID#VID_0E0F&PID_0003&MI_01#8&12a4bdba&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 需要进一步分析,错误值32
\\.\ROOT#NetFT#0000#{ad498944-762f-11d0-8dcb-00c04fc3358c}
\\.\WindowsTrustedRT
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_3#{97fadb10-4e33-40ae-359c-8bef029dbdd0}
\\.\ROOT#SYSTEM#0000#{53172480-4791-11d0-a5d6-28db04c10000}
\\.\ROOT#SYSTEM#0000#{4747b320-62ce-11cf-a5d6-28db04c10000}
\\.\SWD#MSRRAS#MS_NDISWANIP#{cac88484-7515-4c03-82e6-71a87abac361}
\\.\USB#ROOT_HUB30#5&21ab4ffc&0&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_3#{dbe4373d-3c81-40cb-ace4-e0e5d05f0c9f}
\\.\PCI#VEN_15AD&DEV_0774&SUBSYS_197615AD&REV_00#4&bbf9765&0&0088#{3abf6f2d-71c4-462a-8a92-1e6861e6af27}
\\.\AppidEDPPlugin
\\.\NfsRdr
\\.\PCI#VEN_15AD&DEV_0779&SUBSYS_077915AD&REV_00#4&1ee266c4&0&00B0#{3abf6f2d-71c4-462a-8a92-1e6861e6af27}
\\.\PCI#VEN_15AD&DEV_0770&SUBSYS_077015AD&REV_00#4&bbf9765&0&1088#{3abf6f2d-71c4-462a-8a92-1e6861e6af27}
\\.\ACPI_ROOT_OBJECT
\\.\MQAC
\\.\ACPI#AuthenticAMD_-_AMD64_Family_23_Model_96_-_AMD_Ryzen_7_4800H_with_Radeon_Graphics_________#_1#{dbe4373d-3c81-40cb-ace4-e0e5d05f0c9f}
\\.\CLUSPORT
\\.\HID#VID_0E0F&PID_0003&MI_00#8&367bfb7c&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} 需要进一步分析,错误值32
\\.\PIPE
\\.\GLOBALROOT 需要进一步分析,错误值123
\\.\SWD#MSRRAS#MS_AGILEVPNMINIPORT#{ad498944-762f-11d0-8dcb-00c04fc3358c}
\\.\ROOT#NetFT#0000#{cac88484-7515-4c03-82e6-71a87abac361}
\\.\NUL
\\.\{FF9B4267-AF09-4034-89FF-AF2471EAD848}
\\.\DISPLAY#Default_Monitor#4&427137e&0&UID0#{866519b5-3f07-4c97-b7df-24c5d8a8ccb8}
\\.\HCD0
其中\.\GLOBALROOT\Device\CLUSPORT引起了我的注意(该符号链接没有在我虚拟机上的其他windows版本上发现),所以,我决定审计该驱动。
我不太确定这个驱动是不是默认组件,我只知道是微软的驱动问题微软就会处理,不管它是不是默认启动,为此,我几乎安装了所有组件
并启动了所有已经安装的驱动,代码如下,以管理员运行。
//请在虚拟机下运行 因为在真机下运行后电脑会无法开机
#include<stdio.h>
#include <windows.h>
#pragma warning (disable: 4996)
int main() {HANDLE hFile;char* lpFileName = (char*)"C:\\Windows\\System32\\drivers\\*";WIN32_FIND_DATAA pNextInfo;hFile = FindFirstFileA(lpFileName, &pNextInfo);char path[0x1000];char path2[0x1000];char path3[0x1000];while (FindNextFileA(hFile, &pNextInfo)){if (pNextInfo.cFileName[0] == '.')continue;memcpy(path, "sc config ", strlen("sc config "));pNextInfo.cFileName[strlen(pNextInfo.cFileName)] = 0;pNextInfo.cFileName[strlen(pNextInfo.cFileName) - 1] = 0;pNextInfo.cFileName[strlen(pNextInfo.cFileName) - 2] = 0;for (size_t i = 0; i < strlen(pNextInfo.cFileName); i++){if (pNextInfo.cFileName[i] == '.'){pNextInfo.cFileName[i] = 0;}}/*memcpy(path3, "sc create ", strlen("sc create "));memcpy(path3 + strlen("sc create "), pNextInfo.cFileName, strlen(pNextInfo.cFileName));strcat(path3, " binPath=C:\\Windows\\System32\\drivers\\");strcat(path3, pNextInfo.cFileName);strcat(path3, ".sys");strcat(path3, " type=kernel start=auto");printf("command :%s\n", path3);system(path3);*/memcpy(path + strlen("sc config "), pNextInfo.cFileName, strlen(pNextInfo.cFileName));memcpy(path + strlen("sc config ") + strlen(pNextInfo.cFileName), " start= auto", strlen(" start= auto"));printf("command :%s\n", path);system(path);memcpy(path2, "sc start ", strlen("sc start "));memcpy(path2 + strlen("sc start "), pNextInfo.cFileName, strlen(pNextInfo.cFileName));printf("command :%s\n", path2);system(path2);// memset(path3, 0, 0x1000);memset(path, 0, 0x1000);memset(path2, 0, 0x1000);}return 0;
}
上面只是启动所有已经安装的驱动,为什么不遍历安装所有驱动,然后再启动驱动?因为这么做会蓝屏,你可以手动安装微软的驱动再启动。
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- UVM:消息机制
目录1. uvm_info1.1. uvm_info的过滤级别2. 安全级别2.1. 重载2.2. 结束仿真2.3. 断点传统的Systemverilog常使用$display()打印信息,而uvm含有几个特定的打印宏,可自动打印详细信息,无需再用$display()指定 1. uvm_info 使用公式是&#x…...
2024/4/13 2:53:06 - 【打卡第223道】【二叉树】【leetCode高频】:102. 二叉树的层序遍历
1、题目描述 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 2、算法分析 二叉树的层次遍历: 借助队列存储每层的结点,遍历队列,将队列中的结点添加…...
2024/4/13 2:53:01 - Android arch components 源码分析(2)—— Lifecycle
Lifecycle 的实现跟 ViewModel 类似,都是利用 Fragment 来实现它的功能。通过添加一个 fragment 到 activity 中,这个 fragment 便能够接收到各个生命周期回调。 以下源码使用 2.2.0 版本 使用方法简介 这里我并不打算讲太多 lifecycle 的用法ÿ…...
2024/4/13 2:53:56 - 原来泛型如此简单学习Java第18天)
目录 一.泛型的概述 二.定义和使用含有泛型的类 三.定义和使用含有泛型的方法 四.定义和使用含有泛型的接口 五.泛型通配符 一.泛型的概述 在前面学习集合时,我们都知道集合中是可以存放任意对象的,只要把对象存储集合后,那么这时他们都…...
2024/4/13 2:53:01 - scala工具类BigDecimal
public class NumberTest {public static void main(String[] args) {//容量:MathContext.DECIMAL[32~128]|UNLIMITEDBigDecimal num new BigDecimal(12.23501, MathContext.DECIMAL32);//UP 绝对值最大取整//DOWN 绝对值最小取整(大于0,向下…...
2024/4/8 20:01:34 - java基础—抽象类
一、概述 抽象方法:就是加上abstract关键字,然后去掉大括号,直接分好结束。 抽象类:抽象方法所在的类,class前面加上class。 正常: //public class Animal { //public void eat(){System.out.println();…...
2024/4/17 17:44:06 - vue前言
#### Vue基本代码结构 ~~~js const vm new Vue({ el:#app, //所有的挂在元素会被Vue生成的DOM替换 data:{this->window}, //定义变量, data中的变量之间不能互相访问 methods:{this->vm}, //定义方法, this.变量名可以访问data中的数据 props:{}, //可…...
2024/5/5 11:29:49 - Linux下写C/C++代码
Linux下写C/C代码Linux中的“软件商店”——yum工具配置VIM编辑器使用gcc/g编译器编译程序使用gdb调试程序Makefile编写Linux中的“软件商店”——yum工具 在Linux下安装软件, 一个通常的办法是下载程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一…...
2024/4/18 7:55:07 - 福师2022年2月课程考试《高级英语阅读(二)》作业考核答案
《高级英语阅读(二)》期末考试A卷 姓名: 专业: 学号: 学习中心: ? 答案务必写在最后一页答案卷上,否则不得分! 一、客观题(60分,每题2分) I 判断对错:…...
2024/4/15 22:16:11 - 新版Dede采集不要在用没更新的Dede插件
怎么用Dede采集把关键词优化到首页让网站流量暴增,是什么原因在影响你的网站权重?现在是一个内容为王的时代,那我们怎么拥有大量的网站内容?怎么才会有源源不断的新内容。今天就教给大家快速采集高质量文章的dede采集软件。 这款D…...
2024/4/13 2:52:46 - (六)存储引擎
存储引擎1. 查看存储引擎2. 设置系统默认的存储引擎3. 设置表的存储引擎3.1 创建表时指定存储引擎3.2 修改表的存储引擎4. 引擎介绍4.1 InnoDB 引擎:具备外键支持功能的事务存储引擎4.2 MyISAM 引擎:主要的非事务处理存储引擎4.3 Archive 引擎࿱…...
2024/4/16 4:14:17 - java 用户名称中emoji包情包的模糊处理
1 maven引入emoji-java <dependency><groupId>com.vdurmont</groupId><artifactId>emoji-java</artifactId><version>5.1.1</version> </dependency> 2 表情包工具类 import com.dianping.cat.Cat; import com.google.comm…...
2024/4/25 15:37:41 - 十分钟带你深入了解多线程之多线程关于锁的优化(一)
一、有助于提高锁性能的几点建议 锁的竞争必然会导致程序的整体性能下降。为了将这种副作用降到最低,这里提出一些关于使用锁的建议,希望可以帮助大家写出性能更高的程序。 1、减少锁持有时间 对于使用锁进行并发控制的应用程序而言,在锁竞…...
2024/4/8 20:01:26 - 2/14 计算几何初步
凸多边形的性质:就是指一个多边形的每一个内角都小于180180度的的多边形 向量右转意味着图像凹进去了 https://www.luogu.com.cn/problem/P3744 使得一个凸多边形中一个点移动最少的距离使之变为凹多边形 #include <bits/stdc.h> #define inf 1000000000.0 u…...
2024/5/6 19:21:12 - 数据只有被交换共享,才能创造价值 | 推荐收藏
北京2022年冬奥会正在如火如荼的举办当中,如此盛大运动会有近百个国家和地区的数千名运动员和教练员公共参与,再加之观众、工作人员,各类数据信息庞大繁杂,同时叠加新冠疫情,指挥调度难度可想而知。 在这种情况下&a…...
2024/4/18 6:22:01 - GEE计算面积
1.矢量数据计算面积(main function) var stateArea somewhere.geometry().area() var stateAreaSqKm ee.Number(stateArea).divide(1e6).round() print(stateAreaSqKm)2.栅格影像计算面积(main function) 思路:1)以像元为单位,计算感兴趣区…...
2024/4/29 4:45:12 - 前缀和(持续更新)
前缀和的解题思想: 前缀和的题目解题思维比较固定,即当我们循环数组到下标N时,需要用到数组前N-1项的计算的结果(这里不一定非要是和,也可能是积等),此时我们就该考虑是否应该通过计算数组循环过…...
2024/4/13 2:53:51 - java根据ip地址获取详细地域信息
java根据ip地址获取详细地域信息_伯恩大帝的博客-CSDN博客_java通过ip地址获取地区 互联网有很多接口可以实现通过ip查询到具体的位置,如下: 通过淘宝IP地址库获取IP位置 请求接口(GET):http://ip.taobao.com/servic…...
2024/4/14 23:01:50 - element ui 上传图片用法
通过 slot 你可以传入自定义的上传按钮类型和文字提示。可通过设置limit和on-exceed来限制上传文件的个数和定义超出限制时的行为。可通过设置before-remove来阻止文件移除操作。 <el-uploadclass"upload-demo"action"https://jsonplaceholder.typicode.com/…...
2024/4/13 2:53:41 - 基于STM32与机智云的智能蜡疗机
摘要: 随着物理疗法在慢病治疗中的效果获得认可, 传统的石蜡疗法被广泛应用在医院的理疗科。目前, 蜡疗机的制蜡方法虽已趋于成熟, 但仍存在制蜡效率低下、功耗大、不够智能等问题, 因此有必要对蜡疗机的制蜡效率及智能化程度进行研究。以STM32微控制器为核心, 结合G510通信模块…...
2024/4/14 16:02:16
最新文章
- 阿赵UE引擎C++编程学习笔记——HelloWorld
大家好,我是阿赵。 从这一篇开始学习虚幻引擎的C编程。 学习所有编程好像都应该从HelloWorld开始,所以我这里也不例外。不过为了能打印出HelloWorld,需要做的事情还不少。不过到了能打印出HelloWorld的时候,我感觉学习的过…...
2024/5/7 12:50:36 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/7 10:36:02 - LeetCode:1600. 王位继承顺序(DFS Java)
目录 1600. 王位继承顺序 题目描述: 实现代码与解析: DFS 原理思路: 1600. 王位继承顺序 题目描述: 一个王国里住着国王、他的孩子们、他的孙子们等等。每一个时间点,这个家庭里有人出生也有人死亡。 这个王国有…...
2024/5/2 1:54:27 - 实景三维在数字乡村建设中的重要作用
随着科技的飞速发展,数字乡村建设已成为推动乡村振兴、实现农村现代化的重要途径。实景三维技术作为数字乡村建设的重要支撑,正逐渐在各个领域发挥着不可或缺的作用。本文将从实景三维技术在数字乡村中的应用场景、优势及未来展望等方面进行探讨…...
2024/5/6 22:36:37 - 机器学习就这?机器学习的本质------数学应用题?
机器学习是人工智能领域的一个重要分支,它利用计算机算法从数据中学习和建立模型,以便进行预测或决策,而无需进行明确的编程。机器学习的应用范围非常广泛,从图像识别、自然语言处理到推荐系统等。 概念 机器学习的核心概念是&am…...
2024/5/5 8:39:15 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/7 5:50:09 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/7 9:45:25 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/5/4 23:54:56 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/6 9:21:00 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/5/4 23:54:56 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/5/4 23:55:05 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/5/4 23:54:56 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/5/7 11:36:39 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/5/4 23:54:56 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/6 1:40:42 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/5/4 23:54:56 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/5/4 23:55:17 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/5/7 9:26:26 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/5/4 23:54:56 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/4 23:55:06 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/5/5 8:13:33 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/5/4 23:55:16 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/5/4 23:54:58 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/6 21:42:42 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/5/4 23:54:56 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57