Open WorksButNotTested opened 3 years ago
Even more minimal reproducer:
Stalker.trustThreshold = -1;
Stalker.follow(Process.id,{});
new ModuleMap().values().forEach(m => {
console.log(`Found: ${m.name}`);
if (m.name.startsWith('libstdc++')) {
console.log(`Excluding: ${m.name}`);
Stalker.exclude(m);
}
});
This is probably related to the fact that we don't have FDEs for the transformed code, as @oleavr and I discussed recently. You can see failing tests which reproduce this here: https://gist.github.com/s1341/d7357e8c5a6e84a2ed6ea00f77ceead8
hi guys! is this issue resolved by this pull request already? https://github.com/frida/frida-gum/pull/607
I believe it will be if you call ‘ gum_stalker_activate_experimental_unwind_support’. Subject to any symbol resolution issues discussed in the PR.
When running the following C++ application under Stalker (using the below JS script) but with the
libstdc++
library excluded it seems that the catch block of the SEH is never invoked and the process instead just terminates.Target Application:
FRIDA Script:
Gadget configuration:
Actual output:
Expected output (also achieved if
Stalker.exclude
is commented out):Affects versions:
14.2.18
15.0.0