亚洲国产第一_开心网五月色综合亚洲_日本一级特黄特色大片免费观看_久久久久久久久久免观看

Hello! 歡迎來到小浪云!


windows提權系列上篇


滲透測試中,提升權限是一個常見的問題。通常情況下,最容易獲取的權限是通過webshell,特別是當網站部署在windows系統上時。此外,在進行橫向滲透時,如果收集到可以遠程連接桌面的賬號,也需要提升權限。實際操作中,提權是經常需要的,本系列文章將詳細介紹各種提權方式。

提權基礎在進行提權之前,首要任務是對目標系統的操作系統進行信息收集。關于信息收集的具體內容,請參閱之前的文章《Windows環境下的信息收集》。這里簡要提及幾個關鍵命令

溢出提權是提權過程中最常見的方法,但其關鍵在于目標系統的安全補丁更新不及時,這才為攻擊者提供了機會。以下是一些較新的溢出exp示例。

windows提權系列上篇由于運營者的錯誤配置,有時可以為我們提供提權的便利,從而提高提權成功率。下面將簡單介紹這方面的提權方法。

可信任服務路徑漏洞(Trusted Service Paths)是由系統中的“CreateProcess”函數引起的,利用了Windows文件路徑解析的特性,并涉及了服務路徑的文件/文件夾權限。存在缺陷的服務程序利用了屬于可執行文件的文件/文件夾權限。如果權限合適,我們可以上傳惡意可執行文件。簡單來說,就是查找系統服務文件中存在非引用路徑。如果一個服務調用可執行文件時,未正確處理引用的全路徑名,就可以利用這個漏洞。Metasploit集成了trusted_service_path(https://www.php.cn/link/f3af38a9500cfc72614a7cb788e5a56b

Windows服務通常以System權限運行,因此系統在解析服務的二進制文件路徑中的空格時也會以系統權限進行解析。如果我們能利用這一特性,就有機會進行權限提升。例如,有如下文件路徑:

對于上述文件路徑中的每一個空格,Windows都會嘗試尋找并執行名稱與空格前的部分匹配的程序。操作系統會對文件路徑中空格的所有可能進行嘗試,直到找到一個匹配的程序。以上的例子中,Windows會依次嘗試確定和執行以下程序:

因此,如果我們能上傳一個適當命名的惡意可執行程序到受影響的目錄,服務一旦重啟,我們的惡意程序就會以system權限運行(大多數情況下)。

利用步驟如下:

  1. 檢測目標主機是否存在該漏洞

    如果存在以下結果,則表示存在漏洞:

    FABS - Helping agent for MAGIX media database FabsC:Program Files (x86)Common FilesMAGIX ServicesDatabasebinFABS.exe /DisableUI     Auto
  2. 檢查對有漏洞目錄是否有寫入權限。使用Windows內建#%#$#%@%@%$#%$#%#%#$%@_20dce2c6fa909a5cd62526615fe2788aicacls查看路徑中受影響文件夾的權限,(M)代表修改權限,(F)代表完全控制,(CI)代表從屬容器將繼承訪問控制項,(OI)代表從屬文件將繼承訪問控制項。

    windows提權系列上篇

  3. 攻擊。將我們需要執行的exe根據需要重命名并放置在可寫入的有漏洞目錄下,然后運行如下命令嘗試重啟服務,如果失敗的話等待服務器重啟時執行exe,成功提權后記得清理痕跡。

    sc stop service_namesc start service_name

    如果我們的exe會彈回一個SYSTEM權限的meterpreter shell,但是我們新得到的會話很快就中斷了。這是因為當一個服務在Windows系統中啟動后,它必須和服務控制管理器通信。如果沒有通信,服務控制管理器會認為出現了錯誤,并會終止這個進程。我們所有需要做的就是在終止載荷進程之前,將它遷移到其它進程,也可以使用自動遷移set AutoRunScript migrate -f。

系統服務的錯誤權限配置漏洞Windows系統服務文件在操作系統啟動時會加載執行,并且在后臺調用可執行文件。例如,Java升級程序,每次重啟系統時,JAVA升級程序會檢測oracle網站是否有新版JAVA程序。而類似JAVA程序之類的系統服務程序加載時往往都是運行在系統權限上的。因此,如果一個低權限的用戶對于此類系統服務調用的可執行文件具有可寫的權限,就可以將其替換成我們的惡意可執行文件,從而隨著系統啟動服務而獲得系統權限。Metasploit集成了漏洞利用模塊exploit/windows/local/service_permissions。手工測試步驟如下:

  1. 檢查易受攻擊的服務。SERVICE_ALL_access的意思是我們對“Vulnerable Service”的屬性擁有完全控制權。

    #"Authenticated Users"指Windows系統中所有使用用戶名、密碼登錄并通過身份驗證的賬戶,不包括來賓賬戶Guest。也可以使用當前用戶用戶名來列出所以可以被當前用戶修改的服務。#-->RW 360rp#       SERVICE_ALL_ACCESS
  2. 查看可以完全控制的服務的屬性。

    windows提權系列上篇

  3. 修改服務配置執行命令。BINARY_PATH_NAME參數指向了該服務的可執行程序(360rps.exe)路徑。如果我們將這個值修改成任何命令,那意味著這個命令在該服務下一次啟動時,將會以SYSTEM權限運行。

    windows提權系列上篇

    當嘗試啟動服務時,它會返回一個錯誤。這一點我們之前已經討論過了,在Windows系統中,當一個服務在Windows系統中啟動后,它必須和服務控制管理器通信。如果沒有通信,服務控制管理器會認為出現了錯誤,并會終止這個進程。上面的“net user”肯定是無法和服務管理器通信的,但是不用擔心,我們的命令已經以SYSTEM權限運行了,并且成功添加了一個用戶。

  4. 提權成功后修改服務配置,清理痕跡。

不安全的注冊表權限配置在Windows中,與Windows服務有關的信息存儲在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices注冊表項中。以服務360rp為例,服務對應的程序路徑存儲在HKEY_LOCAL_MACHINESYSTEMControlSet001ServicesVulnerable Service360rpImagePath中。如果我們對這一鍵值有寫入權限就可以修改服務對應的程序路徑,讓系統以SYSTEM權限運行我們的程序,從而達到提權的目標。如下所示,我們可以使用SubInACL(https://www.php.cn/link/e44b3e88cae690fa9ceed8c7289da52b subinacl.exe 拷貝到目標機器上運行。

如果我們對注冊表有寫入權限,就可以修改注冊表,使得服務啟動時運行我們的惡意程序:

在下一次啟動該服務時,adduser.exe將會以SYSTEM權限運行。成功提權后記得修改回配置。

不安全的文件/文件夾權限配置可信任服務路徑漏洞產生的原因就是不安全的文件夾權限以及“CreateProcess”函數。如果我們對系統服務對應的應用程序所在文件夾有寫入權限,便可以直接使用惡意程序替換原來的可執行文件,從而完成提權。

任意用戶以NT AUTHORITYSYSTEM權限安裝msiAlwaysInstallElevated是一個策略設置,當在系統中使用Windows Installer安裝任何程序時,該參數允許非特權用戶以system權限運行MSI文件。如果目標系統上啟用了這一設置,我們可以使用msf生成msi文件來以system權限執行任意payload。msf集成了漏洞利用模塊:exploit/windows/local/always_install_elevated。詳細利用步驟如下:

  1. 判斷是否啟用了AlwaysInstallElevated策略。當兩個注冊表鍵值查詢結果均為1時,代表該策略已啟用。

  2. 使用msfvenom生成惡意程序上傳

  3. 運行惡意程序。

    # /quiet    安裝過程中禁止向用戶發送消息# /qn       不使用GUI# /i        安裝程序

計劃任務可以使用如下命令查看計算機上的計劃任務。

使用如下命令可以查看指定目錄的權限配置情況。如果我們對以高權限運行的任務所在目錄具有寫入權限,就可以使用惡意程序覆蓋掉原來的程序。當計劃任務下次執行時,就會以高權限運行惡意程序,進而完成提權。

總結本文作為這個提權系列的上篇,主要講了提權的一些基礎信息,提到了溢出提權、錯誤配置導致的提權等。由于作者尚未完全完成這個系列的所有內容,所以可能有不全的地方,請大家理解,隨后會慢慢放出作者已經完成的部分。

相關閱讀