If somebody tries to hot-patch an already-hot-patched function

(devblogs.microsoft.com)

31 points | by ibobev 1 day ago

5 comments

  • drdexebtjl 12 minutes ago
    Interesting framing that hooking functions is considered “rogue” by Microsoft, or something you’re “not authorized” to do, when Microsoft themselves makes the detours library and never framed it like this before.

    Also, missing from this explanation: hooks are usually applied per process, from user space. The code pages in a dynamic library are CoW’d from the shared page when you write to them to apply a patch.

    Does the Windows Update work similarly, or does it somehow modify the original, shared page, affecting all processes? Does a hook in a single process disable hot patching on the entire system?

  • jonhohle 53 minutes ago
    At a previous job I wrote a docker build for patching individual Java class files on top of a monolithic docker image. This was not runtime patching, but allowed a single layer that was only a few kilobytes to be deployed quickly in emergency situations.

    Interestingly, it had similar constraints and checked them at build time: it could not be a public ABI change and only one patch at a time.

  • fsfod 1 hour ago
    Windows parallel DLL loading also defensively disables itself for a process if it finds some NT DLL functions have been hooked https://stackoverflow.com/questions/42789199/why-there-are-t...
  • fragmede 55 minutes ago
    The world could use more hot patching. Now that AI upends computer security, getting software patched in a timely fashion is more important than ever, and having to reboot/restart the process or computer to get those updates is more of a problem than it was before.
    • CoastalCoder 54 minutes ago
      I genuinely cannot tell if you're joking.
      • fragmede 50 minutes ago
        I don't understand the joke. My background is worked at Ksplice a long time ago, patching the Linux kernel for security fixes without having to reboot.
  • j45 32 minutes ago
    It’s like mixing two different hot sauces, ymmv.