Windows區域網滲透(IPC 管道)

2021-08-22 16:40:32 字數 4927 閱讀 2220

黑客技術——ipc$命令所使用的埠

首先我們來了解一些基礎知識:

1 smb:(server message block) windows協議族,用於檔案列印共享的服務;

2 nbt:(netbios over tcp/ip)使用137(udp)138(udp)139(tcp)埠實現基於tcp/ip協議的netbios網路互聯。

3 在windowsnt中smb基於nbt實現,即使用139(tcp)埠;而在windows2000中,smb除了基於nbt實現,還可以直接通過445埠實現。

有了這些基礎知識,我們就可以進一步來討論訪問網路共享對埠的選擇了:

對於win2000客戶端(發起端)來說:

1 如果在允許nbt的情況下連線伺服器時,客戶端會同時嘗試訪問139和445埠,如果445埠有響應,那麼就傳送rst包給139埠斷開連線,用455埠進行會話,當445埠無響應時,才使用139埠,如果兩個埠都沒有響應,則會話失敗;

2 如果在禁止nbt的情況下連線伺服器時,那麼客戶端只會嘗試訪問445埠,如果445埠無響應,那麼會話失敗。

對於win2000伺服器端來說:

1 如果允許nbt, 那麼udp埠137, 138, tcp 埠 139, 445將開放(listening);

2 如果禁止nbt,那麼只有445埠開放。

我們建立的ipc$會話對埠的選擇同樣遵守以上原則。顯而易見,如果遠端伺服器沒有監聽139或445埠,ipc$會話是無法建立的。

黑客技術——ipc管道在黑客攻擊中的意義

ipc管道本來是微軟為了方便管理員進行遠端管理而設計的,但在入侵者看來,開放ipc管道的主機似乎更容易得手。通過ipc管道,我們可以遠端呼叫一些系統函式(大多通過工具實現,但需要相應的許可權),這往往是入侵成敗的關鍵。如果不考慮這些,僅從傳送檔案這一方面,ipc管道已經給了入侵者莫大的支援,甚至已經成為了最重要的傳輸手段,因此你總能在各大論壇上看到一些朋友因為打不開目標機器的ipc管道而一籌莫展大呼救命。當然,我們也不能忽視許可權在ipc管道中扮演的重要角色,想必你一定品嚐過空會話的尷尬,沒有許可權,開啟管道我們也無可奈何。但入侵者一旦獲得了管理員的許可權,那麼ipc管道這把雙刃劍將顯示出它猙獰的一面。

黑客技術——ipc$連線失敗的常見原因

以下是一些常見的導致ipc$連線失敗的原因:

1 ipc連線是windows nt及以上系統中特有的功能,由於其需要用到windows nt中很多dll函式,所以不能在windows 9.x/me系統中執行,也就是說只有nt/2000/xp才可以相互建立ipc$連線,98/me是不能建立ipc$連線的;

2 如果想成功的建立乙個ipc$連線,就需要響應方開啟ipc$共享,即使是空連線也是這樣,如果響應方關閉了ipc$共享,將不能建立連線;

4 響應方未啟動lanmanserver服務(顯示名為:server):它提供了 rpc 支援、檔案、列印以及命名管道共享,ipc$依賴於此服務,沒有它主機將無法響應發起方的連線請求,不過沒有它仍可發起ipc$連線;

5 響應方未啟動netlogon,它支援網路上計算機 pass-through 帳戶登入身份(不過這種情況好像不多);

6 響應方的139,445埠未處於監聽狀態或被防火牆遮蔽;

7 連線發起方未開啟139,445埠;

8 使用者名稱或者密碼錯誤:如果發生這樣的錯誤,系統將給你類似於'無法更新密碼'這樣的錯誤提示(顯然空會話排除這種錯誤);

9 命令輸入錯誤:可能多了或少了空格,當使用者名稱和密碼中不包含空格時兩邊的雙引號可以省略,如果密碼為空,可以直接輸入兩個引號""即可;

10 如果在已經建立好連線的情況下對方重啟計算機,那麼ipc$連線將會自動斷開,需要重新建立連線。 

另外,你也可以根據返回的錯誤號分析原因: 

錯誤號5,拒絕訪問:很可能你使用的使用者不是管理員許可權的; 

錯誤號51,windows無法找到網路路徑:網路有問題; 

錯誤號67,找不到網路名:你的lanmanworkstation服務未啟動或者目標刪除了ipc$; 

錯誤號1219,提供的憑據與已存在的憑據集衝突:你已經和對方建立了乙個ipc$,請刪除再連; 

錯誤號1326,未知的使用者名稱或錯誤密碼:原因很明顯了; 

錯誤號1792,試圖登入,但是網路登入服務沒有啟動:目標netlogon服務未啟動;

錯誤號2242,此使用者的密碼已經過期:目標有帳號策略,強制定期要求更改密碼。 

黑客技術——複製檔案失敗的原因

有些朋友雖然成功的建立了ipc$連線,但在copy時卻遇到了這樣那樣的麻煩,無法複製成功,那麼導致複製失敗的常見原因又有哪些呢?

1 對方未開啟共享資料夾

這類錯誤出現的最多,佔到50%以上。許多朋友在ipc$連線建立成功後,甚至都不知道對方是否有共享資料夾,就進行盲目複製,結果導致複製失敗而且鬱悶的很。因此我建議大家在進行複製之前務必用net view \\ip這個命令看一下你想要複製的共享資料夾是否存在(用軟體檢視當然更好),不要認為能建立ipc$連線就一定有共享資料夾存在。

2 向預設共享複製失敗

1)錯誤的認為能建立ipc$連線的主機就一定開啟了預設共享,因而在建立完連線之後馬上向c$,d$,admin$之類的預設共享複製檔案,一旦對方未開啟預設共享,將導致複製失敗。ipc$連線成功只能說明對方開啟了ipc$共享,並不能說明預設共享一定存在。ipc$共享與預設共享是兩碼事,ipc$共享是乙個命名管道,並不是哪個實際的資料夾,而預設共享卻是實實在在的共享資料夾;

2)由於net view \\ip 這個命令無法顯示預設共享資料夾(因為預設共享帶$),因此通過這個命令,我們並不能判斷對方是否開啟了預設共享,因此如果對方未開啟預設共享,那麼所有向預設共享進行的操作都不能成功;(不過大部分掃瞄軟體在掃弱口令的同時,都能掃到預設共享目錄,可以避免此類錯誤的發生)

要點:請大家一定區分ipc共享,預設共享,普通共享這三者的區別:ipc共享是乙個管道,並不是實際的共享資料夾;預設共享是安裝時預設開啟的資料夾;普通共享是我們自己開啟的可以設定許可權的共享資料夾。

3使用者許可權不夠,包括四種情形:

1)空連線向所有共享(預設共享和普通共享)複製時,許可權是不夠的;

2)向預設共享複製時,在win2000 pro版中,只有administrators和backup operators組成員才可以,在win2000 server版本 server operatros組也可以訪問到這些共享目錄; 

3)向普通共享複製時,要具有相應許可權(即對方管理員事先設定的訪問許可權);

4)對方可以通過防火牆或安全軟體的設定,禁止外部訪問共享;

注意:1 不要認為administrator就一定具有管理員許可權,管理員名稱是可以改的

2 管理員可以訪問預設共享的資料夾,但不一定能夠訪問普通的共享資料夾,因為管理員可以對普通的共享資料夾進行訪問許可權設定,如圖6,管理員為d盤設定的訪問許可權為僅允許名為xinxin的使用者對該資料夾進行完全訪問,那麼此時即使你擁有管理員許可權,你仍然不能訪問d盤。不過有意思的是,如果此時對方又開啟了d$的預設共享,那麼你卻可以訪問d$,從而繞過了許可權限制,有興趣的朋友可以自己做測試。

4被防火牆殺死或在區域網

還有一種情況,那就是也許你的複製操作已經成功,但當遠端執行時,被防火牆殺掉了,導致找不到檔案;或者你把木馬複製到了區域網內的主機,導致連線失敗(反向連線的木馬不會發生這種情況)。如果你沒有想到這種情況,你會以為是複製上出了問題,但實際你的複製操作已經成功了,只是執行時出了問題。

黑客技術——關於at命令和xp對ipc$的限制

本來還想說一下用at遠端執行程式失敗的原因,但考慮到at的成功率不是很高,問題也很多,在這裡就不提它了(提的越多,用的人就越多),而是推薦大家用p***ec.exe遠端執行程式,假設想要遠端機器執行本地c:\xinxin.exe檔案,且管理員為administrator,密碼為1234,那麼輸入下面的命令:

p***ec \\ip -u administrator -p 1234 -c c:\xinxin.exe

如果已經建立ipc連線,則-u -p這兩個引數不需要,p***ec.exe將自動拷貝檔案到遠端機器並執行。

本來xp中的ipc$也不想在這裡討論,想單獨拿出來討論,但看到越來越多的朋友很急切的提問為什麼遇到xp的時候,大部分操作都很難成功。我在這裡就簡單提一下吧,在xp的預設安全選項中,任何遠端訪問僅被賦予來賓許可權,也就是說即使你是用管理員帳戶和密碼,你所得到的許可權也只是guest,因此大部分操作都會因為許可權不夠而失敗,而且到目前為止並沒有乙個好的辦法來突破這一限制。所以如果你真的得到了xp的管理員密碼,我建議你盡量避開ipc管道。

黑客技術——如何開啟目標的ipc$共享以及其他共享

目標的ipc$不是輕易就能開啟的,否則就要天下打亂了。你需要乙個admin許可權的shell,比如telnet,木馬,cmd重定向等,然後在shell下執行:

net share ipc$

開放目標的ipc$共享;

net share ipc$ /del

關閉目標的ipc$共享;如果你要給它開共享資料夾,你可以用:

net share xinxin=c:\

這樣就把它的c盤開為共享名為xinxin共享資料夾了。(可是我發現很多人錯誤的認為開共享資料夾的命令是net share c$,還大模大樣的給菜鳥指指點點,真是誤人子弟了)。再次宣告,這些操作都是在shell下才能實現的。

黑客技術——一些需要shell才能完成的命令

看到很多教程這方面寫的十分不準確,一些需要shell才能完成命令就簡簡單單的在ipc$連線下執行了,起了誤導作用。那麼下面我總結一下需要在shell才能完成的命令:

1 向遠端主機建立使用者,啟用使用者,修改使用者密碼,加入管理組的操作需要在shell下完成;

2 開啟遠端主機的ipc$共享,預設共享,普通共享的操作需要在shell下完成;

3 執行/關閉遠端主機的服務,需要在shell下完成;

4 啟動/殺掉遠端主機的程序,也需要在shell下完成(用軟體的情況下除外,如pskill)。

關於區域網IPC入侵XP方法

1.入侵的範圍只包括區域網,如果在學校上,可以入侵整個校園網 2.能入侵的只是存在弱口令 使用者名為administrator等,密碼為空 並且開了139埠,但沒開防火牆的機子。入侵工具 一般要用到三個 ntscan 掃瞄器,recton d賀免殺專用版,dameware迷你中文版 4.5.前兩個工...

區域網windows遠端連線

開始執行 mstsc 使用者名稱 administrator 在windows xp下,不管是從網路上訪問其他機器,還是使用遠端桌面功能登入系統,常常遇到類似 由於帳戶限制你無法登入 的提示,這是由於你所使用的登入帳號的密碼為空,並且所要登入的遠端計算機中的 組策略 禁止空密碼使用者通過網路登入引起...

windows下Apache區域網訪問

1.ping來檢驗兩個主機是否網路暢通,由於現在很多的防火牆禁止ping,所以可能ping不通 2.用ethereal等抓包工具直接在網絡卡上進行抓包檢視網路是否有http訪問的tcp鏈結報文,注意 由於抓包工具是在網絡卡上工作,而防火牆是應用程工具,所以抓包工具不能被防火牆阻止,但對於本機環路抓包...