Hacking Tools

IAT-Tracer V2 : Streamlining API Function Tracing For Enhanced Cybersecurity

IAT-Tracer V2 is a plugin for Tiny-Tracer framework (by @hasherezade) for automatically detecting and resolving functions’ parameters out of the IAT or trace logs (.tag files) of PE files.

The plugin has a GUI that allows the user to choose what imported or called functions to trace and watch and then automatically fills the parameters (library, function’s name, and the number of parameters) into the “params.txt” file used by Tiny-Tracer.

Using this tool, the user can log all the dynamically called API functions and their arguments for each call.

Changelog (V2)

  • .tag file parsing capabilities
  • Search box for automatic filtering by functions’ names
  • Using .pickle file to reduce DB size
  • Pyinstaller compatibility for one file application (see Releases for downloading the .exe file)
  • Bug fixes

Usage (IAT Tracing)

Example: tracing and watching interesting API functions from the Vipasana ransomware binary.

Usage (.tag File Tracing)

Example: tracing and watching all the dynamically called functions from the SameCoin Wiper binary.

Motivation

Currently, to trace and watch a program with the Tiny-Tracer framework one needs to perform several steps manually:

  1. Finding which interesting functions are imported/called by the program.
  2. Finding the library and the number of parameters required by those functions (this step usually requires online access to MSDN).
  3. Manually writing each function’s library, name, and number of parameters to the params.txt file.

The plugin is intended to automate this process, enabling the user to complete steps 1-3 offline in a matter of seconds.

Installation

The plugin is intended to be used after the installation of Tiny-Tracer.

git clone https://github.com/YoavLevi/IAT-Tracer.git
cd IAT-Tracer\
pip install -r requirements.txt
python .\IAT-Tracer.py

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

ss Command in Linux: Display Socket Statistics and Connections

The ss command in Linux lists open sockets and active network connections. It replaced the deprecated netstat command and…

1 hour ago

ftp Command in Linux: Connect to Servers and Transfer Files

The ftp command in Linux connects to a remote FTP server and transfers files. FTP transmits everything…

1 hour ago

lsmod Command in Linux: List and Inspect Kernel Modules

The lsmod command in Linux lists all currently loaded kernel modules. It reads /proc/modules — a virtual file maintained…

1 hour ago

rename Command in Linux: Batch Rename Files with Perl Regex

The rename command in Linux renames multiple files at once using Perl regular expressions. Unlike mv, which handles…

1 hour ago

pgrep Command in Linux: Find and Filter Running Processes

The pgrep command in Linux finds the PIDs of running processes based on a name or other…

22 hours ago

unlink Command in Linux: Remove a Single File or Symlink

The unlink command in Linux removes a single file by deleting its directory entry. It is a…

22 hours ago