0x00 前言
最近学习了Stuart@ukstufus的文章《Persistence Architecture Matters》,恰巧解决了我之前遇到过的一个问题,理清了文件和注册表重定向中需要注意的细节
大家在学习的过程中难免也会碰到,所以在此分享一下。
《Persistence Architecture Matters》的链接:
https://labs.mwrinfosecurity.com/blog/persistence-architecture-matters/
0x01 消失的注册表键值
OS:Win8x64
开发环境:VS2008
1、编写程序写入注册表
代码如下:
#include <atlbase.h>
int main(int argc, char *argv[])
{
LPCTSTR lpSubKey = "Software\\Microsoft\\Windows\\CurrentVersion\\Run";
HKEY hKey;
DWORD dwDisposition = REG_OPENED_EXISTING_KEY;
LONG lRet = ::RegCreateKeyEx(HKEY_LOCAL_MACHINE, lpSubKey, NULL, NULL, REG_OPTION_NON_VOLATILE, KE