NETBIOS協(xié)議是由IBM公司開(kāi)發(fā),主要用于數(shù)十臺(tái)計(jì)算機(jī)的小型局域網(wǎng)。該協(xié)議是一種在局域網(wǎng)上的程序可以使用的
應(yīng)用程序編程接口(API),為程序提供了請(qǐng)求低級(jí)服務(wù)的統(tǒng)一的命令集,作用是為了給局域網(wǎng)提供網(wǎng)絡(luò)以及其他特殊功能,系統(tǒng)可以利用WINS服務(wù)、廣播及Lmhost文件等多種模式將NetBIOS名解析為相應(yīng)IP地址,實(shí)現(xiàn)信息通訊,所以在局域網(wǎng)內(nèi)部使用
NetBIOS協(xié)議可以方便地實(shí)現(xiàn)消息通信及資源的共享。因?yàn)樗加?a target="_blank" >系統(tǒng)資源少、傳輸效率高,所以幾乎所有的局域網(wǎng)都是在NetBIOS協(xié)議的基礎(chǔ)上工作的。
目錄
NetBIOS的應(yīng)用NetBIOS:網(wǎng)絡(luò)基本輸入輸出系統(tǒng)NETBIOS協(xié)議結(jié)構(gòu)因NETBIOS給用戶(hù)帶來(lái)的潛在危害簡(jiǎn)介1.利用軟件查找共享資源2. 用PQwak破解共享密碼1. 解開(kāi)文件和打印機(jī)共享綁定2. 利用TCP/IP篩選3. 使用IPSec安全策略4. 停止Server服務(wù)5. 使用防火墻防范攻擊非局域網(wǎng)用戶(hù)如何防范NETBIOS漏洞攻擊NetBIOS的應(yīng)用NetBIOS:網(wǎng)絡(luò)基本輸入輸出系統(tǒng)NETBIOS協(xié)議結(jié)構(gòu)因NETBIOS給用戶(hù)帶來(lái)的潛在危害簡(jiǎn)介1.利用軟件查找共享資源2. 用PQwak破解共享密碼1. 解開(kāi)文件和打印機(jī)共享綁定2. 利用TCP/IP篩選3. 使用IPSec安全策略4. 停止Server服務(wù)5. 使用防火墻防范攻擊NetBIOS的應(yīng)用
英文原義:NetBIOS Services Protocols
中文釋義:(RFC-1001,1002)網(wǎng)絡(luò)基本輸入/輸出系統(tǒng)協(xié)議
應(yīng) 用:在Windows
操作系統(tǒng)中,默認(rèn)情況下在安裝
TCP/IP協(xié)議后會(huì)自動(dòng)安裝NetBIOS。比如在Windows 2000/XP中,當(dāng)選擇“自動(dòng)獲得IP”后會(huì)啟用
DHCP服務(wù)器,從該服務(wù)器使用NetBIOS設(shè)置;如果使用
靜態(tài)IP地址或DHCP服務(wù)器不提供NetBIOS設(shè)置,則啟用TCP/IP上的NetBIOS。具體的設(shè)置方法如下:首先打開(kāi)“控制面板”,雙擊“網(wǎng)絡(luò)連接”圖標(biāo),打開(kāi)本地連接屬性。接著,在屬性窗口的“常規(guī)”選項(xiàng)卡中選擇“Internet協(xié)議(TCP/IP)”,單擊“屬性”按鈕。然后在打開(kāi)的窗口中,單擊“高級(jí)”按鈕;在“高級(jí)TCP/IP設(shè)置”窗口中選擇“WINS”選項(xiàng)卡,在“NetBIOS設(shè)置”區(qū)域中就可以相應(yīng)的NetBIOS設(shè)置。
NetBIOS:網(wǎng)絡(luò)基本輸入輸出系統(tǒng)
(NetBIOS:Network Basic Input Output System)
NetBIOS 定義了一種
軟件接口以及在應(yīng)用程序和連接介質(zhì)之間提供通信接口的標(biāo)準(zhǔn)方法。NetBIOS 是一種會(huì)話(huà)層協(xié)議,應(yīng)用于各種 LAN (Ethernet、Token Ring 等)和 WAN 環(huán)境,諸如 TCP/IP、PPP 和 X.25 網(wǎng)絡(luò)。
NetBIOS 使得應(yīng)用程序無(wú)需了解包括差錯(cuò)恢復(fù)(會(huì)話(huà)模式)在內(nèi)的網(wǎng)絡(luò)細(xì)節(jié)。NetBIOS 請(qǐng)求以
網(wǎng)絡(luò)控制塊(NCB:Network Control Block)的形式提供,NCB 中包含了信息存放位置和目標(biāo)名稱(chēng)等信息。
NetBIOS 提供
開(kāi)放系統(tǒng)互聯(lián)(OSI)模型中的會(huì)話(huà)層和傳輸層服務(wù),但不支持標(biāo)準(zhǔn)幀或數(shù)據(jù)格式的傳輸。NetBIOS 擴(kuò)展用戶(hù)接口(NetBEUI)支持標(biāo)準(zhǔn)幀格式,它為 NetBIOS 提供網(wǎng)絡(luò)層和傳輸層服務(wù)支持。
NetBIOS 支持兩種通信模式:會(huì)話(huà)(session)或數(shù)據(jù)報(bào)(datagram)。會(huì)話(huà)模式是指兩臺(tái)計(jì)算機(jī)為“對(duì)話(huà)”建立一個(gè)連接,允許處理大量信息,并支持差錯(cuò)監(jiān)測(cè)和恢復(fù)功能。數(shù)據(jù)報(bào)模式面向“無(wú)連接”(信息獨(dú)立發(fā)送)操作,發(fā)送的信息較小,由應(yīng)用程序提供差錯(cuò)監(jiān)測(cè)和恢復(fù)功能。此外數(shù)據(jù)報(bào)模式也支持將信息廣播到局域網(wǎng)中的每臺(tái)計(jì)算機(jī)上。
NetBIOS 名稱(chēng)為 16 字節(jié)長(zhǎng)(必要情況下使用填充位填滿(mǎn)),對(duì)使用的字節(jié)值幾乎沒(méi)有限制。對(duì)于不執(zhí)行路由的小型網(wǎng)絡(luò),將 NetBIOS 名稱(chēng)映射到 IP 地址上有三種方法:
1. IP 廣播 - 當(dāng)目標(biāo)地址不在本地 cache 上時(shí),廣播一個(gè) 包含目標(biāo)計(jì)算機(jī) NetBIOS 名稱(chēng)的數(shù)據(jù)包。目標(biāo)計(jì)算機(jī)返回其 IP 地址。
2. lmhosts 文件 - 這是一個(gè)負(fù)責(zé)映射 IP 地址和 NetBIOS 計(jì)算機(jī)名稱(chēng)的文件。
3. NBNS - NetBIOS 命名服務(wù)器負(fù)責(zé) 將 NetBIOS 名稱(chēng)映射到 IP 地址上。該服務(wù)由 Linux 環(huán)境下的后臺(tái)程序(nmbd daemon)執(zhí)行。
NETBIOS協(xié)議結(jié)構(gòu)
NetBIOS 數(shù)據(jù)包有很多不同格式,主要取決于服務(wù)和信息類(lèi)型,以及用以傳送 NetBIOS 數(shù)據(jù)包的傳輸協(xié)議。 NetBIOS 包含三種基本服務(wù): NAME、SESSION 和 DATAGRAM。作為例子,我們提供 TCP/IP 環(huán)境中的 NetBIOS 名稱(chēng)數(shù)據(jù)包格式:
Header (12 bytes)
Question Entry (variable)
Answer Resource Records (variable)
Authority Resource Records (variable)
Additional Resource Records (variable)
NBTSTAT命令可以用來(lái)查詢(xún)涉及到NetBIOS信息的網(wǎng)絡(luò)機(jī)器。另外,它還可以用來(lái)消除NetBIOS高速緩存器和預(yù)加載LMHOSTS文件。這個(gè)命令在進(jìn)行安全檢查時(shí)非常有用。
用法:nbtstat [-a RemoteName] [-A IP_address] [-c] [-n] [-R] [-r] [-S] [-s]
參數(shù) :-a列出為其
主機(jī)名提供的遠(yuǎn)程計(jì)算機(jī)名字表。
-A列出為其IP地址提供的遠(yuǎn)程計(jì)算機(jī)名字表。
-c列出包括了IP地址的遠(yuǎn)程名字高速緩存器。
-n列出本地NetBIOS名字。
-r列出通過(guò)廣播和
WINS解析的名字。
-R消除和重新加載遠(yuǎn)程高速緩存器名字表。
-S列出有目的地IP地址的會(huì)話(huà)表。
-s列出會(huì)話(huà)表對(duì)話(huà)。
NBTSTAT生成的列標(biāo)題具有以下含義:
Input :接收到的字節(jié)數(shù)。
Output :發(fā)出的字節(jié)數(shù)。
In/Out :無(wú)論是從計(jì)算機(jī)(出站)還是從另一個(gè)系統(tǒng)連接到本地計(jì)算機(jī)(入站)。
Life :在計(jì)算機(jī)消除名字表高速緩存表目前“度過(guò)”的時(shí)間。
Local Name :為連接提供的本地NetBIOS名字。
Remote Host :遠(yuǎn)程主機(jī)的名字或IP地址。
Type :一個(gè)名字可以具備兩個(gè)類(lèi)型之一:unique or group
在16個(gè)字符的NetBIOS名中,最后一個(gè)字節(jié)往往有具體含義,因?yàn)橥粋€(gè)名可以在同一臺(tái)計(jì)算機(jī)上出現(xiàn)多次。這表明該名字的最后一個(gè)字節(jié)被轉(zhuǎn)換成了16進(jìn)制。
State
NetBIOS連接將在下列“狀態(tài)”(任何一個(gè))中顯示:
狀態(tài)含義:
Accepting: 進(jìn)入連接正在進(jìn)行中。
Associated: 連接的端點(diǎn)已經(jīng)建立,計(jì)算機(jī)已經(jīng)與IP地址聯(lián)系起來(lái)。
Connected: 這是一個(gè)好的狀態(tài)!它表明您被連接到遠(yuǎn)程資源上。
Connecting: 您的會(huì)話(huà)試著解析目的地資源的名字-IP地址映射。
Disconnected: 您的計(jì)算機(jī)請(qǐng)求斷開(kāi),并等待遠(yuǎn)程計(jì)算機(jī)作出這樣的反應(yīng)。
Disconnecting: 您的連接正在結(jié)束。
Idle: 遠(yuǎn)程計(jì)算機(jī)在當(dāng)前會(huì)話(huà)中已經(jīng)打開(kāi),但現(xiàn)在沒(méi)有接受連接。
Inbound: 入站會(huì)話(huà)試著連接。
Listening: 遠(yuǎn)程計(jì)算機(jī)可用。
Outbound: 您的會(huì)話(huà)正在建立TCP連接。
Reconnecting: 如果第一次連接失敗,就會(huì)顯示這個(gè)狀態(tài),表示試著重新連接
下面是一臺(tái)機(jī)器的NBTSTAT反應(yīng)樣本:
C:\>nbtstat CA x.x.x.x
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
DATARAT <00> UNIQUE Registered
R9LABS <00> GROUP Registered
DATARAT <20> UNIQUE Registered
DATARAT <03> UNIQUE Registered
GHOST <03> UNIFQUE Registered
DATARAT <01> UNIQUE Registered
MAC Address = 00-00-00-00-00-00
您通過(guò)下表能掌握有關(guān)該機(jī)器的哪些知識(shí)呢?
名稱(chēng)編號(hào)類(lèi)型的使用:
00 U 工作站服務(wù)
01 U 郵件服務(wù)
\\_MSBROWSE_ 01 G 主
瀏覽器03 U 郵件服務(wù)
06 U RAS服務(wù)器服務(wù)
1F U NetDDE服務(wù)
20 U 文件服務(wù)器服務(wù)
21 U RAS客戶(hù)機(jī)服務(wù)
22 U Exchange Interchange
23 U Exchange Store
24 U Exchange Directory
30 U 調(diào)制解調(diào)器共享服務(wù)器服務(wù)
31 U 調(diào)制解調(diào)器共享客戶(hù)機(jī)服務(wù)
43 U SMS客戶(hù)機(jī)
遠(yuǎn)程控制44 U SMS管理遠(yuǎn)程控制工具
45 U SMS客戶(hù)機(jī)遠(yuǎn)程聊天
46 U SMS客戶(hù)機(jī)遠(yuǎn)程傳輸
4C U DEC Pathworks TCP/IP服務(wù)
52 U DEC Pathworks TCP/IP服務(wù)
87 U Exchange MTA
6A U Exchange IMC
BE U網(wǎng)絡(luò)監(jiān)控代理
BF U網(wǎng)絡(luò)監(jiān)控應(yīng)用
03 U郵件服務(wù)
00 G域名
1B U域主瀏覽器
1C G域控制器
1D U主瀏覽器
1E G瀏覽器服務(wù)選擇
1C G Internet信息服務(wù)器
00 U Internet信息服務(wù)器
[2B] U Lotus Notes服務(wù)器
IRISMULTICAST [2F] G Lotus Notes
IRISNAMESERVER [33] G Lotus Notes
Forte_$ND800ZA [20] U DCA Irmalan
網(wǎng)關(guān)服務(wù)
Unique (U): 該名字可能只有一個(gè)分配給它的IP地址。在網(wǎng)絡(luò)設(shè)備上,一個(gè)要注冊(cè)的名字
可以出現(xiàn)多次,但其后綴是唯一的,從而使整個(gè)名字是唯一的。
Group (G): 一個(gè)正常的群;一個(gè)名字可以有很多個(gè)IP地址。
Multihomed (M): 該名字是唯一的,但由于在同一臺(tái)計(jì)算機(jī)上有多個(gè)網(wǎng)絡(luò)接口,
這個(gè)配置可允許注冊(cè)。這些地址的最大編號(hào)是25。
Internet Group (I): 這是用來(lái)管理WinNT域名的組名字的特殊配置。
Domain Name (D): NT 4.0提供的新內(nèi)容。
因NETBIOS給用戶(hù)帶來(lái)的潛在危害
簡(jiǎn)介
當(dāng)安裝TCP/IP協(xié) 議時(shí),NetBIOS 也被Windows作為默認(rèn)設(shè)置載入,我們的計(jì)算機(jī)也具有了NetBIOS本身的開(kāi)放性。某些別有用心的人就利用這個(gè)功能來(lái)攻擊服務(wù)器,使
管理員不能放心使用文件和打印機(jī)共享。
利用NETBIOS漏洞進(jìn)行攻擊的端口分別為:
135端口開(kāi)放實(shí)際上是一個(gè)WINNT漏洞,開(kāi)放的135的端口情況容易引起自外部的“Snort”攻擊?。?!
對(duì)于135端口開(kāi)放的問(wèn)題,可以在你的
防火墻上,增加一條規(guī)則:拒絕所有的這類(lèi)進(jìn)入的UDP包,目的端口是135,源端口是7,19,或者135,這樣可以保護(hù)內(nèi)部的系統(tǒng),防止來(lái)自外部的攻擊。大多數(shù)防火墻或者包過(guò)濾器已經(jīng)設(shè)置了很多嚴(yán)格的規(guī)則,已覆蓋了這條過(guò)濾規(guī)則,但仍需注意:有一些NT的應(yīng)用程序,它們依靠UDP135端口進(jìn)行合法的通訊,而打開(kāi)你135的端口與NT的RPC服務(wù)進(jìn)行通訊。如果真是這樣,你一定要在那些原始地址的系統(tǒng)上(需要135口通訊),實(shí)施上述的規(guī)則,指定來(lái)自這些系統(tǒng)的通訊可以通過(guò)防火墻,或者,可以被攻擊檢測(cè)系統(tǒng)所忽略,以便維持那些應(yīng)用程序的正常連接。為了保護(hù)你的信息安全,強(qiáng)烈建議你安裝
微軟的最新補(bǔ)丁包。
上面我們說(shuō)到Netbios(NETwork Basic Input/Output System)網(wǎng)絡(luò)
基本輸入輸出系統(tǒng)。是1983年IBM開(kāi)發(fā)的一套
網(wǎng)絡(luò)標(biāo)準(zhǔn),微軟在這基礎(chǔ)上繼續(xù)開(kāi)發(fā)。微軟的客戶(hù)機(jī)/服務(wù)器網(wǎng)絡(luò)系統(tǒng)都是基于NetBIOS的。在利用Windows NT4.0 構(gòu)建的網(wǎng)絡(luò)系統(tǒng)中,對(duì)每一臺(tái)主機(jī)的唯一標(biāo)識(shí)信息是它的NetBIOS名。系統(tǒng)可以利用WINS服務(wù)、廣播及Lmhost文件等多種模式通過(guò)139端口將NetBIOS名解析為相應(yīng)IP地址,從而實(shí)現(xiàn)信息通訊。在這樣的網(wǎng)絡(luò)系統(tǒng)內(nèi)部,利用NetBIOS名實(shí)現(xiàn)信息通訊是非常方便、快捷的。但是在Internet上,它就和一個(gè)后門(mén)程序差不多了。因此,我們很有必要堵上這個(gè)可怕的漏洞。
——利用NetBIOS漏洞攻擊1.利用軟件查找共享資源
利用NetBrute Scanner
軟件掃描一段IP地址(如10.0.13.1~10.0.13.254)內(nèi)的共享資源,就會(huì)掃描出默認(rèn)共享2. 用PQwak破解共享密碼
雙擊掃描到的共享文件夾,如果沒(méi)有密碼,便可直接打開(kāi)。當(dāng)然也可以在IE的地址欄直接輸入掃描到的帶上共享文件夾的IP地址,如“\\10.0.13.191”(或帶C$,D$等查看默認(rèn)共享)。如果設(shè)有共享密碼,會(huì)要求輸入共享用戶(hù)名和密碼,這時(shí)可利用破解網(wǎng)絡(luò)鄰居密碼的
工具軟件,如PQwak,破解后即可進(jìn)入相應(yīng)文件夾。
——關(guān)閉NetBIOS漏洞1. 解開(kāi)文件和打印機(jī)共享綁定
鼠標(biāo)右擊桌面上[網(wǎng)絡(luò)鄰居]→[屬性] →[本地連接] →[屬性],去掉“Microsoft網(wǎng)絡(luò)的文件和打印機(jī)共享”前面的勾,解開(kāi)文件和打印機(jī)共享綁定。這樣就會(huì)禁止所有從139和445端口來(lái)的請(qǐng)求,別人也就看不到本機(jī)的共享了。2. 利用TCP/IP篩選
鼠標(biāo)右擊桌面上[網(wǎng)絡(luò)鄰居] →[屬性]→[本地連接] →[屬性],打開(kāi)“本地連接屬性”對(duì)話(huà)框。選擇[Internet協(xié)議(TCP/IP)]→[屬性]→[高級(jí)]→[選項(xiàng)], 在列表中單擊選中“TCP/IP篩選”選項(xiàng)。單擊[屬性]按鈕,選擇“只允許”,再單擊[添加]按鈕(如圖2),填入除了139和445之外要用到的端口。這樣別人使用掃描器對(duì)139和445兩個(gè)端口進(jìn)行掃描時(shí),將不會(huì)有任何回應(yīng)。3. 使用IPSec安全策略
3. 使用IPSec安全策略阻止對(duì)端口139和445的訪問(wèn)
選擇[我的電腦]→[控制面板]→[管理工具]→[本地安全策略]→[IP安全策略,在本地機(jī)器],在這里定義一條阻止任何IP地址從TCP139和TCP445端口訪問(wèn)IP地址的IPSec安全策略規(guī)則,這樣別人使用掃描器掃描時(shí),本機(jī)的139和445兩個(gè)端口也不會(huì)給予任何回應(yīng)。4. 停止Server服務(wù)
選擇[我的電腦]→[控制面板]→[管理工具]→[服務(wù)],進(jìn)入服務(wù)管理器,關(guān)閉Server服務(wù)。這樣雖然不會(huì)關(guān)閉端口,但可以中止本機(jī)對(duì)其他機(jī)器的服務(wù),當(dāng)然也就中止了對(duì)其他機(jī)器的共享。但是關(guān)閉了該服務(wù)會(huì)導(dǎo)致很多相關(guān)的服務(wù)無(wú)法啟動(dòng),如機(jī)器中如果有IIS服務(wù),則不能采用這種方法。5. 使用防火墻防范攻擊
在防火墻中也可以設(shè)置阻止其他機(jī)器使用本機(jī)共享。如在“天網(wǎng)個(gè)人防火墻”中,選擇一條空規(guī)則,設(shè)置數(shù)據(jù)包方向?yàn)?#8220;接收”,對(duì)方IP地址選“任何地址”,協(xié)議設(shè)定為“TCP”,本地端口設(shè)置為“139到139”,對(duì)方端口設(shè)置為“0到0”,設(shè)置標(biāo)志位為“SYN”,動(dòng)作設(shè)置為“攔截”,最后單擊[確定]按鈕,并在“自定義IP規(guī)則”列表中勾選此規(guī)則即可啟動(dòng)攔截139端口攻擊了。
非局域網(wǎng)用戶(hù)如何防范NETBIOS漏洞攻擊
在windows9x下如果你是個(gè)撥號(hào)用戶(hù)。完全不需要登陸到nt局域網(wǎng)絡(luò)環(huán)境的話(huà)。只需要在控制面板→網(wǎng)絡(luò)→刪除microsoft網(wǎng)絡(luò)用戶(hù),使用microsoft友好登陸就可以了。但是如果你需要登陸到nt網(wǎng)絡(luò)的話(huà)。那這一項(xiàng)就不能去處。因?yàn)閚t網(wǎng)里需要使用netbios。
在windowsNT下你可以取消netbios與TCP/IP協(xié)議的綁定??刂泼姘?#8594;網(wǎng)絡(luò)→Netbios接口→WINS客戶(hù)(tcp/ip)→禁用。確定。重啟。這樣nt的計(jì)算機(jī)名和工作組名也隱藏了,不過(guò)會(huì)造成基于netbios的一些命令無(wú)法使用。如net等。
在windowsNT下你可以選中網(wǎng)絡(luò)鄰居→右鍵→本地連接→INTERNET協(xié)議(TCP/IP)→屬性→高級(jí)→選項(xiàng)→TCP/IP篩選→在“只允許”中填入除了137,138,139只外的端口。如果你在局域網(wǎng)中,會(huì)影響局域網(wǎng)的使用
在windowsXP下你可以在控制面板上點(diǎn)擊管理工具-本地安全策略,右擊"IP安全策略,在本地計(jì)算機(jī)"選擇"管理IP篩選器表和篩選器操作",點(diǎn)添加,在對(duì)話(huà)框里填,隨便寫(xiě).只要你記得住.最好還是寫(xiě)"禁用135/139端口"比較看的懂.點(diǎn)右邊的添加->下一步->源地址為"任何地址"->目的地址"我的地址"->協(xié)儀為T(mén)CP->在到此端口里填135或139就可以.
還有一個(gè)辦法就是TCP/IP協(xié)儀里禁用NETBIOS.[1]