Sophos Exploit Mitigation Blocks IronPDF Native DLL Load
Sophos exploit mitigation can flag IronPDF's native DLL load path in .NET Framework applications, because the LoadLibrary call for IronInterop.dll originates from CLR JIT-compiled memory. This can block application startup even when the IronPDF binaries are official, signed, and unmodified.
Sophos DynamicShellcode / HeapHeapHooray applies behavioral exploit-mitigation heuristics. It detects the native DLL load path used by IronPDF in a .NET Framework process and blocks startup because the load request appears to come from anonymous CLR-managed memory rather than a file-backed origin.
Solution
Option 1: Add a narrow Sophos exclusion
Recommended: add the narrowest Sophos exclusion available for this detection. Prefer a certificate-based allow rule for Iron Software signed binaries, or an exclusion for the specific Sophos detection ID confirmed by Sophos Support.
Keep the exclusion scope narrow. Do not disable DynamicShellcode protection broadly for the whole application unless Sophos provides no narrower option and the customer's security team approves it.
Option 2: Run through IronPdfEngine in gRPC remote mode
Where endpoint exclusions are not acceptable, run IronPDF through IronPdfEngine in gRPC remote mode. The native loading then happens in a separate process instead of inside the .NET Framework client application.

Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.