← Latest papers
💻 computer science

TLSCheck 2.0: An Enhanced Memory Forensics Approach to Efficiently Detect TLS Callbacks

This paper presents TLSCheck 2.0, an enhanced Volatility 3 plugin that improves memory forensics by combining precise PE header analysis, disassembly, and pattern matching to efficiently detect and analyze potentially malicious Thread Local Storage (TLS) callbacks in both 32-bit and 64-bit processes.

Original authors: Kartik N. Iyer, Parag H. Rughani

Published 2026-04-23
📖 4 min read☕ Coffee break read

Original authors: Kartik N. Iyer, Parag H. Rughani

Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer

Imagine your computer's memory (RAM) is like a bustling, temporary city. When you turn off your computer, this city vanishes instantly. Memory Forensics is the art of taking a "snapshot" of this city while it's still alive to catch criminals who leave no footprints on the ground (hard drive) but only in the air (memory).

This paper introduces a new tool called TLSCheck 2.0, designed to catch a specific type of sneaky criminal hiding in this city.

The Problem: The "Secret Handshake" (TLS Callbacks)

In the Windows operating system, there is a feature called Thread Local Storage (TLS). Think of TLS as a special "pre-game" routine. Before a program (like a web browser or a game) officially starts its main show, it runs a small, hidden checklist.

  • The Good: Legitimate programs use this to set up their tools, like a chef sharpening knives before cooking dinner.
  • The Bad: Malware (bad software) loves this feature. They hide their evil code in this "pre-game" routine. Because it runs before the main program starts, it can set traps, hide its tracks, or attack the system before anyone notices the main program is even running.

For a long time, digital detectives (forensic investigators) had a hard time finding these hidden routines. They were like looking for a needle in a haystack, or worse, looking for a needle that was disguised as a piece of hay.

The Solution: TLSCheck 2.0

The authors, Kartik and Parag, built a new "metal detector" for the Volatility framework (a famous tool used by digital detectives). They call it TLSCheck 2.0.

Here is how it works, using simple analogies:

1. The X-Ray Vision (PE Header Analysis)

When a program loads, it has a "ID card" called a PE Header. TLSCheck looks at this ID card to find the "Secret Handshake" section (the TLS directory). It doesn't just guess; it reads the map to find exactly where these hidden routines are stored in the memory dump.

2. The Translator (Disassembly)

Once it finds the hidden code, it's just a jumble of numbers and symbols (machine code). TLSCheck acts like a translator, turning that gibberish into human-readable instructions (assembly language). It's like taking a secret code written in a foreign language and translating it into English so you can read the instructions.

3. The Lie Detector (Pattern Matching)

This is the smartest part. The tool doesn't just show you the code; it reads it to see if it's acting suspicious. It looks for specific "tells" that bad guys use:

  • The "NOP Sled": Imagine a criminal building a long ramp of "No Operation" (do nothing) instructions to slide their code into the system. TLSCheck spots these ramps.
  • The "String Builder": Sometimes bad guys build secret words (like "delete system") one letter at a time on the stack so scanners can't see the word all at once. TLSCheck watches for this letter-by-letter construction.
  • The "Masked Caller": Bad guys often hide which system tools they are using by doing math tricks (hashing) to call them. TLSCheck solves the math to reveal who they are actually talking to.

4. The Custom Search (YARA & Regex)

Just like you can set your email spam filter to catch specific words, TLSCheck lets investigators upload their own "Wanted Posters" (YARA rules) or custom search terms (Regex). If an investigator knows a specific virus uses a specific trick, they can tell TLSCheck to look for that exact trick.

Why This Matters

In the past, finding these hidden routines was like trying to find a specific book in a library where the books are stacked randomly and the titles are written in invisible ink. You had to manually check every single page.

TLSCheck 2.0 automates this. It:

  1. Finds the hidden books.
  2. Opens them up.
  3. Highlights the pages where the "bad guys" are writing their plans.
  4. Tells the investigator exactly what the plan is.

The Result

The authors tested this tool on real-world malware (like the Ursnif virus) and custom-made traps. They found that while some very tricky malware tries to hide so well that even this tool struggles (just like a master thief might pick a lock), TLSCheck 2.0 successfully identified suspicious behavior in many cases where other tools failed.

In a Nutshell

This paper presents a super-powered magnifying glass for digital detectives. It helps them find and understand the secret, pre-programmed tricks that malware uses to hide inside a computer's memory, making it much harder for bad guys to get away with their crimes without being noticed.

Drowning in papers in your field?

Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.

Try Digest →