-
Notifications
You must be signed in to change notification settings - Fork 142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
VMProtect-AntiVM tiny trace log no record any syscall #61
Comments
The above is a demo, using vmp3.8.1 protection, only anti-vm is turned on, and the other protection options are turned off. The program only has the function of printing imagebase, so you can use it with confidence. |
testaslr.vmp.exe.tag.zip |
ini configuration is as follows |
As a supplement, I am running tiny trace in a virtual machine of vmware17.5+win10 21h2. |
hi @x64bugreport ! Thanks for your report. Clearly, it is detected by HyperVisor vendor check (described here: https://unprotect.it/technique/cpuid/). Looking at your log, it seems to be the same in your case. And this is the tracelog that I've got on a physical machine: Using TinyTacer.ini:
and params: So, the series of the initial checks, basing on CPUID is:
I will see what I can do to evade them in TinyTracer. |
BTW, I see that this version of VMProtect uses the set of evasion tricks described in this blog: |
Thank you very much for your reply. I can successfully trace the target using the configuration you provided. Thank you very much for the project you developed. Thank you very much! |
@x64bugreport - please check the latest updates, now you should be able to trace your binary on a VM! ENABLE_SHORT_LOGGING=True
USE_DEBUG_SYMBOLS=False
FOLLOW_SHELLCODES=1
;FOLLOW_SHELLCODES:
; 0 : trace only the main target module
; 1 : follow only the first shellcode called from the main module
; 2 : follow also the shellcodes called recursively from the the original shellcode
; 3 : follow any shellcodes
TRACE_RDTSC=False
TRACE_INT=False
TRACE_SYSCALL=True
LOG_SECTIONS_TRANSITIONS=True
LOG_SHELLCODES_TRANSITIONS=True
LOG_INDIRECT_CALLS=False
HEXDUMP_SIZE=8
HOOK_SLEEP=False
SLEEP_TIME=10
; ANTIDEBUG: (Windows only)
; 0 : Disabled
; 1 : Standard
; 2 : Deep (may lead to some false positives)
ANTIDEBUG=1
; ANTIVM: (Windows only)
ANTIVM=1
EMULATE_HYPERV=True
|
VMP detects virtualization by using cpuid and some APIs directly called through syscall. Use tiny trace to trace the target program. No syscall calls are recorded, and then the virtual machine is detected. What is the reason for this?
testdemo.zip
The text was updated successfully, but these errors were encountered: