宗卓然 发表于 2013-12-8 22:31:05

CMD下读取/修改/删除注册表项的方法

先说注册表。很多命令行下访问注册表的工具都是交互式的,溢出产生的shell一般不能再次重定向输入/输出流,所以无法使用
好在系统自带的regedit.exe足够用了。

1,读取注册表
先将想查询的注册表项导出,再用type查看,比如:

C:>regedit /e 1.reg "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp"

C:>type 1.reg | find "PortNumber"
"PortNumber"=dword:00000d3d

C:>del 1.reg

所以终端服务的端口是3389(十六进制d3d)

2,修改/删除注册表项
先echo一个reg文件,然后导入,比如:

echo Windows Registry Editor Version 5.00 >1.reg
echo. >>1.reg
echo >>1.reg
echo "TelnetPort"=dword:00000913 >>1.reg
echo "NTLM"=dword:00000001 >>1.reg
echo. >>1.reg
regedit /s 1.reg

将telnet服务端口改为2323(十六进制913),NTLM认证方式为1。

要删除一个项,在名字前面加减号,比如:

[-HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesServ-U]

要删除一个值,在等号后面用减号,比如:


"KAVRun"=-

3,用inf文件访问注册表
上面对注册表的三个操作,也可以用下面这个inf文件来实现:


Signature="$WINDOWS NT$"

AddReg=My_AddReg_Name
DelReg=My_DelReg_Name

HKLM,SOFTWAREMicrosoftTelnetServer1.0,TelnetPort,0x00010001,2323
HKLM,SOFTWAREMicrosoftTelnetServer1.0,NTLM,0x00010001,1

HKLM,SYSTEMCurrentControlSetServicesServ-U
HKLM,SOFTWAREMicrosoftWindowsCurrentVersionRun,KAVRun

将它写入c:pathreg.inf然后用下面这个命令“安装”:

rundll32.exe setupapi,InstallHinfSection DefaultInstall 128 c:pathreg.inf

几点说明:
1,和是必须的,AddReg和DelReg至少要有一个。My_AddReg_Name和My_DelReg_Name可以自定义。
0x00010001表示REG_DWORD数据类型,0x00000000或省略该项(保留逗号)表示REG_SZ(字符串)。0x00020000表示REG_EXPAND_SZ。
2323也可以用0x913代替。
关于inf文件的详细信息,可以参考DDK帮助文档。
2,InstallHinfSection是大小写敏感的。它和setupapi之间只有一个逗号,没有空格。
128表示给定路径,该参数其他取值及含义参见MSDN。
特别注意,最后一个参数,必须是inf文件的全路径,不要用相对路径。
3,inf文件中的项目都是大小写不敏感的。

步海幻 发表于 2013-12-9 06:16:39

支持,赞一个

那安娴 发表于 2013-12-9 06:16:39

是爷们的娘们的都帮顶!大力支持

全梅英 发表于 2013-12-10 22:53:26

高手云集 果断围观

欧阳彦芝 发表于 2013-12-12 15:05:50

我也顶起出售广告位

富莹琇 发表于 2013-12-12 17:00:02

……

颛孙雪羽 发表于 2013-12-16 07:51:42

LZ敢整点更有创意的不?兄弟们等着围观捏~

王浓绮 发表于 2013-12-20 15:46:23

路过 帮顶 嘿嘿

卫梓琬 发表于 2013-12-21 10:06:39

看起来好像不错的样子

穆野雪 发表于 2013-12-23 17:12:43

路过

阳怡然 发表于 2013-12-31 16:26:04

看起来不错

通菁英 发表于 2024-9-11 21:36:44

LZ是天才,坚定完毕

陶金枝 发表于 2024-10-3 20:49:44

前排顶,很好!

通菁英 发表于 2025-4-15 13:03:05

我擦!我要沙发!

尉迟琴雪 发表于 2025-5-18 15:09:43

我是个凑数的。。。

石依云 发表于 2025-5-19 06:08:19

我擦!我要沙发!

刘吉帆 发表于 2025-6-20 14:58:41

沙发???

郁宜然 发表于 2025-8-8 22:34:03

不错 支持下

闻人逸致 发表于 2025-10-14 08:02:58

有空一起交流一下

於秋芳 发表于 2025-11-23 09:34:12

very good
页: [1]
查看完整版本: CMD下读取/修改/删除注册表项的方法