Cyber security

TrickDump – Evading Detection With Advanced Memory Dump Techniques

TrickDump dumps the lsass process without creating a Minidump file, generating instead 3 JSON and 1 ZIP file with the memory region dumps. In three steps:

  • Lock: Get OS information using RtlGetVersion.
  • Shock: Get SeDebugPrivilege privilege with NtOpenProcessToken and NtAdjustPrivilegeToken, open a handle with NtGetNextProcess and NtQueryInformationProcess and then get modules information using NtQueryInformationProcess and NtReadVirtualMemory.
  • Barrel: Get SeDebugPrivilege privilege, open a handle and then get information and dump memory regions using NtQueryVirtualMemory and NtReadVirtualMemory.

In the attack system, use the create_dump.py script to generate the Minidump file:

python3 create_dump.py [-l LOCK_JSON] [-s SHOCK_JSON] [-b BARREL_JSON] [-z BARREL_ZIP] [-o OUTPUT_FILE] 

The benefits of this technique are:

  • There is never a valid Minidump file in disk, memory or the network traffic.
  • There is not a single program or process executing the whole attack but three separate ones, which may raise less flags.
    • If you already have information about the OS of the target machine you can skip the first step (“Lock”).
  • The programs only use NTAPIS (this project is a variant of NativeDump).
  • It does not use OpenProcess or NtOpenProcess to get the lsass process handle with the PROCESS_VM_OPERATION and PROCESS_VM_WRITE access rights.
  • Each program allows to overwrite the ntdll.dll library “.text” section to bypass API hooking:
    • “disk”: Using a DLL already on disk. If a second argument is not used the path is “C:\Windows\System32\ntdll.dll”.
    • “knowndlls”: Using the KnownDlls folder.
    • “debugproc”: Using a process created in debug mode. If a second argument is not used the process is “c:\windows\system32\calc.exe”.

For more information click here.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

Comments in Bash Scripts

What Are Bash Comments? In Bash scripting, comments are notes in your code that the…

3 days ago

Shebang (#!) in Bash Script

When you write a Bash script in Linux, you want it to run correctly every…

4 days ago

Bash String Concatenation – Bash Scripting

Introduction If you’re new to Bash scripting, one of the first skills you’ll need is…

4 days ago

Learn Bash Scripting: How to Create and Run Shell Scripts for Beginners

What is Bash Scripting? Bash scripting allows you to save multiple Linux commands in a file and…

5 days ago

Bash if…else Statement – Bash Scripting

When it comes to automating tasks on Linux, Bash scripting is an essential skill for both beginners…

5 days ago

Bash Functions Explained: Syntax, Examples, and Best Practices

Learn how to create and use Bash functions with this complete tutorial. Includes syntax, arguments,…

7 days ago