IOBit Advanced SystemCare Utimate DOS Vulnerability

Basic Info

Vendor: IOBit

Software:

Vulnerable Component:

Vuln Type: Null Pointer Dereference

Description:

AscRegistryFilter.sys allows all users in Everyone Group to interact with it. When process IOCTL 0x8001E004, it doesn't check the address of the input buffer, an attacker with low privilege can trigger this vulnerability and cause BSOD in the Windows system.

Proof Of Concept

Test OS Version: Windows 10, 19041.vb_release.191206-1406

  1. click poc.exe to trigger this issue
  2. cause a BSOD of Windows system
CONTEXT:  ffff808cd7de1d80 -- (.cxr 0xffff808cd7de1d80)
rax=0000000000000000 rbx=0000000000000000 rcx=ffff808cd7de27fb
rdx=00007f732821d808 rsi=0000000000000000 rdi=0000000000000000
rip=fffff806743a3ca3 rsp=ffff808cd7de2788 rbp=0000000000000000
 r8=0000000000000004  r9=00000000756c7466 r10=fffff806743a16c4
r11=ffff808cd7de27f8 r12=ffffd702f40a9810 r13=ffffd702f1b7b700
r14=0000000000000000 r15=0000000000000000
iopl=0         nv up ei ng nz na pe nc
cs=0010  ss=0018  ds=002b  es=002b  fs=0053  gs=002b             efl=00050282
AscRegistryFilter+0x3ca3:
fffff806`743a3ca3 8a040a          mov     al,byte ptr [rdx+rcx] ds:002b:00000000`00000003=??
Resetting default scope
​
PROCESS_NAME:  poc.exe
​
STACK_TEXT:
ffff808c`d7de2788 fffff806`743a1995 : 00000000`00000000 00000000`00000000 00000000`00000000 fffff806`59e5a2c1 : AscRegistryFilter+0x3ca3
ffff808c`d7de2790 fffff806`59a49cf5 : 00000000`00000002 00000000`00000000 ffffd702`f6444310 00000000`00000000 : AscRegistryFilter+0x1995
ffff808c`d7de27f0 fffff806`59e592ac : 00000000`00000001 00000000`8001e004 ffffd702`f6444310 00000000`00000000 : nt!IofCallDriver+0x55
ffff808c`d7de2830 fffff806`59e58f03 : ffffd702`00000000 ffff808c`d7de2b80 00000000`00010000 00000000`8001e004 : nt!IopSynchronousServiceTail+0x34c
ffff808c`d7de28d0 fffff806`59e581d6 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!IopXxxControlFile+0xd13
ffff808c`d7de2a20 fffff806`59c25235 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`0014edb8 : nt!NtDeviceIoControlFile+0x56
ffff808c`d7de2a90 00007ffa`f510d0c4 : 00007ffa`f2b2591b 00000002`0000000c 00007ffa`f50c0101 0000e7b5`3a60d53d : nt!KiSystemServiceCopyEnd+0x25
00000000`0014fdc8 00007ffa`f2b2591b : 00000002`0000000c 00007ffa`f50c0101 0000e7b5`3a60d53d 00007ffa`f2fd5985 : ntdll!NtDeviceIoControlFile+0x14
00000000`0014fdd0 00007ffa`f3295921 : 00000000`8001e004 00000000`00000000 00000000`0014fe60 00007ffa`00000000 : KERNELBASE!DeviceIoControl+0x6b
00000000`0014fe40 00007ff6`dab810fc : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : KERNEL32!DeviceIoControlImplementation+0x81
00000000`0014fe90 00007ff6`dab81350 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : poc!main+0x8c

attachment

AscRegistryFilter.sys