注册表是windows管理配置系统运行参数的一个核心数据库。...1.读取 读取用的方法是OpenKey方法:打开特定的key winreg.OpenKey(key,sub_key,res=0,sam=KEY_READ) 例子:此例子是显示了本机网络配置的一些注册表项.../usr/bin/env python #coding=utf-8 import winreg key=winreg.OpenKey(_winreg.HKEY_CURRENT_USER,r"Software...权限问题 写完的Python脚本必须用管理员权限运行,才能对注册表进行写操作。...python2的, 自己写代码的时候总是搞不正确的包, 然后用 pip search winreg 结果是: winreg-helpers (0.1.1) - Helper functions for
Python中可以使用winreg模块中的DeleteKey方法来删除注册表中的键,但该方法不能删除包含子键的键。...所以,在删除某个键时要先删除它的所有子键,这里借助栈结构通过循环迭代的方式来获取注册表键的所有子键及子键的子键。...""" # 注册表键不存在子键错误码 # https://bugs.python.org/file7326/winerror.py _ERROR_NO_MORE_ITEMS =...if key: key.Close() def del_registry_key(self): """删除注册表中的键"""...# 迭代获取键的所有子键及子键的子键 while len(self.
从注册表中提取你连接过的无线网络的MAC,然后根据MAC获取你去过的地址 !.../usr/bin/python coding=utf-8 from _winreg import * import mechanize import urllib import re import...urlparse import os import optparse 将REG_BINARY值转换成一个实际的Mac地址 def val2addr(val): addr = "" for ch...macAddr wiglePrint(username, password, macAddr) CloseKey(netKey) except: break 通过wigle查找Mac地址对应的经纬度
在Windows系统中,注册表本质上就是一个数据库,其中存放着硬件、软件、用户、操作系统以及程序相关设置信息。...我们除了使用regedit,也可以通过编程读取并操作系统注册表,以下以Python3为例。...一、访问注册表 具体代码如下,可访问用户账户列表: 该设置位于HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList...获取键名 subKeyName = EnumKey(keyHandle, i) subDir_2 = r'%s\%s' % (subDir, subKeyName) # 4.根据获取的键名拼接之前的路径作为参数...,从而间接获取用户账户信息: 二、修改注册表数据 以下以修改注册表中防火墙的公网和家用网络的开启和关闭为例。
netKey) except Exception ,e: print e pass def main(): printNets() if name=='main': main() 通过无线网络的MAC
如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
VBA语言本身实现了3个操作注册表的函数,这几个函数使用比较简单,适合保存一些简单的配置信息: ?...这3个函数固定只能操作的注册表路径是: HKEY_CURRENT_USER\Software\VB and VBA Program Settings 写一个简单的测试语句: VBA.SaveSetting...2、GetAllSettings GetAllSettings函数能够返回注册表的数据信息 ,有数据的情况下,返回的是一个二维数组,没有找到信息的时候返回Empty。 ?...因为这3个函数能操作的注册表路径固定了,所以在VBA里用起来就比较的简单,当然这也同时让这个3个函数有了很大的限制。...如果需要操作其他路径的注册表信息,可以使用WScript.Shell,可以看看在VBA CreateObject函数如何找到所需要的依赖文件中提到的用法。
目录 注册表 注册表结构 reg 增 删 改 查 注册表 Windows注册表就相当于Windows系统的数据库,系统和软件的配置信息放在注册表里面。如果注册表出现了问题,可能导致系统崩溃。...我们平时是使用 regedit.exe 命令来使用图形化界面管理注册表的。而在很多时候,使用图形化界面管理注册表很麻烦。所以今天介绍一种使用纯命令行的工具(reg.exe)来管理注册表。...注册表结构 注册表有四个关键术语:键、值、值类型、数据 值的类型有六种,分别为: REG_BINARY REG_DWORD REG_EXPAND_SZ REG_MULTI_SZ REG_QWORD REG_SZ...可以查看reg的帮助。如果使用reg对注册表进行增删改查的话,需要管理员权限。.../v 后面跟需要创建的值的名称,/t 后面是值的类型,/d 后面是这个值的数据,/f 是强制不提示 reg add hkcu\test /v hello /t REG_SZ /d "this is test
.NET Core 读写Windows注册表 - 云+社区 - 腾讯云 https://cloud.tencent.com/developer/article/1459559 是的,你没看错!...即使 .NET Core 被设计为跨平台,但这并不意味着无法使用特定于平台的API。以 Windows 注册表为例,尽管.NET Standard 不能包含这样的API。...但是,仍有一种办法可以在.NET Core 应用程序中使用 Windows 注册表。...但首先,你必须清楚,使用特定于平台的 API (如 Windows 注册包) 将使您的应用程序或这部分代码 只能跑在Windows上。 检查平台 我们知道这样的代码只能跑在Windows下。...所以在常规实践里,我们需要判断当前操作系统的类型,以免两行泪。
0x00 前言 知名恶意软件Poweliks曾使用过的一个后门技术,在注册表启动位置创建一个特殊的注册表键值,通过mshta来执行payload 对于这个特殊的注册表键值,在正常情况下无法对其访问,这其中的原理是什么呢...本文将要一一介绍 0x01 简介 本文将要介绍以下内容: ·隐藏注册表的原理 ·隐藏注册表的实现 ·程序编写上需要注意的问题 0x02 原理 注册表键值名称经过特殊构造: 以”\0”作为开头,后面加上任意字符...、删除隐藏注册表键值,思路如下: 对于注册表项的隐藏,在注册表项的名称首位填”\0”即可 对应注册表键值的隐藏,原理上也是在键值的名称首位填”\0”,但在参数传递上需要注意更多问题 1.不需要修改的功能...创建注册表键、打开注册表键和删除注册表键的功能不需要修改,使用正常的名称即可 2.设置注册表键值 对应源代码中的MySetHiddenValueKey 传入参数使用char型数组,,用来定义注册表键值名称...参照2,需要注意”\0”的影响 4、删除注册表键值 对应源代码中的MyDeleteHiddenValueKey 参照2,需要注意”\0”的影响 实际测试: 创建注册表项test2,创建隐藏注册表键值\
它一直在不断发展,引入了新功能,例如横向移动、泄露电子邮件和浏览器数据的能力,以及安装其他恶意软件的能力。一项新技能是将加密数据插入注册表。...我们从 Trustwave 的 DFIR 和全球威胁运营团队收到的请求之一是让我们解密 Qakbot 创建的注册表数据。我们适时地投入到这项任务中,并且,因为它有点有趣,所以决定写博客。...Qakbot 创建的加密注册表项示例 那里只有一些关于 Qakbot 的详细分析,但在其中我们并没有真正找到有关如何解密这些注册表项的任何技术细节。...Qakbot 的注册表数据解密流程。...解密注册表: 为了确定它将解密哪个特定的注册表键值名称,将 ID 和 DERIVED_KEY 连接在一起并使用 CRC32_shift4 算法进行散列以获得注册表值名称。
修改注册表 static void Register(string filePath) { if (!...register.SetValue(null, "\"" + filePath + "\" \"%1\""); } } 管理权限启动程序,否则注册表的修改无效
近来由于需要在自己写的程序中对注册表进行操作。...; //欲打开注册表项的地址 TCHAR *KeyName; //欲设置项的名字 TCHAR *ValueName; //欲设置值的名称 LPBYTE SetContent_S; //字符串类型...handler code here RootKey=HKEY_CURRENT_USER; //注册表主键名称 SubKey="Software//Microsoft"; //欲打开注册表值的地址...here RootKey=HKEY_CURRENT_USER; //注册表主键名称 SubKey="Software//Microsoft"; //欲打开注册表值的地址 ValueName...; 参考推荐: 对注册表进行简单的操作 如何在VC++中使用注册表
通过命令删除: sc delete ServiceName 通过修改注册表直接删除 1 运行-->regedit 打开注册表 2 在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet...\Services 中删除相应的键值
AutoCAD注册表路径 '2000中文版 HKEY_LOCAL_MACHINE\SOFTWARE\Autodesk\AutoCAD\R14.0\ACAD-1:804 '2002中文版 HKEY_LOCAL_MACHINE
上一篇博文中主要介绍了Reactos中大部分函数的思路和HKEY和HANDLE之间的关系,本文将介绍一些Reactos中有意思的函数和存在bug的函数。...假如你是这个函数的实现者,你要思考这个函数的实现思路。...这个方法的优点是简单。但是Reactos实现的思路却不是这样的。我列一下我改写的该函数。...PWCHAR Ptr = NULL; ULONG Disposition = 0; // 通过将\\改成结尾符,逐个去掉最后一个键名,查看什么路径的注册表键存在...如果不是返回STATUS_OBJECT_NAME_NOT_FOUND,则说明要创建的路径上的键的父键是存在的,直接返回创建的结果;否则说明父键就不存在,得依赖之后的步骤将父键创建起来。
要做注册表沙箱,就必须要了解部分注册表知识。而注册表的知识很多,本文主要讲述如何在win32系统是上识别注册表映射的。 ...在我的xp 32bit系统上,Win+R regedit之后打开注册表管理器。...如果关注过注册表的同学可能发现过一个现象:修改HKEY_CURRENT_USER下某键项值为A,搜索A,可以搜索到1~3个结果,不仅值相同,其项的父键名等都一样。这种被“同步”的功能是不是很有意思。...如果Hook过NtOpenKey的同学可能发现过一个现象,我们参数中的注册表路径往往是\Registry\User\……或者\Registry\Machine\……的形式,而没有见过其他形式的路径。...HKEY_CLASSES_ROOT 和HKEY_CURRENT_CONFIG对应的注册表也是很固定的,分别是\Registry\Machine\SOFTWARE\Classes和\Registry\Machine
,该函数根据传入的KEY_INFORMATION_CLASS不同而查询该项不同结构体的数据。...RegEnumKeyEx要获取的信息中是可以通过是否为NULL来定的,如果你不想获取Class的信息,可以将lpClass和lpcClass指定为NULL。那么Reactos中如何实现的呢?...我们写的API,往往会接受调用方传入的一些数据。如果这个数据是个很大的且没有固定结构的数据时,那么就要非常注意这个空间的大小了。...是的,Reactos对RegEnumKey的实现则是利用用户传入的空间大小,而没有用其传入的空间,这样一旦空间过小,会快速发现,而不用等数据都查完了才发现用户传入的空间太小。...但是现在存在一个问题,如果用户传入的空间大小特别大,实际用不到这么大的数据,那怎么办?难道我们也要听从用户分配一个巨大的内存空间么?
因为RegXX系列函数在底层使用了NtXX系列函数,如果在注入DLL执行Hook后的逻辑中使用了RegXX系列函数,将会导致递归调用的问题,就让程序产生“蛋生鸡,鸡生蛋”这样的“思考”,可是程序不知道停止...于是使用Nt函数实现我们曾经习惯使用的RegXX函数是必要的。(转载请指明出处) 编写这块代码时,我参考了reactos注册表相关的源码。...它的源码写的很好,但是也存在一定的漏洞,我会在之后介绍。 ...因为我们Hook的是Nt式函数,我们在函数中可以获取键对应的HANDLE,而不会得到HKEY。于是我们关心的是HKEY和HANDLE转换的过程。...如果是以上主键,这些主键的后28位是一个数组的Index,该数组保存的其对应的HANDLE。
5、使用双因子验证策略 二、账号/密码可枚举 [高危] 漏洞描述:由于页面对输入的账号、密码判断的回显不一样,攻击者可以通过回显差异进行用户名的枚举,拿到账户名来进行弱口令的爆破。 ?...六、注册表单之批量注册 ? 正确的信息注册 response:{"content":"/User","type":1,"data":null} ?...对手机号进行批量遍历,发现批量成功,存在批量注册漏洞 七、注册表单之覆盖注册 漏洞详情:此漏洞是指以前已经用一个手机注册了会员,由于此漏洞的存在,导致可以利用该手机号重复注册,并且会覆盖之前注册的会员信息...还有一种非常常见的代码实现思路,更新session的工作是通过重新下载验证码达到的,开发人员最容易犯的一个失误就是把更新session的任务交给客户端浏览器来完成。...Q4 验证码太弱 通常出现逻辑错误的验证码,同样存在太弱的通病,使用开源的tessertact OCR引擎,不经任何训练,不人工去噪处理,能识别互联网上的大部分验证码!
领取专属 10元无门槛券
手把手带您无忧上云