Terminal Server Doesn't Support NT 4.0 Option Pack
In an odd coincidence, on the very day I was putting together this column, I received a question from a reader who was having problems implementing Internet Information Server (IIS) 4.0 on Windows NT Server 4.0, Terminal Services Edition (TSE). As Microsoft Support Online article Q190157 explains, both IIS 4.0 and Microsoft Transaction Server (MTS) malfunction when you install them on TSE. Microsoft recommends that you use IIS 3.0, which ships with TSE, for Web server functionality on the terminal server. Also, TSE doesn’t support Site Server 2.0 and 3.0.
Stop 0X00000050 when Using TSE Service Pack 4
If you’re running TSE with Service Pack 4 (SP4), you might get the following Stop error:
Stop 0x00000050 PAGE_FAULT_IN_NONPAGED_AREA
According to Microsoft Support Online article Q232649, the problem is that win32k.sys, the kernel mode component of the Win32 subsystem, is attempting to reference memory that the system has decommitted. You can fix the problem with TSE SP5, but that service pack isn’t out as of this writing. In the meantime, see the article to learn how to get an interim fix for this problem.
Patch Coming to Prevent Print Spooler Crashes
Microsoft has issued a security bulletin about two vulnerabilities in NT 4.0 that can let users crash the print spooler service or run arbitrary code on an NT machine. The company will release a TSE version of a patch that will fix the problems.
Certain APIs in the NT 4.0 print spooler subsystem have unchecked buffers. If someone sends random data to an affected API, the print spooler service can crash. If someone sends a specially malformed argument to the API, that person can run arbitrary code on the server via a classic buffer overrun attack. Most of the affected APIs require that callers be members of the Power Users or Administrators groups; however, at least one API is open to regular users. Although an anonymous user can't make the API calls, a remote user can.
In the second vulnerability, incorrect permissions let regular users specify their code as a print provider. Because print providers run in a local System context, users can gain additional privileges on the local machine. You cannot exploit this vulnerability remotely. Click here to learn more about these vulnerabilities.
Don't Register DLLs from User Accounts
If you haven’t installed TSE SP4 yet, you might receive access violations if you try to register a DLL using a service running in the context of a user account. You can successfully register the DLL at the TSE console or from a service running in the context of the LocalSystem account. According to Microsoft Support Online article Q219538, Microsoft fixed this problem in TSE SP4.