Discovery / credits: Malvuln - malvuln.com (c) 2022
Original source: https://malvuln.com/advisory/9ede6951ea527f96a785c5e32b5079e6.txt
Contact: malvuln13@gmail.com
Media: twitter.com/malvuln
Threat: Backdoor.Win32.Kilo.016
Vulnerability: Denial of Service (UDP Datagram)
Description: The malware listens on TCP ports 6712, 6713, 6714, 6715, 7722, 15206, 15207, 16712 and UDP 6666. Attackers who can reach an infected host can send a large payload to UDP port 6666 causing a disruption in service.
Family: Kilo
Type: PE32
MD5: 9ede6951ea527f96a785c5e32b5079e6
Vuln ID: MVID-2022-0546
Disclosure: 04/14/2022
Memory Dump:
(1ab8.1368): Access violation - code c0000005 (first/second chance not available)
eax=000a1078 ebx=000a1048 ecx=0047b094 edx=000a1078 esi=000a11a0 edi=00000000
eip=776e9fab esp=000a0fc8 ebp=000a100c iopl=0 nv up ei pl nz ac po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010212
ntdll!RtlAcquireSRWLockShared+0xb:
776e9fab 56 push esi
0:000> !analyze -v
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************
FAULTING_IP:
KERNELBASE!RaiseException+62
74a108f2 8b4c2454 mov ecx,dword ptr [esp+54h]
EXCEPTION_RECORD: 0019f788 -- (.exr 0x19f788)
ExceptionAddress: 74a108f2 (KERNELBASE!RaiseException+0x00000062)
ExceptionCode: 0eedfade
ExceptionFlags: 00000003
NumberParameters: 7
Parameter[0]: 00413c5f
Parameter[1]: 06e39bb8
Parameter[2]: ffffffff
Parameter[3]: 004104f0
Parameter[4]: 042e2d94
Parameter[5]: 0019fd0c
Parameter[6]: 0019fcc8
PROCESS_NAME: Backdoor.Win32.Kilo.016.9ede6951ea527f96a785c5e32b5079e6
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%p referenced memory at 0x%p. The memory could not be %s.
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%p referenced memory at 0x%p. The memory could not be %s.
EXCEPTION_PARAMETER1: 00000001
EXCEPTION_PARAMETER2: 000a0fc4
WRITE_ADDRESS: 000a0fc4
FOLLOWUP_IP:
KERNELBASE!RaiseException+0
74a10890 8bff mov edi,edi
MOD_LIST: <ANALYSIS/>
NTGLOBALFLAG: 0
APPLICATION_VERIFIER_FLAGS: 0
CONTEXT: 0019f7d8 -- (.cxr 0x19f7d8)
eax=0019fc38 ebx=ffffffff ecx=00000007 edx=00000000 esi=004104f0 edi=042e2d94
eip=74a108f2 esp=0019fc38 ebp=0019fc94 iopl=0 nv up ei pl nz ac po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000212
KERNELBASE!RaiseException+0x62:
74a108f2 8b4c2454 mov ecx,dword ptr [esp+54h] ss:002b:0019fc8c=955c75b1
Resetting default scope
ADDITIONAL_DEBUG_TEXT: Followup set based on attribute [Is_ChosenCrashFollowupThread] from Frame:[0] on thread:[PSEUDO_THREAD]
LAST_CONTROL_TRANSFER: from 0046ea76 to 74a108f2
FAULTING_THREAD: ffffffff
BUGCHECK_STR: APPLICATION_FAULT_INVALID_STACK_ACCESS_INVALID_POINTER_WRITE_EXPLOITABLE_FILL_PATTERN_ffffffff
PRIMARY_PROBLEM_CLASS: INVALID_STACK_ACCESS_EXPLOITABLE_FILL_PATTERN_ffffffff
DEFAULT_BUCKET_ID: INVALID_STACK_ACCESS_EXPLOITABLE_FILL_PATTERN_ffffffff
STACK_TEXT:
0019fc38 74a108f2 kernelbase!RaiseException+0x62
0019fd14 0046ea76 backdoor_win32_kilo_016+0x6ea76
0019fd6c 0046e995 backdoor_win32_kilo_016+0x6e995
0019fd88 7720e0bb user32!_InternalCallWinProc+0x2b
0019fdb4 77218849 user32!InternalCallWinProc+0x20
0019fdd8 7721b145 user32!UserCallWinProcCheckWow+0x1be
0019fea8 772090dc user32!DispatchMessageWorker+0x4ac
0019ff14 772038c0 user32!DispatchMessageA+0x10
0019ff1c 0044fc8c backdoor_win32_kilo_016+0x4fc8c
0019ff70 004d87b2 backdoor_win32_kilo_016+0xd87b2
0019ff88 77408654 kernel32!BaseThreadInitThunk+0x24
0019ff9c 77704a77 ntdll!__RtlUserThreadStart+0x2f
0019ffe4 77704a47 ntdll!_RtlUserThreadStart+0x1b
SYMBOL_NAME: kernelbase!RaiseException+0
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: KERNELBASE
IMAGE_NAME: KERNELBASE.dll
DEBUG_FLR_IMAGE_TIMESTAMP: 0
STACK_COMMAND: .cxr 000000000019F7D8 ; kb ; dds 19fc38 ; kb
FAILURE_BUCKET_ID: INVALID_STACK_ACCESS_EXPLOITABLE_FILL_PATTERN_ffffffff_c0000005_KERNELBASE.dll!RaiseException
BUCKET_ID: APPLICATION_FAULT_INVALID_STACK_ACCESS_INVALID_POINTER_WRITE_EXPLOITABLE_FILL_PATTERN_ffffffff_kernelbase!RaiseException+0
Exploit/PoC:
python -c "print('A'*30000)" | nc64.exe x.x.x.x 6666 -c -u
Disclaimer: The information contained within this advisory is supplied "as-is" with no warranties or guarantees of fitness of use or otherwise. Permission is hereby granted for the redistribution of this advisory, provided that it is not altered except by reformatting it, and that due credit is given. Permission is explicitly given for insertion in vulnerability databases and similar, provided that due credit is given to the author. The author is not responsible for any misuse of the information contained herein and accepts no responsibility for any damage caused by the use or misuse of this information. The author prohibits any malicious use of security related information or exploits by the author or elsewhere. Do not attempt to download Malware samples. The author of this website takes no responsibility for any kind of damages occurring from improper Malware handling or the downloading of ANY Malware mentioned on this website or elsewhere. All content Copyright (c) Malvuln.com (TM).