Search Evasion Techniques
Names, Techniques, Definitions, Keywords
Search Result
21 item(s) found so far for this keyword.
INT3 Instruction Scanning Anti-Debugging
Instruction INT3
is an interruption which is used as Software breakpoints. These breakpoints are set by modifying the code at the target address, replacing it with a byte value 0xCC
(INT3 / Breakpoint Interrupt).
The exception EXCEPTION_BREAKPOINT
(0x80000003) is generated, and an exception handler will be raised. Malware identify software breakpoints by scanning for the byte 0xCC in the …
Guard Pages Anti-Debugging
Memory breakpoints are a technique used by malware to detect if a debugger is present. This technique involves setting up a "guard page" in memory, which is a page of memory that is protected by the operating system and cannot be accessed by normal code. If a debugger is present, the malware can use this guard page to detect its …
Execution Guardrails: Environmental Keying Defense Evasion [Mitre]
Adversaries may environmentally key payloads or other features of malware to evade defenses and constraint execution to a specific target environment. Environmental keying uses cryptography to constrain execution or actions based on adversary supplied environment specific conditions that are expected to be present on the target. Environmental keying is an implementation of Execution Guardrails that utilizes cryptographic techniques for deriving …
LocalSize(0) Anti-Debugging
The function LocalSize
retrieves the current size of the specified local memory object, in bytes. By setting the hMem
parameters with 0 will trigger an exception in a debugger that can be used as an anti-debugging mechanism.
Anti-UPX Unpacking Others
Anti-UPX Unpacking is the technique to prevent malware from being unpacked by tools like UPX. UPX packed binary indicates that the section names starting with UPX followed by a number (UPX0 and UPX1) and the string “UPX!” at the end of the PE header. This UPX reference structure is located at the end of the PE header and the header …
INT 0x2D Anti-Debugging
When the instruction INT2D
is executed, the exception EXCEPTION_BREAKPOINT
is raised. Windows uses the EIP register as an exception address and then increments the EIP register value. Windows also examines the value of the EAX register while INT2D
is executed.
ICE 0xF1 Anti-Debugging
ICEBP is an undocumented instruction that serves as a single byte interrupt 1, generating a single step exception. It can be used to detect if the program is traced.
Trap Flag Anti-Debugging
There is a Trap Flag in the Flags register. Bit number 8 of the EFLAGS register is the trap flag. When the Trap Flag is set, a SINGLE_STEP exception is generated.
Debugger Evasion Defense Evasion [Mitre]
Adversaries may employ various means to detect and avoid debuggers. Debuggers are typically used by defenders to trace and/or analyze the execution of potential malware payloads.
Debugger evasion may include changing behaviors based on the results of the checks for the presence of artifacts indicative of a debugged environment. Similar to Virtualization/Sandbox Evasion, if the adversary detects a debugger, …
Call to Interrupt Procedure Anti-Debugging
This anti-debugging technique involves using the INT n
instruction to generate a call to the interrupt or exception handler specified with the destination operand.
To implement this technique, the int 0x03
instruction is executed, followed by a ret
(0xCD03, 0xC3) nested in a __try, __except block
. If a debugger is present, the except block will not be executed, …