還記得之前提過的 SMB 嗎?
幫讀者複習一下 SMB 是何方神聖~
SMB(Server Message Block,伺服器訊息區塊)是一種網路通訊協定,主要用於在網路上共享文件、打印機、和串流資料等資源。
SMB 允許多台電腦在同一網路中讀取和寫入遠端檔案,就像訪問本地磁碟一樣!
共享權限適用於當文件夾通過網絡共享時,用於控制網絡上其他用戶對文件夾和文件的訪問。也就是說,當一個文件夾被設為網絡共享,其他用戶通過 SMB(Server Message Block)協議或網絡連接來訪問該文件夾時,共享權限生效。
這裡的權限是相對基礎的,包含以下幾種:
共享權限只在用戶從遠端(通過網絡)訪問共享文件夾時生效。
NTFS 權限是針對文件系統本身的,與共享無關。
NTFS 權限適用於「文件夾或文件在本地或遠端(例如通過遠端桌面連線,RDP)」被訪問時控制用戶的權限。
NTFS 權限更加細緻且提供更精細的控制,如下:
NTFS 權限對本地存取和遠程存取的文件夾或文件都有效。NTFS 權限可以控制更細微的動作,例如允許查看屬性、創建子文件夾、追加數據等。
其實,這兩種權限最大的差異就是:作用範圍不同。
共享權限:只在通過網絡共享訪問文件夾時生效,主要是限制從其他電腦的網絡訪問。
NTFS 權限:無論是本地用戶還是通過遠端桌面、網絡共享訪問文件夾時都有效,且權限控制更細緻。
控制精細度不同:
共享權限:提供相對基礎的控制選項,如“讀取”、“更改”、“完全控制”。
NTFS 權限:提供非常細緻的控制,允許管理文件和文件夾的屬性、讀取、寫入、執行、修改、刪除等。
共同作用:
當用戶通過網絡共享訪問文件夾時,共享權限和 NTFS 權限都會生效。這意味著用戶必須同時通過共享權限和 NTFS 權限的檢查才能成功訪問文件夾。也就是說,即便用戶在共享權限上擁有完全控制權,但如果 NTFS 權限限制了某些操作,則他們仍無法進行這些操作。
今天帶大家用 Linux 系統嘗試連接 Windows 上的 SMB 共享資料夾 ~
xfreerdp /v:<targetIp> /u:htb-student /p:Password
在確認連接後~
讀者可以在想要共享的資料夾上按右鍵,選擇 Properties -> Sharing -> Advanced Sharing ,
接著勾選 Share this folder。
點擊 Permission,確保 Everyone
群組至少擁有 讀取 權限。
使用 smbclient
工具從 Linux 系統測試連接到 Windows 系統的 SMB 共享。
smbclient -L SERVER_IP -U YOUR_USERNAME
SERVER_IP
:目標 Windows 電腦的 IP 地址。
YOUR_USERNAME
:你在 Windows 上的用戶名稱。
輸入密碼後,應該會顯示 Windows 上的可用共享資料夾,類似以下這樣:
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk Remote Admin
C$ Disk Default share
Company Data Disk
IPC$ IPC Remote IPC
接著,就可以找到剛剛創建的共享資料夾,並且輸入密碼後嘗試連接:
smbclient '\\SERVER_IP\YOUR_TARGET_SHARED_FOLDER' -U YOUR_USERNAME
SERVER_IP
:目標 Windows 電腦的 IP 地址。
YOUR_TARGET_SHARED_FOLDER
: 目標的共享資料夾。
YOUR_USERNAME
:你在 Windows 上的用戶名稱。
在 Linux 上,使用 mount 命令將 Windows 共享資料夾掛載到本地文件系統。
sudo mount -t cifs -o username=YOUR_USERNAME,password=YOUR_PASSWORD //SERVER_IP/SHARE_NAME /path/to/mount
-t cifs
:指定檔案系統類型為 CIFS(Common Internet File System),這是用來掛載 Windows 共享的協議。
-o
:後面跟的是一些選項(options),用來指定登錄的用戶名和密碼等參數。
YOUR_USERNAME
:你在 Windows 上的用戶名稱。
YOUR_PASSWORD
:你的 Windows 密碼。
SERVER_IP
:目標 Windows 電腦的 IP 地址。
SHARE_NAME
:你共享的資料夾名稱。
/path/to/mount
:你想要掛載的 Windows 本地目錄。
上述是基本指令的教學,那麼我們可以在實際上怎麼進行測試呢?
首先,可以先看看之前建立的共享資料夾的 Properties:
NTFS 權限提供更細緻的控制,可以應用於用戶和群組。每當我們看到某個權限旁邊有一個灰色的勾選標記時,這表示該權限是從父目錄繼承的。預設情況下,所有 NTFS 權限都是從父目錄繼承的。在 Windows 系統中,C:\ 磁碟是所有目錄的父目錄,除非系統管理員在新建資料夾的進階安全設定中停用繼承。
現在,讀者可以將 Everyone 群組設置為具有共享層級的「完全控制權限」(可以查看之前的截圖,轉換設置),嘗試修改該資料夾的父資料夾為共享的掛載點(修改之前掛載的路徑)。
安裝 cifs-utils
:
sudo apt-get install cifs-utils
完成後,回到 Linux 系統,讀者在指定的掛載目錄中看到 Windows 共享資料夾的內容~
颱風天感覺有點累XD
今天拖到最後一刻才稍微寫了點東西
但感覺明天會再修正稿子~
https://academy.hackthebox.com/