<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    Windows權限維持技巧之隱藏服務

    VSole2021-12-13 07:20:00

    0x01注冊服務

    將后門注冊為windows自啟動服務是常見的后門維持手法,使用命令sc或者powershell命令都可以將自己的后門程序注冊為自啟動服務。

    使用sc命令將后門程序注冊為自啟動服務,并以LocalSystem的身份運行:


    手動啟動服務或重啟計算機,后門執行。雖然手動執行時提示啟動失敗,但實際上后門已經成功執行:

    msf成功建立新會話,查看權限為system

    雖然成功實現了服務自啟動,但是這個權限維持的方法很容易被檢測。因為創建新的服務后可以檢索到這個服務,如果防御者看到名字不熟悉的服務就會懷疑這是惡意的服務。通過sc命令或者get-service命令可以查看該服務的信息。

    使用sc查看指定名字的服務信息狀態:

    或使用sc命令查看服務的配置信息,后門文件直接保留:

    使用powershell中的get-service 也可以查看服務信息

    0x02 隱藏服務

    為了不被防御者發現用于權限維持的服務,可以考慮將服務隱藏。Joshua Wright提供了一種方法,通過SDDL(安全描述符語言)修改服務的安全描述符,文章附在文末的參考文獻中。Windows系統中服務和文件一樣,都使用了安全描述符(SD)配置該安全對象對于哪些訪問對象都允許哪些權限。

    Joshua Wright提供的方法使用sc 命令的sdset模塊可以修改服務的安全描述符,命令如下:

    sc.exe sdset test "D:(D;;DCLCWPDTSD;;;IU)(D;;DCLCWPDTSD;;;SU)(D;;DCLCWPDTSD;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"
    

    再次使用get-service命令查看服務信息,服務不存在

    使用sc.exe查看服務信息拒絕訪問

    使用sc.exe查詢所有服務信息并過濾名為“test”的服務,結果為空

    0x03 原理

    SDDL

    Windows服務支持使用安全描述符定義語言(Security Descriptor Definition Language | SDDL)控制服務權限的功能。通過修改SDDL可以修改對象(文件或者服務)的DACL(自主訪問控制列表),從而修改用戶對對象的訪問控制。通過對服務的SDDL進行編輯,拒絕所有用戶對該服務的讀取權限,即實現服務隱藏的效果。

    SDDL語法:

    符號描述
    
    O: -  Owner
    G: -  Primary Group
    D: -  Discretionary ACL (DACL) 
    S: -  System ACL (SACL) 
    
    ACE 類型描述
    
    A: -  Access Allowed
    D: -  Access Denied
    OA: - Object  Access Allowed
    OD: - Object  Access Denied
    AU: - System Auidt
    AL: - System Alarm
    OU: - System Object Audit
    OL: - System Object Alarm
    ML: - System MAndatory Label
    
    服務相關符號權限
    
    CC:- 服務配置查詢
    LC: - 服務狀態查詢
    SW: - SERVICE_ENUMERATE_DEPENDENTS
    RP: - 服務啟動
    WP: - 服務停止
    DT: - 服務暫停
    DC: - 服務配置更改
    
    SD: - 刪除
    
    繼承標志位
    OI:- 表示該ACE可以被子對象繼承
    CI:- 表示該ACE可以被子容器繼承
    IO:- 僅作用于子對象
    NP:- 僅被直接子容器繼承,不繼續向下繼承
    
    對象
    
    "IU":- 交互登陸用戶
    
    "AU":- 認證用戶
    
    "SU":- 服務登陸用戶
    
    
    
    
    格式(允許/拒絕;繼承;權限列表;;對象)
    

    使用powershell 命令查看文件夾的SSDL:

    get-acl [c:\windows] | fl

    那么分析之前隱藏服務的命令,隱藏服務主要用到的SDDL為:

    D:(D;;DCLCWPDTSD;;;IU)  //拒絕交互登陸用戶的服務配置、查詢、狀態查詢、暫停和刪除權限
    (D;;DCLCWPDTSD;;;SU)    //拒絕登陸用戶的服務配置、查詢、狀態查詢、暫停和刪除權限
    (D;;DCLCWPDTSD;;;BA)    //拒絕認證用戶的服務配置、查詢、狀態查詢、暫停和刪除權限
    

    組策略實現服務隱藏

    在了解了原理之后,發現實際隱藏服務的操作實際是修改服務權限,使服務對所有用戶的查詢等權限拒絕。

    在【組策略管理編輯器->計算機配置->策略->Windows配置->安全設置->系統服務】中同樣可以修改服務的權限

    通過組策略編輯器取消所有用戶對服務DHCP Client 服務的讀取權限


    使用get-service 查看DHCP Client 查看該服務,發現服務不存在

    0x04 防御

    在通過本文的方法隱藏后,下列方法都無法查詢到服務的信息

    PS C:\WINDOWS\system32> Get-Service | Select-Object Name | Select-String -Pattern 'test'
    PS C:\WINDOWS\system32> Get-WmiObject Win32_Service | Select-String -Pattern 'test'
    PS C:\WINDOWS\system32>sc.exe query | Select-String -Pattern 'test'
    

    如果事先知道服務的名稱并擁有服務停止權限,使用Get-Service停止服務會提示無法打開

    如果服務不存在,則停止服務時會提示服務不存在

    或使用sc查詢服務信息,會提示沒有權限


    但是使用sc查詢服務配置信息可以查到,因為沒有拒絕用戶的服務配置查詢權限

    上述方法還拒絕了停止權限,因此無法停止,但依然會提示與服務相關的信息

    所以為了更好的隱藏服務信息,可以對上述方法的SDDL進行更改,增加查詢服務配置信息拒絕項(CC):

    sc.exe sdset test "D:(D;;DCLCWPDTSDCC;;;IU)(D;;DCLCWPDTSDCC;;;SU)(D;;DCLCWPDTSDCC;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"
    

    0x05 還原

    通過刪除拒絕相關的SDDL語句,即可讓服務正常被查詢

    & $env:SystemRoot\System32\sc.exe sdset auto_calc "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"
    

    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    將后門注冊為windows自啟動服務是常見的后門維持手法,使用命令sc或者powershell命令都可以將自己的后門程序注冊為自啟動服務。 使用sc命令將后門程序注冊為自啟動服務,并以LocalSystem的身份運行:
    紅隊小技巧
    2022-07-12 07:01:57
    前言 有一段時間沒有寫文章了,也不知寫什么,畢竟從攻擊方換成防守方,乙方換到甲方,還有些許不適應。。。此外,本文為口嗨文,基本在說思路,沒有實操。其實釣魚的話可以配合弱口令去后臺看看能不能改一些
    信息搜集:開源情報信息收集、創建企業密碼字典進入內網:基于企業弱賬號漏洞、基于系統漏洞進入、網站應用程序滲透隱匿攻擊:Command and Control、代理內網跨邊界應用:內網跨邊界轉發、內網跨邊界代理穿透、shell反彈等
    本文主要以簡單、直接的代碼方式向讀者呈現了一些權限維持的功能代碼方面的小技巧。這些小技巧也許很多人(Ex:myself)不知道,但又有可能對此實現有所需要。為了解決這個問題,筆者通過瀏覽一些資料結合自己的實踐,初步整理出這三個功能小技巧,后續可用于穿插于Window權限維持的具體實現程序。
    docker run -it -d -p 13443:3443 -p 8834:8834 leishianquan/awvs-nessus:v1. 如XSS,XSRF,sql注入,代碼執行,命令執行,越權訪問,目錄讀取,任意文件讀取,下載,文件包含,遠程命令執行,弱口令,上傳,編輯器漏洞,暴力破解等驗證碼與郵箱以及token的返回泄露,以及后臺為校驗從而可刪除的參數。從某個成功請求中捕獲數據包觀察cookie或者token是否存在規律或加密。token的key參數解密構建獲取真實user密鑰,可拼接、規律、時間戳……winodws桌面:TeamViewerQS單文件windows下載文件;certutil -urlcache -split -f?
    如果手工測試無果后再用代理手法掃描網站,必要的時候設置二級代理。什么站能掃什么站不能掃,心里一定要有點 b 數!淺藍的滲透測試導圖以及小工具這里有一個更加詳細的導圖,可以做一個大致的方向參考,跟著方向逐一測試, 期間也可以鞏固基礎。
    linux常見backdoor技術
    2021-09-02 07:33:03
    最近遇到一些和后門相關的技術,所以把之前linux backdoor相關筆記重新學習和整理了一下。在這里做一下記錄,后續有時間整理一下windows backdoor方面的技術。 在服務器被入侵后進行應急響應無非通過文件排查、網絡排查、進程排查、系統信息排查等方法進行入侵排查。下面就一些常見留后門技巧以及公開的工具進行剖析介紹。
    一個內網安全攻防的知識倉庫
    隨著網絡空間博弈發展和國際局勢的加劇,組織性復雜、計劃性高效和針對性明確的網絡攻擊活動更趨常態化,高級持續性威脅(APT)攻擊已成為網絡空間突出風險源。APT 的政治化、軍事化、武器化、組織化、隱匿化趨勢日益明顯,與政府部門進一步深度綁定,“雇傭兵”性質更為凸顯,零日漏洞、供應鏈入侵等高水平滲透手段的利用呈現常態化的特征。在大國博弈的背景下,APT 攻防較量更趨復雜,針對APT 事件的調查與響應呈
    虛擬蜜罐通常會模擬出真實的操作系統,并將其部屬在一臺宿主主機上。一是IP地址的空間欺騙。第四個是組織信息欺騙。UML是一個Linux內核的體系結構端口,系統內稱為接口。UML的塊設備,也稱為磁盤,通常是主機文件系統上的文件,不會影響存儲正常數據的本地塊設備。相對于其他虛擬蜜罐解決方案,Argos不只是執行客戶虛擬機,同時還密切監測蜜罐,試圖及時發現攻擊者成功攻陷蜜罐的切入點。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类