關於Windows的139和445端口


上次的月賽中,遇到了一個經典的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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM