DPAPI中的
CryptProtectMemory
API允许您传递CRYPTPROTECTMEMORY_SAME_PROCESS标志,该标志可防止其他进程解密内存.解决这个问题的一种方法是使用OpenProcess,WriteProcessMemory和CreateRemoteThread将代码注入目标进程并让它调用CryptUnprotectMemory,从而解密内存并将其泄漏给其他进程.
假设两个进程在Windows Vista或更高版本的同一有限权限用户(即非管理员)的上下文中运行,这仍然可能吗?我的印象是,无论进程ACL如何,进程内存写入操作都被拒绝限制用户,但我可能错了.