Article ID: 147621
Article Last Modified on 6/23/2005
APPLIES TO
- Microsoft Internet Information Server 1.0
This article was previously published under Q147621
We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) version 6.0 running on Microsoft Windows Server 2003. IIS 6.0 significantly increases Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site:
SUMMARY
The Internet Information Server (IIS) contains four registry keys. They are
FTP, Gopher, WWW (World Wide Web) and the Internet Information Server.
The Internet Information Server registry key provides registry parameters
and values that are global for the InetInfo process and the server. For
additional information, please see the following article in the Microsoft
Knowledge Base:
143180
: IIS Common Registry Parameters
This article lists specific registry parameters and values that are used by
the IIS File Transfer Protocol (FTP) service only.
MORE INFORMATION
The following is a list of registry parameters and values that are used
specifically for the IIS FTP service.
The parameter location is under the HKEY_LOCAL_MACHINE subtree under the
following subkeys:
\System\CurrentControlSet\Services\MSFTPSVC\Parameters
EnablePortAttack REG_DWORD
Range: 0 or 1 Default:0
Description: CONFIGURABLE
Recently there was a security hole discovered in FTP service with passive
connection support. The hole is in the FTP protocol specification. By
default, the FTP service allows passive connections to be established based
on the port address given by client. This can enable some hackers to use
this facility to execute malicious commands off the FTP service. The
problem occurs when we request FTP service to connect to a port other than
FTP Data port (20) and port number is less than IP_PORT_RESERVED (1024).
This flag controls if such an attack should be allowed. By default, the
service does not make any connections to ports less than IP_PORT_RESERVED
(other than 20). If someone deliberately wants the old behavior then this
flag should be enabled.
ExitMessage REG_SZ
Range: <String> Default: ""
Description: ADMIN CONFIGURABLE
Conventionally FTP Service sends back an exit message when a client sends a
quit command. This string specifies the exit message to be sent.
GreetingMessage REG_MULTI_SZ
Range: <String> Default: ""
Description: ADMIN CONFIGURABLE
When a new user connects to the FTP Server, the server sends a friendly
greeting message detailing contents and administrative information. This
string (multiple lines) specifies the message to use for greeting the new
client connections.
MaxClientsMessage REG_SZ
Range: <String> Default: ""
Description: ADMIN CONFIGURABLE
When the current connection exceeds the MaxConnections specified for the
service, the service sends a friendly message to clients. This message is a
single line message provided in this parameter.
AccessCheck REG_DWORD
Range: <any> Default: <none>
Description: CONFIGURABLE
This key is used for access check of incoming user connection. The server
impersonates as the logged on user and attempts to open the registry key
for read and write. If the key does not exist then read/write permissions
are granted. If the key exists then based on the access permission on the
registry key, read and write permissions are granted to the user. This
feature is specifically useful for servers which publish content on a FAT
volume and hence do not have the rich security features of NTFS. This is
not a recommended approach to provide security owing to poor manageability
and performance.
AllowGuestAccess REG_DWORD
Range: 0 or 1 Default:1
Description: CONFIGURABLE
This flag specifies if guest logons are permitted for FTP service. When a
new user logs on, the server checks to see if the user is logged on as an
"NT" guest user. For a guest connection, based on the value of this flag,
the FTP service either rejects or accepts the new connection. Permitting
Guest access has been known to have problems in poorly managed site. Under
default installation of Windows NT systems, Guest is granted permissions
for all types of access on the system. This could easily be a security hole
and it is recommended that wary administrators turn off this switch.
AnnotateDirectories REG_DWORD
Range: 0 or 1 Default:0
Description: CONFIGURABLE
FTP service supports annotating a directory with custom messages. The
annotation text should be stored in a special file named ~ftpsvc~.ckm
under the directory. If this file exists in the target directory of a
Change Directory (CWD) FTP operation, then the service responds with the
contents of this file for the operation. This provides a way for
administrators to add custom messages for directories under consideration.
By default the service is configured to not send annotation text. If
administrator decides to add a custom message, the annotation file should
be created as well as this flag turned on. It is recommended to make the
annotation file a hidden file so that the file does not show up on a
directory listing.
MsdosDirOutput REG_DWORD
Range: 0 or 1 Default:1
Description: CONFIGURABLE
This flag specifies the style of directory output for a LIST operation from
an FTP client. If the flag is turned on, the service generates a MS-DOS
style directory listing. If the flag is turned off, then the service
generates an UNIX style listing. (Some clients may break if they do not
support MS-DOS style listing. For these and numerous other reasons and
administrator may consider turning this flag off. The downside is that
generation of UNIX style listing is costly operation and consumes more
CPU).
LowercaseFiles REG_DWORD
Range: 0 or 1 Default:0
Description: CONFIGURABLE
The service uses the native case for file names ( like what the file
names are stored in file system). However for exact comparisons with case-
sensitive file systems (NTFS provides an option, FAT is case insensitive)
to work fine, it may be necessary to ensure proper file names are used.
Administrators can turn on this flag to ensure that the service uses lower
case for such comparisons.
DebugFlags REG_DWORD
Range: 0 - 0xFFFFFFFF Default:0
Description: INTERNAL ANALYSIS
This value specifies bit mask for selectively enabling different checks in
a debug binary of the FTP service component (FTPSVC2.DLL). The output is
sent to the debug terminal by default.
# define DEBUG_SERVICE_CTRL 0x00000001
# define DEBUG_TIMING 0x00000002
# define DEBUG_CACHE 0x00000004
# define DEBUG_ERROR 0x00000008
# define DEBUG_SECURITY 0x00000010
# define DEBUG_USER_DATABASE 0x00000020
# define DEBUG_LICENSE 0x00000040
# define DEBUG_RPC 0x00000080
# define DEBUG_CONNECTION 0x00000100
# define DEBUG_PARSING 0x00000200
# define DEBUG_COMMANDS 0x00000400
# define DEBUG_CONFIG 0x00000800
# define DEBUG_VIRTUAL_IO 0x00001000
# define DEBUG_CLIENT 0x00002000
# define DEBUG_ASYNC_IO 0x00004000
# define DEBUG_DIR_LIST 0x00008000
# define DEBUG_SOCKETS 0x00010000
# define DEBUG_SEND 0x00020000
# define DEBUG_RECV 0x00040000
# define DEBUG_CRITICAL_PATH 0x10000000
Additional query words: prodiis regedt32
Keywords: kbusage KB147621