您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“如何利用PowerUpSQL攻擊SQL Server實例”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何利用PowerUpSQL攻擊SQL Server實例”這篇文章吧。
默認密碼仍然是我們在內網滲透測試中碰到的最大的問題之一。Web應用尤其容易忽視這一問題,但是用自己的SQL Server實例布置的第三方應用還可以被瀏覽。Rob Fuller在PWNWiki建立一個默認SQL Server實例密碼列表。我們也會追蹤我們自己的列表,所以為了實現測試流程的自動化,我把他們放在一起,并用PowerShell把他們包裹起來。
這個高級進程是很簡單的:
創建一個列表,這個列表內容是應用程序特定的SQLServer實例名和與這個實例關聯的默認用戶名/密碼;
通過LDAP查詢,掃描活動,或其他方式,識別SQL實例。
用發現的實例名稱交叉引用默認實例名稱的列表。
嘗試登陸用關聯的默認證書匹配的SQL Server實例。
PowerUpSQL可以用很多不同的方式在PowerShell中加載。下面就是一個展示如何從GitHub中下載模塊和導入模塊的基本示例:
IEX(New-Object System.Net.WebClient).DownloadString("https://raw.githubusercontent.com/NetSPI/PowerUpSQL/master/PowerUpSQL.ps1")
想要了解更多基礎選項請看:https://github.com/NetSPI/PowerUpSQL/wiki/Setting-Up-PowerUpSQL.
同樣,想要下載更多內容請看Matthew Green的博客:https://mgreen27.github.io/posts/2018/04/02/DownloadCradle.html.
您在加載PowerUpSQL之后,您可以通過運行下面的命令來發現在您當前廣播域之內的SQL Server實例。
Get-SQLInstanceBroadcast -Verbose
如您所見,這個命令在你的本地網絡為你提供一列SQL Server實例。為了分辨哪一個SQL實例用默認密碼設置,您可以將“Get-SQLInstanceBroadcast”傳遞給“Get-SQLServerLoginDefaultPw”,正如下所示。
Get-SQLInstanceBroadcast -Verbose | Get-SQLServerLoginDefaultPw –Verbose
如果你有域名證書,或已經在一個域名系統上運行,你也可以通過LDAP查詢現用目錄,為了一系列注冊的SQLServer 通過如下命令。這也可以從一個非域系統通過使用來自PowerUpSQL Discovery Cheatsheet的語法執行。
Get-SQLInstanceDomain -Verbose
正如最后一個例子所示,你只需要把“Get-SQLInstanceDomain”傳送至“Get-SQLServerLoginDefaultPw” 就可以識別那些注冊在默認密碼設置的域中的SQL Server實例。
Get-SQLInstanceDomain -Verbose |Get-SQLServerLoginDefaultPw -Verbose
PowerUpSQL支持的SQLServer實例發現功能的完整列表已經被列在下面:
Function Name | Description |
---|---|
Get-SQLInstanceFile | Returns SQL Server instances from a file. One per line. |
Get-SQLInstanceLocal | Returns SQL Server instances from the local system based on a registry search. |
Get-SQLInstanceDomain | Returns a list of SQL Server instances discovered by querying a domain controller for systems with registered MSSQL service principal names. The function will default to the current user’s domain and logon server, but an alternative domain controller can be provided. UDP scanning of management servers is optional. |
Get-SQLInstanceScanUDP | Returns SQL Server instances from UDP scan results. |
Get-SQLInstanceScanUDPThreaded | Returns SQL Server instances from UDP scan results and supports threading. |
Get-SQLInstanceBroadcast | Returns SQL Server instances on the local network by sending a UDP request to the broadcast address of the subnet and parsing responses. |
我還想指出,一個稱為“Find-DbaInstance”的DBATools函數可以用于blind SQL Server實例發現。它實際上比PowerUpSQL提供更多的發現選項。Chrissy LeMaire已經寫了一個很好的概述可以在https://dbatools.io/find-sql-instances/上找到。
通常Get-SQLServerLoginDefaultPw函數包含41個應用程序特定的默認SQL Server實例,用戶和密碼。我故意沒有包含以SQL Express或MSSQLSERVER命名的實例,因為我想避開賬戶鎖定。唯一一次登陸嘗試是在這里有一個與應用程序部署匹配的實例。對于那些好奇的人來說,下面提供了應用程序特定實例的當前列表:
ACS | CODEPAL | MYMOVIES | RTCLOCAL | vocollect |
---|---|---|---|---|
ACT7 | CODEPAL08 | ECC | SALESLOGIX | VSDOTNET |
AOM2 | CounterPoint | ECOPYDB | SIDEXIS_SQL | |
ARIS | CSSQL05 | ECOPYDB | SQL2K5 | |
AutodeskVault | CADSQL | Emerson2012 | STANDARDDEV2014 | |
BOSCHSQL | DHLEASYSHIP | HDPS | PCAMERICA | |
BPASERVER9 | DPM | HPDSS | PRISM | |
CDRDICOM | DVTEL | INSERTGT | TEW_SQLEXPRESS | |
VSQL | EASYSHIP | INTRAVET | RMSQLDATA |
以上是“如何利用PowerUpSQL攻擊SQL Server實例”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。