標籤:
上次的月賽中,遇到了一個經典的MS08-067的漏洞,這是一個經典的教科書的漏洞。但是僅限於使用metasploit來攻擊這個漏洞。現在我想簡單寫一些關於139和445連接埠的東西。
首先提到的是NetBios,NetBios是Network Basic Input/Output System的縮寫,提供了一種允許區域網路內不同電腦能夠通訊的功能。嚴格來說,NetBios是一套API,而並不是一個網路通訊協定。
如今,我們使用的網路通訊協定棧是TCP/IP協議棧,在Windows作業系統上,NetBios運行在NetBios over TCP/IP的協議上,NetBios over TCP/IP(簡稱NBT或者NetBT)是一個網路通訊協定,允許以前使用NetBios API的應用程式能夠在現代的TCP/IP網路中。如:
再說SMB,SMB是Server Message Block的縮寫,作為一個應用程式層的協議,主要提供一個網路中檔案分享權限設定、檔案列印和處理序間通訊等功能,如今SMB的使用主要存在於Windows系統中。
SMB協議是運行在會話層之上的網路層協議,有兩種運行方式,第一種通過NetBios API,如:
使用的是UDP的137和138連接埠以及TCP的137和139的連接埠。
第二種是直接運行在TCP和UDP協議之上,使用的是445連接埠,可以稱為"Direct hosting of SMB over TCP/IP"。
總結一下,Windows主機上檔案列印、檔案分享權限設定等都通過SMB協議來實現,而SMB通過兩種方式運行在139和445連接埠之上。我們可以通過手段使得SMB只通過第二種方式運行,而不通過NetBios API。本地串連屬性àInternet協議版本4屬性à進階àWINSà禁用TCP/IP上的NetBios.這樣的話SMB就只運行在445連接埠之上了。
禁用前:
禁用後:
?
參考:
https://en.wikipedia.org/wiki/NetBIOS
https://en.wikipedia.org/wiki/NetBIOS_over_TCP/IP
https://en.wikipedia.org/wiki/Server_Message_Block
http://www.dslreports.com/forum/r5486656-MICROSOFT-DS-What-is-this
https://support.microsoft.com/en-us/kb/204279
https://technet.microsoft.com/en-us/library/bb962072.aspx
http://www.hsc.fr/ressources/breves/min_srv_res_win.en.html
關於Windows的139和445連接埠