-
Notifications
You must be signed in to change notification settings - Fork 586
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
dynamic: render: ValueError "name not found for call" #2619
Comments
Sample is not public. My initial triage shows that not all matched calls are recorded in |
This doesn't seem specific to a particular process/thread combination. I'm seeing missing entries across the board. |
Ah it looks like part of the problem is Line 584 in 151d30b
|
I've confirmed that VMRay is tracking duplicate thread IDs for a single process, which makes sense as TIDs can be recycled by the underlying operating system. This is related to the PID reuse discussion in #2361. Basically, we need to make the process and thread address classes more unique, using information provided by the underlying sandbox, or, generating our own when parsing. |
If i am not wrong the error occurs because CAPA assumes thread addresses (TIDs) are unique per process, but OS-level TID reuse causes collisions in dynamic analysis data. We can change the code in loader.py mentioned above to: Is this okay to proceed with @mike-hunhoff ? |
there are at least two further considerations:
this will take a little investigation and discussion, and you're welcomed to research this further @dhruvak001. if you do, please start by reproducing locally and developing unit test cases so we are all working towards precisely the same goal. |
The text was updated successfully, but these errors were encountered: