pe-sieve v0.2.1 released: searching for the modules containing in-memory code modifications
PE-sieve is a light-weight tool that helps to detect malware running on the system, as well as to collect the potentially malicious material for further analysis.
Recognizes and dumps a variety of implants within the scanned process, such as:
- replaced/injected PEs
- hooks, and other in-memory patches.
It can be used for dynamic malware unpacking (see examples here).
PE-sieve works on Windows, the lowest supported version is XP.
PE-sieve scans a given process, searching for the modules containing in-memory code modifications. When found, it dumps the modified PE. When found, it dumps the modified PE. Currently, it detects inline hooks, hollowed processes, Process Doppelgänging etc. The tool is under rapid development, so expect frequent updates.
Detects inline hooks, hollowed processes etc.
This tool is intended to help malware analysts, malware hunters, and incident responders in their daily work.
Having a new sample to be analyzed, we can unpack it with PE-sieve very fast, extracting the payload that can be then easily identified and used for further analysis.
When we want to collect material from an infected system of a client, HollowsHunter (an extended PE-sieve based scanner) can scan the full system, dumping the injected code from each and every accessible process.
It can also help in cases when the infected client doesn’t know what is the sample that started the infection. PE-sieve/HollowsHunter will search for injected material in running processes and then dump the malicious PE.
- Detecting inline hooks and patches
- Detecting hollowed processes
- Detecting Process Doppelgänging
- Fixed a bug in libpeconv causing crashes during import recovery
- Added missing boundary check during searching PE artefacts
- Detect sections that are non-executable in the header, but set executable during execution (Issue #36)
- Do not try to recover Import Table, if the detected PE is in a raw format
- Improved accuracy in rebuilding Import Table (split IAT series that cannot be covered as a whole)
- Scan non-executable memory pages if DEP for the process is disabled. The feature is enabled by paramerer
/data. (Issue #37)
Copyright (c) 2017-2018, @hasherezade
All rights reserved.