首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从32位进程读取64位注册表项?

首先,要明确的是,在云计算领域,32位和64位指的是计算机内存管理的位数,32位支持4GB内存,而64位可以支持超过4GB的内存。在云计算领域,我们主要关注的是虚拟化、容器化、分布式存储和计算等。

针对你的问题,从32位进程读取64位注册表项,需要使用一些技巧。以下是常用的方法:

  1. 使用64位注册表访问工具:在Windows系统上,可以使用RegOpenKeyEx、RegGetValue、RegCloseKey等API函数访问64位注册表项。这些函数可以在头文件Windows.h中找到。
  2. 使用32位注册表访问工具:在Windows系统上,也可以使用32位的注册表访问工具,如RegEdit、RegShell等。这些工具可以在系统文件夹中找到。
  3. 使用进程间通信:如果需要在不同进程间传输数据,可以使用进程间通信(IPC)工具,如管道、消息队列、共享内存等。
  4. 使用第三方库:可以使用第三方库,如Python的ctypes、C++的Qt等,帮助进行注册表操作。

需要注意的是,注册表操作可能会对系统稳定性造成影响,请谨慎操作。同时,不同的操作系统和架构可能有不同的注册表结构和访问方式,需要注意兼容性问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

.NETC# 在 64 位进程读取 32 位进程重定向后的注册

那么 64 位程序如何读取到 32 位程序写入的注册表路径呢?...对于 64 位程序,读取的时候就不会有 Wow6432Node 路径部分。由于我没有在那个路径放注册表项,所以会得到 null。 那么怎样编译的程序是 64-bit 的程序呢?...如何在 64 位程序中读取 32 位注册表路径 前面我们的例子代码是这样的: 1 var value = RegistryHive.LocalMachine.Read(@"SOFTWARE\Walterlv..."); 可以看到,相同的代码,在 32 位和 64 位进程下得到的结果是不同的: 32 位进程在 32 位系统上,64 位进程在 64 位系统上,读取的路径会是传入的路径; 32 位进程在 64 位系统上...那么如何在 64 位进程读取 32 位注册表路径呢? 方法是在打开注册表项的时候,传入 RegistryView.Registry32。

34130

使用Metasploit绕过UAC的多种方法

2.UAC如何运行? UAC通过阻止程序执行任何涉及有关系统更改/特定任务的任务来运行。除非尝试执行这些操作的进程以管理员权限运行,否则这些操作将无法运行。...一些没有管理员权限无法完成的操作: 注册表修改(如果注册表项在HKEY_LOCAL_MACHINE下(因为它影响多个用户),它将是只读的) 加载设备驱动程序 DLL注入 修改系统时间(时钟) 修改用户帐户控制设置...此模块修改注册表项,但在调用payload后将清除该项。该模块不需要payload的体系架构和操作系统匹配。...此模块修改注册表项,但在调用payload后将清除该项。该模块不需要payload的体系架构和操作系统匹配。...当加载某些较高完整性级别进程时,会引用这些注册表项,从而导致进程加载用户控制的DLL。这些DLL包含导致会话权限提升的payload。此模块修改注册表项,但在调用payload后将清除该项。

1.6K20
  • 渗透技巧——”隐藏”注册表的创建

    如何读取、创建以及如何删除呢?...(注册表项名称以\0开头),该注册表项下的键值通过正常的Native API实现创建、读取、删除 通过最基本api的实现过程不再赘述,封装好的API源代码可参考文末给出的链接 测试Dan Madden工程包含的功能...); 创建注册表项下的键值test1并赋值: 读取注册表项下键值test1的内容: MyQueryValueKeyString(hKey,"test1"); 删除该注册表项下的键值test1: MyDeleteValueKey...(hKey,"test1"); 删除注册表项: MyDeleteKey(hKey); 程序输出如下图,成功对隐藏注册表项下的正常键值进行操作 接下来,对Dan Madden的工程添加新的功能:创建、读取...,内容为”\0abcd” 由于”\0”的存在,所以无法直接使用strlen计算数组长度 变通方法: 计算偏移1开始的数组长度,最终再加1 即len = strlen(buf+1)+1 Native API

    1.5K80

    Bypass-UAC(用户帐户控制)的那些事

    3.UAC如何运行? UAC通过阻止程序执行任何涉及有关系统更改/特定任务的任务来运行。除非尝试执行这些操作的进程以管理员权限运行,否则这些操作将无法运行。...注册表项指定的DLL是已经被操作系统加载过后的DLL,不会被应用程序搜索并加载。...此模块修改注册表项,但在调用payload后将清除该项。该模块不需要payload的体系架构和操作系统匹配。...此模块修改注册表项,但在调用payload后将清除该项。该模块不需要payload的体系架构和操作系统匹配。...当加载某些较高完整性级别进程时,会引用这些注册表项,从而导致进程加载用户控制的DLL。这些DLL包含导致会话权限提升的payload。此模块修改注册表项,但在调用payload后将清除该项。

    1.9K20

    DotNet4应用程序打包工具->升级版【三】宿主程序分析+全部源码下载

    ~安装失败"); } ClearFile(netName); ClearFile(tarName); return 0; } 判断目标环境是否有相关的注册表项 先从资源里提取出注册表项 然后判断...Alert("您的系统中缺少应用程序执行的环境\n现在开始为您搭建该环境"); result = 0; } RegCloseKey(ck); return result; } 如果没有相关的注册表项...就要释放出想要预先安装的程序 读取资源 并把资源写入文件 int FreeRC(LPCTSTR resourceID,LPCTSTR resourceName) { HMODULE hInstance...szFilePath,resourceName);//.dotnet4.exe int result = ::DeleteFile(szFilePath); return result; } 接着再次检查注册表项...result = CheckDotNet4(); 如果仍旧没有相关的注册表项 那么说明预安装程序没有安装成功,退出程序 --------------------- 至此,检查工作已经完成 入口函数里剩下的代码

    36910

    WMI 攻击手法研究 – 与 windows 注册表交互 (第三部分)

    枚举值 现在我们知道如何列出注册表项下可用的键,让我们枚举 Drivers32 键下的值: Invoke-WmiMethod -Namespace root\default -Class stdregprov...读取值 现在让我们尝试读取子键的值,对于示例,将读取 Drivers32 子键 (定义应用程序的 Windows NT DLL) 的值。...现在已经知道如何使用 WMI 注册表中读取键值对,然而,到目前为止,这些并不需要管理权限 —— 创建、删除和更新键和值可能需要提升权限。...KEY_NOTIFY 16 注册表项注册表项子项的更改通知 KEY_CREATE 32 创建注册表项 DELETE 65536 删除注册表项 READ_CONTROL 131072 结合 STANDARD_RIGHTS_READ...创建注册表项 现在我们知道对在 HKEY_CURRENT_USER 下运行的注册表项有写访问权限,将计算器应用程序添加到注册表项中。

    1.2K20

    volatility 各个选项的详解

    转储大分页池 (big page pools) bioskbd:从实施模式内存中读取键盘缓冲数据(早期电脑可以读取出BIOS开机密码) cachedump:获取内存中缓存的域账号的密码哈希...注册表配置单元池扫描 hpakextract:HPAK文件(Fast Dump格式)提取物理内存数据 hpakinfo:查看HPAK文件属性及相关信息 idt:显示中断描述符表...kdbgscan:搜索和转储潜在KDBG值 kpcrscan:搜索和转储潜在KPCR值 ldrmodules:检测未链接的动态链接DLL lsadump:注册表中提取...findstr javaw.exe objtypescan:扫描窗口对象类型对象 patcher:基于页面扫描的补丁程序内存 poolpeek:可配置的池扫描器插件 printkey:打印注册表项及其子项和值...sessions:_MM_SESSION_SPACE的详细信息列表(用户登录会话) shellbags:打印shellbags信息 shimcache:解析应用程序兼容性Shim缓存注册表项

    5K20

    操作系统内存换入-请求调页---14

    ---- 用换入、换出实现“大内存” 当虚拟内存有4G大小,而物理内存只有1G大小的情况下,如何才能让1G大小的物理内存给用户带来4G虚拟内存的使用体验呢?...因此执行完当前load addr指令后,会发现产生了缺页中断 那么随即会去执行缺页处理的中断程序,对应的页错误处理程序,会通过相关算法和数据结构,去磁盘中调度对应缺失的页,并且会在内存中找到一个空闲页,来存放磁盘读取出来的缺失页数据...只能为该进程注册一页新的物理内存,并且读取 // 相应内容到这页物理内存中了。...=1是检查这个page地址对应的物理内存页面 // 是不是已经注册过的页面(用get_free_page函数申请,申请时会再mem_map中 // 注册这个页面,也就是把这个页面对应的mem_map项加...而不能访问内核管理进程所使用的页表本身,也就是用户进程读写不了页表的页表项,但可以读写页表项中指向的物理页面。

    64920

    某远控RCE绕过某数字的利用方式

    所以我还是测试了一个利用白名单绕过360进程防护上线的方式,这里只是给大家提供个思路,其他白名单还请自行测试。...(2) 读取向日葵配置文件 低版本向日葵可直接执行以下命令读取默认安装路径中的config.ini配置文件即可获取ID和Pass,然后再用解密脚本得到明文后直接去连接就好了,那如果是高版本向日葵或自定义安装呢...C:\Progra~1\Oray\SunLogin\SunloginClient\config.ini 因为较高版本的向日葵将ID和Pass写进注册表里了,所以在配置文件中是找不到的,可通过执行以下命令读取对应注册表项获取...如果目标主机的向日葵为自定义路径安装,那么我们该如何得到他的安装路径去读取config配置文件呢?可以使用sc qc命令查询向日葵服务得到安装路径,或者读取向日葵服务对应的注册表项。...0x06 文末总结 首先我们是解决了向日葵利用工具执行命令被360拦截的问题,后边其实大部分测试的都是在向日葵远程命令执行漏洞下如何去绕过360进程防护执行木马、脚本、读注册表、导出SAM、添加管理员等

    1.5K10

    Powershell快速入门(三) 实战应用

    注册表操作 读写注册读取注册表 首先来介绍一下注册表根的简写,例如HKEY_CURRENT_USER的简写就是HKCU,HKEY_LOCAL_MACHINE的简写就是HKLM。...$path = "HKCU:\Control Panel\Desktop" 如果要新建注册表项,可以使用New-Item命令。我们可以使用注册表编辑器regedit来验证项是否创建成功。...Remove-ItemProperty -path $path\hellokey -name Fake 如果要删除整个注册表项,使用Remove-Item命令。...Remove-Item -path $path\hellokey -Recurse 获取当前.NET版本 下面的参考资料中列出了一个MSDN上的文档,告诉我们如何读取注册表的值来判断当前安装了.NET...$workbook.SaveAs("D:\Desktop\hello.xlsx") 操作数据 前面只说了打开和关闭操作,下面来看看如何具体读取和写入数据。

    3.8K101

    虚拟内存 & IO & 零拷贝

    这里我们基于一个例子来分析当分析当页面命中时,计算机各个硬件是如何交互的: 第 1 步:处理器生成一个虚拟地址 VA,通过总线发送到 MMU; 第 2 步:MMU 通过虚拟页号得到页表项的地址 PTEA...,通过内存总线 CPU 高速缓存/主存读取这个页表项 PTE; 第 3 步:CPU 高速缓存或者主存通过内存总线向 MMU 返回页表项 PTE; 第 4 步:MMU 先把页表项中的物理页框号 PPN...如何用户空间进入内核空间? 其实所有的系统资源管理都是在内核空间中完成的。比如读写磁盘文件,分配回收内存,网络接口读写数据等等。我们的应用程序是无法直接进行这样的操作的。...其实就是通过一个特殊的指令让进程用户态进入到内核态(到了内核空间),在内核空间中,CPU 可以执行任何的指令,当然也包括磁盘上读取数据。...简单说就是应用程序把高科技的事情(磁盘读取文件)外包给了系统内核,系统内核做这些事情既专业又高效。

    2K20

    Scheduled-Task-Tampering

    基本介绍 微软最近发表了一篇文章,记录了HAFNIUM威胁参与者如何利用计划任务存储在注册表中的缺陷来隐藏它们的存在,这清楚地表明所呈现的漏洞很可能不是影响计划任务组件的唯一缺陷,我们开始研究如何滥用计划任务的注册表结构来实现各种目标...,例如:横向移动和持久性 具体来说我们调查了创建任务的最低条件是什么,而不通过远程过程调用 (RPC)等经典接口,微软的文章和SpectreOps对Capability的研究都证实所有计划任务最终都会存储在注册表中的以下注册表项下...,而只使用直接的注册表操作,以下部分将探讨如何实现这两个目标及其各自的注意事项,同时了解如何将任务保存在注册表中 任务创建 在没有深入研究负责创建任务的RPC服务器的逆向工程的情况下,我们导出了之前创建的任务的注册表值...,因为任务计划程序启动的所有进程都将具有特定的 svchost 作为父进程 狩猎和检测的角度来看,寻找影响本文中提到的并非源自 svchost 进程的密钥的注册表操作可能是发现执行此攻击的攻击者的好方法...下面的第一张图片显示了 svchost 生成的良性事件: 此图显示了类似的注册表操作,但由reg.exe进程而不是svchost 执行: 不言而喻,攻击者可以轻松生成 svchost 进程或注入现有进程来执行此攻击

    94510

    驱动开发:内核物理内存寻址读写

    在某些时候我们需要读写的进程可能存在虚拟内存保护机制,在该机制下用户的CR3以及MDL读写将直接失效,从而导致无法读取到正确的数据,本章我们将继续研究如何实现物理级别的寻址读写。...该函数通过读取CR3中存储的页表信息,逐级访问页表,直到找到对应的物理地址。 该函数使用虚拟地址的高9位确定页表的索引,然后通过读取对应的页表项,得到下一级页表的物理地址。...需要注意的是,该函数还会进行一些错误处理,例如在读取表项时,如果该项没有被设置为有效,函数将返回0,表示无法访问对应的物理地址。...如下这段代码是Windows驱动程序的入口函数DriverEntry,主要功能是读取指定进程的虚拟地址空间中指定地址处的4个字节数据。...ID为4116的0x401000处的地址数据,并以字节的方式输出前四位,输出效果图如下所示; 写出数据与读取数据基本一致,只是调用方法ReadPhysicalAddress变为了WritePhysicalAddress

    57930

    驱动开发:内核物理内存寻址读写

    在某些时候我们需要读写的进程可能存在虚拟内存保护机制,在该机制下用户的CR3以及MDL读写将直接失效,从而导致无法读取到正确的数据,本章我们将继续研究如何实现物理级别的寻址读写。...该函数通过读取CR3中存储的页表信息,逐级访问页表,直到找到对应的物理地址。该函数使用虚拟地址的高9位确定页表的索引,然后通过读取对应的页表项,得到下一级页表的物理地址。...需要注意的是,该函数还会进行一些错误处理,例如在读取表项时,如果该项没有被设置为有效,函数将返回0,表示无法访问对应的物理地址。...Windows驱动程序的入口函数DriverEntry,主要功能是读取指定进程的虚拟地址空间中指定地址处的4个字节数据。...ID为4116的0x401000处的地址数据,并以字节的方式输出前四位,输出效果图如下所示;图片写出数据与读取数据基本一致,只是调用方法ReadPhysicalAddress变为了WritePhysicalAddress

    57840

    某电商钓鱼事件探索黑客“一站式服务”

    我们发现,其通过自启动注册表项,启动PowerShell执行相应的命令 C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -windowstyle...注册表项的内容,然后通过Base64解码之后执行,另一个注册表项的内容是一串Base64的字符串。 ? 多次解码之后,得到相应的PowerShell源代码。 ?...通过PowerShell脚本,创建一个线程,注入一段ShellCode到远程进程中,执行ShellCode,解密出相应的ShellCode代码。 ?...分配相应的内存空间,黑客服务器上读取相关的恶意程序到内存。 ? 黑客服务器上获取到的文件: ? ShellCode通过反射型DLL注入到进程执行: ?...其通过远程进来之后,网站上下载了一个勒索病毒。 ?

    76930

    如何解决WIN10运行SQL2000安装程序时没有反应的问题

    今天就来和小编一起学习下-如何解决WIN10运行SQL2000安装程序时没有反应的问题的吧!...进程、QQExternal、QQ相关的进程、MicroGameBoxserxice.exe、setupre、ServyouInvoice、工行证书、腾讯视频相关的进程、爱奇艺相关的进程。...二,使用快捷键Windows+R启动运行后输入 Regedit 点击 确定打开注册表,在注册表中找到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/ControlSessionManager...PendingFileRenameOperations并删除,打开HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/ControlSessionManager中找到SafeDllSearchMode将值...1 更改为 0单击确定后退出注册表编辑器(注意 如果 SafeDllSearchMode 注册表项不存在, 右键创建 DWORD注册表项,命名为SafeDllSearchMode ),完成后重新安装 SQL

    58010
    领券