mirror of
https://github.com/Kong/insomnia.git
synced 2026-08-04 03:42:20 -04:00
Confirmed via Process Monitor that the C++/iostream wrapper let a planted dbghelp.dll load successfully — C++ static initializers run during CRT startup, before wmain()/ApplyMitigations() ever executes, so anything that DLL loads before that point is unprotected. Rewritten with a custom PE entry point and -nostdlib: the only static import is kernel32.dll. Signature verification now loads wintrust.dll/crypt32.dll dynamically via LoadLibraryW/GetProcAddress after the mitigation is already active, so those loads (and their own transitive dependencies) are also protected, rather than being static imports resolved before our code ever runs. Payload renamed inso-node.dll (from inso-core-<version>.exe) to match the disguised-as-a-DLL convention the GUI wrapper already uses. Direct stdio-handle passthrough replaces the pipe-relay-thread design — simpler and gives the same full stdin/stdout/stderr/exit-code fidelity.