[永恆之黑]CVE-2020-0796(漏洞復現)

一隻萌萌的魚發表於2020-12-30

實驗環境:

  靶機:windows10 1903 專業版

   攻擊機:kali 2020.3

   VMware:vmware14

 

實驗工具:

  Python 3.8.5

    msfconsole

 

實驗PROC:

  靶機映象:ed2k://|file|cn_windows_10_business_editions_version_1903_x64_dvd_e001dd2c.iso|4815527936|47D4C57E638DF8BF74C59261E2CE702D|/

    檢測漏洞poc:https://github.com/ollypwn/SMBGhost

    藍屏proc:https://github.com/chompie1337/SMBGhost_RCE_PoC

 

實驗前提:

  靶機關閉防火牆

  靶機安裝完畢後注意建立快照

  pip安裝netaddr模組

 

漏洞簡單形成介紹:

  該漏洞是Windows10在處理SMB 3.1.1協議的壓縮訊息時,對頭部資料沒有做任何安全檢查,直接使用,從而引發記憶體破壞漏洞,達到任意命令執行。

 

漏洞攻擊目標:

  漏洞主要攻擊埠為445,但也會有其他觸發方式如,構造惡意的SMB伺服器並通過網頁、壓縮包、共享目錄、OFFICE文件等多種方式傳遞給目標使用者

       當使用者開啟惡意檔案,無需開啟445埠就可以觸發漏洞

 

漏洞影響版本:

  通過此漏洞獲取到的許可權為系統最高許可權

  不影響win7,影響Windows 10 1903之後的各個32位、64位版Windows,包括家用版、專業版、企業版、教育版。
  Windows 10 Version 1903 for 32-bit Systems
  Windows 10 Version 1903 for x64-based Systems
  Windows 10 Version 1903 for ARM64-based Systems
  Windows Server, Version 1903 (Server Core installation)
  Windows 10 Version 1909 for 32-bit Systems
  Windows 10 Version 1909 for x64-based Systems
  Windows 10 Version 1909 for ARM64-based Systems
  Windows Server, Version 1909 (Server Core installation)

 

漏洞復現:

  首先判斷是否存在漏洞

  

  開啟SMBGhost,利用scanner.py檢測是否存在漏洞

  CMD輸入命令 python.exe scanner.py 192.168.1.140

  

  出現 Vulnerable 則表示成功

 

  開啟SMBGhost_RCE_PoC資料夾通過exploit.py檔案進行藍屏攻擊

  

  輸入命令 python.exe exploit.py -ip [IP]

  出現以下回顯表示攻擊成功

   

   如果沒有成功可以進行多次嘗試

  多次失敗可以嘗試恢復快照

  

  接著返回虛擬機器發現已經藍屏

  

 

  靶機恢復快照

  獲取shell攻擊

  嘗試使用exp反彈shell,開啟kali虛擬機器

  通過msfvenom命令生成payload

  

 

 

   執行完畢後會在當前工作目錄下生成exploit檔案

  通過cat檢視檔案可以看到裡面是定義了一個名為buf的變數並把payload賦值給buf

  

 

  開啟github下載的PROC資料夾

  並把exploit.py檔案裡面USER_PAYLOAD的值替換為buf值

  kali進入msf輸入命令

  注意: lport 要和msfvenom生成的payload保持一致

  

  use exploit/multi/handler
  set payload windows/x64/meterpreter/bind_tcp
  set lport 8888
  set rhost 192.168.1.140
  run

 

  啟動監聽,並等待再次攻擊

  之後再次執行替換過buf的exploit

  如果不成功可以多次嘗試或恢復快照

  

  執行成功後返回kali

  可以看到攻擊成功

  

 

防禦手段:

 

  打補丁:

    https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2020-0796 (windows官方補丁)

 

  禁用SMBv3壓縮:

    禁用SMB 3.0的壓縮功能,是否使用需要結合自己業務進行判斷。
    使用以下PowerShell命令禁用壓縮功能,以阻止未經身份驗證的攻擊者利用SMBv3 伺服器的漏洞。
    Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” DisableCompression -Type DWORD -Value 1 -Force
    使用者可通過以下PowerShell命令撤銷禁用壓縮功能
    Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” DisableCompression -Type DWORD -Value 0 -Force
    注:利用以上命令進行更改後,無需重啟即可生效;該方法僅可用來防護針對SMB伺服器(SMB SERVER)的攻擊,無法對SMB客戶端(SMB Client)進行防護。

 

  設定防火牆策略關閉相關埠:

    SMB的TCP 445埠
    NetBIOS名稱解析的UDP 137埠
    NetBIOS資料圖服務的UDP 138埠
    NetBIOS會話服務的TCP 139埠

 

  通過IP安全策略遮蔽危險埠,bat執行新增防火牆策略,關閉危險服務:

    http://www.piis.cn/news/new1614.asp

 

總結:

  這次實驗參考的比較多

  https://blog.csdn.net/weixin_45006525/article/details/106553519 (主要攻擊手段參考及資料下載

  https://guanjia.qq.com/avast/984/index.html         (漏洞版本參考

  https://s.tencent.com/research/bsafe/912.html        (漏洞基本訊息參考

  https://www.cnblogs.com/kbhome/p/13073746.html       (防禦手段參考

  攻擊整體思路,通過445埠進行攻擊,利用proc和msf攻擊靶機並反彈shell,kali監聽反彈的shell(注意反彈監聽的shell要一致)

相關文章