Enabling NetBT to Open IP Ports Exclusively (241041)



The information in this article applies to:

  • Microsoft Windows NT Server 4.0 Terminal Server Edition
  • Microsoft Windows NT Server 4.0
  • Microsoft Windows NT Server, Enterprise Edition 4.0
  • Microsoft Windows NT Workstation 4.0

This article was previously published under Q241041

SYMPTOMS

A user-mode program can listen to TCP port 139 as well as UDP ports 137 and 138. Because these ports are used by Windows NT services, it is a Trusted Computer System Evaluation Criteria (TCSEC) C2 requirement that an unprivileged user-mode program should not be able to listen to these ports used by Windows NT services, regardless of the cryptographic protection applied to the Windows NT service traffic using these ports.

CAUSE

This problem occurs because Netbt.sys (NetBIOS over TCP/IP) is responsible for opening the following TCP and UDP ports that subsequently are used by Windows NT services:
  • UDP Port 137
  • UDP Port 138
  • TCP Port 139
For additional information about Windows NT services that use these ports, click the article number below to view the article in the Microsoft Knowledge Base:

150543 WinNT, Terminal Server, and Exchange Services Use TCP/IP Ports

As explained in the Windows NT 4.0 Device Development Kit (DDK) for network driver development, Netbt.sys (as a TDI client) begins communicating with its local-node transport by opening a file object that represents a transport address. Netbt.sys calls ZwCreateFile, passing the address specification in the extended attributes (EA) buffer parameter to ZwCreateFile.

In Windows NT 4.0 Service Pack 6a and earlier, Netbt.sys allows file share access to file objects representing the aforementioned TCP and UDP ports when calling ZwCreateFile. Subsequently, a user-mode program installed on a computer running Windows NT 4.0 Service Pack 6a and earlier can gain access to a share and listen to the TCP and UDP ports. The Post-SP6a hotfix, C2 Update, allows the option to change the Netbt.sys behavior so that it does not allow file share access to files objects representing the aforementioned TCP and UDP ports when calling ZwCreateFile. The option is selected through the use of the following registry key and key value:

   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters
</B>
EnablePortLocking:REG_DWORD

Default: 0 - NetBt allows file share access
	 1 - NetBt disallows file share access
When EnablePortLocking is set to 1, Netbt.sys passes in zero (ULONG) in the ShareAccess parameter of ZwCreateFile. After the application of Netbt-fix and the setting of the REG_DWORD value to 1 for EnablePortLocking, a user-mode program cannot gain share access and listen to the TCP and UDP ports.

NOTE: NETBT in Windows 2000 does not support this option and the above registry key and value. The default behaviour in Windows 2000 is to disallow file share access to all ports created by NETBT.

RESOLUTION

Windows NT 4.0

To resolve this problem, obtain the individual package referenced below or obtain the Windows NT 4.0 Security Rollup Package. For additional information on the SRP, click the article number below to view the article in the Microsoft Knowledge Base:

299444 Post-Windows NT 4.0 Service Pack 6a Security Rollup Package (SRP)

The individual hotfix is available for download from the Microsoft Download Center or Microsoft's FTP site. Click the file names below to download the appropriate file:

English

x86:

Microsoft Download Center: DownloadDownload Q244599i.exe now

FTP: DownloadDownload Q244599i.exe now

Alpha:

Microsoft Download Center: DownloadDownload Q244599a.exe now

FTP: DownloadDownload Q244599a.exe now

French

x86: FTP: DownloadDownload Q244599i.exe nowAlpha: FTP: DownloadDownload Q244599a.exe now

Spanish

x86: FTP: DownloadDownload Q244599i.exe nowAlpha: FTP: DownloadDownload Q244599a.exe now For additional information about how to download Microsoft Support files, click the following article number to view the article in the Microsoft Knowledge Base:

119591 How to Obtain Microsoft Support Files from Online Services

Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help to prevent any unauthorized changes to the file. The English version of this fix should have the following file attributes or later:
   Date        Time      Size   File name  Platform
   ------------------------------------------------
   10/07/1999  03:13p  123,152  Netbt.sys  x86
   10/07/1999  03:11p  222,800  Netbt.sys  Alpha

Microsoft Windows NT Server version 4.0, Terminal Server Edition

To resolve this problem, obtain the Windows NT Server 4.0, Terminal Server Edition, Security Rollup Package (SRP). For additional information about the SRP, click the article number below to view the article in the Microsoft Knowledge Base:

317636 Windows NT Server 4.0, Terminal Server Edition, Security Rollup Package

STATUS

Microsoft has confirmed that this problem may cause a degree of security vulnerability in Windows NT 4.0.

Modification Type:MinorLast Reviewed:7/8/2005
Keywords:kbbug kbfix kbgraphxlinkcritical kbSecurity KB241041