458 lines
24 KiB
Plaintext
458 lines
24 KiB
Plaintext
|
|
|||
|
**************************************************************************
|
|||
|
Info: Windows NT Security Issues
|
|||
|
Source: http://www.somar.com/
|
|||
|
**************************************************************************
|
|||
|
|
|||
|
Lax registry permissions
|
|||
|
|
|||
|
NT installs by default with Everyone given write access to much of the
|
|||
|
registry. To see just how much, use the Somar DumpAcl program. This is a
|
|||
|
major problem because the registry on any machine running NT, both servers
|
|||
|
and workstations, can be accessed remotely using Registry Editor. So a
|
|||
|
user running on some workstation can modify the registry on any server or
|
|||
|
workstation on which this user has an account (normally this means all
|
|||
|
servers), or on which the guest account is enabled.
|
|||
|
|
|||
|
Since the registry is similar to a file system, the obvious solution is
|
|||
|
either to stop sharing the registry or else set registry permissions
|
|||
|
securely. Unfortunately, there is no way to stop sharing the registry
|
|||
|
currently. As far as setting permissions, this is possible in theory but
|
|||
|
impractical because of the complexity of the registry. It is doubtful that
|
|||
|
anyone besides Microsoft can give guidance as to exactly which registry keys
|
|||
|
can be made read-only for ordinary users and which must be writeable by
|
|||
|
ordinary users. It is not acceptable to set permissions on the
|
|||
|
HKEY_LOCAL_MACHINE root key and let those permissions be propagated to all
|
|||
|
subkeys. This will cause various problems with the functioning of NT (it
|
|||
|
did when I tried it at least). If it is possible, then Microsoft needs to
|
|||
|
explicitly say so.
|
|||
|
|
|||
|
It is possible to enable auditing of the successful change of all registry
|
|||
|
keys and then write a program to scan the audit log looking for changes
|
|||
|
made by other than the admininstrator, but this seems a poor way to run a
|
|||
|
system. It is analogous to letting all users write to all files, then
|
|||
|
auditing the changes and punishing users who changed files they weren't
|
|||
|
supposed to change. It is clearly better to just deny write permission to
|
|||
|
begin with if you don't want the user changing the file or registry key.
|
|||
|
|
|||
|
Consider various scenarios. A malicious user changes a few registry entries
|
|||
|
so that various services begin functioning strangely, but not so strangely
|
|||
|
that it is obvious what has happened. The problems are not reproducible at
|
|||
|
other sites and the sysadmin feels like a fool. If logging is enabled, the
|
|||
|
sysadmin might eventually track the problem to the user who made the changes,
|
|||
|
but in reality, most sysadmins will just reinstall NT. The user might then
|
|||
|
wait a few months, then make the changes again. So the sysadmin comes to
|
|||
|
the conclusion that NT needs reinstallation every few months to keep things
|
|||
|
running properly.
|
|||
|
|
|||
|
It is also possible for a user to make the changes while logged on using
|
|||
|
another users account (the other user stepped out of the room without
|
|||
|
locking their workstation, or they wrote their password down in a notebook
|
|||
|
and the malicious user found it, etc, etc). In this case, even if the
|
|||
|
sysadmin traces the changes using the registry audit logs, they won't find
|
|||
|
the real culprit.
|
|||
|
|
|||
|
I have raised this isues of lax permissions with Microsoft and they looking
|
|||
|
into it.
|
|||
|
|
|||
|
Permissions set improperly
|
|||
|
|
|||
|
If the file system has a large number of files (say 500,000), it is
|
|||
|
impractical to examine the permissions on each file using file manager.
|
|||
|
Somar DumpAcl produces a report of permissions which groups files and
|
|||
|
directories with the same permissions, so the report of file system
|
|||
|
permissions is much shorter. Permissions are only shown for the root
|
|||
|
directory and files and directories below the root whose permissions differ
|
|||
|
from those of the root. If all files and directories have the same
|
|||
|
permissions, a report of permissions consists of a single item.
|
|||
|
|
|||
|
One of common ways for files to get "wrong" permissions is due to
|
|||
|
differences between the way permissions are treated when copying versus
|
|||
|
moving a file. Copying a file causes the file to inherit permissions from
|
|||
|
the directory into which the file is copied. Moving a file preserves
|
|||
|
existing permissions on the file. So, a user might create a file in a
|
|||
|
temporary directory whose initial permissions give Everyone full control.
|
|||
|
This user then decides to add some data to the file that they don't want
|
|||
|
other users to change. So they move the file to a directory where only they
|
|||
|
have write permission. However, the file will still have the original
|
|||
|
permissions, giving Everyone write permission. If the user had copied the
|
|||
|
file and then deleted the original, the file would have the same
|
|||
|
permissions as the directory. The Somar DumpAcl report makes it very easy
|
|||
|
to spot files with "wrong" permissions.
|
|||
|
|
|||
|
Remote procedure calls
|
|||
|
|
|||
|
NT programs use remote procedure calls (RPCs) to allow various system
|
|||
|
services to be performed on a remote computer (i.e. a computer other than
|
|||
|
the local computer where the program is executing). For example, the
|
|||
|
ability to modify the registry on remote computers is implemented using
|
|||
|
remote procedure calls.
|
|||
|
|
|||
|
There are mechanisms in NT for the RPC server to learn the username of the
|
|||
|
RPC client and then to limit the functions it will perform based on that
|
|||
|
username. However, as shown too many times in this document, there is a big
|
|||
|
difference between having good security mechanisms and having good
|
|||
|
security. If the RPC server ignores the username or incorrectly gives too
|
|||
|
many capabilities to the Everyone account or whatever, then there is a
|
|||
|
security hole. Since this whole aspect of NT seems poorly documented,
|
|||
|
there is really no telling how many security holes there are in this area.
|
|||
|
|
|||
|
Securing a shared workstation
|
|||
|
|
|||
|
Many users have asked how to secure a shared workstation so users cannot do
|
|||
|
any damage to the machine. For example, a workstation in a computer lab at
|
|||
|
a university. As described above, there is no way to secure the registry.
|
|||
|
The file system can be secured by setting the entire drive to the following
|
|||
|
permissions:
|
|||
|
|
|||
|
SYSTEM full control
|
|||
|
Administrators full control
|
|||
|
Everyone or Users read only
|
|||
|
|
|||
|
Permissions should then be reset on the %SYSTEMROOT%\SYSTEM32\CONFIG
|
|||
|
dirctory as follows:
|
|||
|
|
|||
|
SYSTEM full control
|
|||
|
Administrators full control
|
|||
|
CREATOR OWNER full control
|
|||
|
Everyone or Users add permission only
|
|||
|
|
|||
|
These settings allow users to create a profile, but prevent them from
|
|||
|
reading other users profiles, to avoid the security issues described in
|
|||
|
the section on Profiles contain sensitive information.
|
|||
|
|
|||
|
Permissions should also be reset on the TEMP directory
|
|||
|
(C:\TEMP or whatever) as follows:
|
|||
|
|
|||
|
SYSTEM full control
|
|||
|
Administrators full control
|
|||
|
CREATOR OWNER full control
|
|||
|
Everyone or Users add permission only
|
|||
|
|
|||
|
These settings allows users to use the TEMP directory, but avoid problems
|
|||
|
with users being able to read temporary files containing sensitive
|
|||
|
information that were created (and never deleted) by other users. Even if
|
|||
|
user remove files with sensitive information from the temporary directory,
|
|||
|
there is the issue of permissions being retained when a file is moved
|
|||
|
instead of copied (discussed in the section on Permissions set improperly).
|
|||
|
So the permissions on the TEMP directory should be set so initial
|
|||
|
permissions on a file are restrictive. Users can later make the file
|
|||
|
world-readable if they want to.
|
|||
|
|
|||
|
There are other files and directories to which users of a shared
|
|||
|
workstation may need write access:
|
|||
|
|
|||
|
* Some applications require write access to the application directory
|
|||
|
to store data. cc:Mail is an example.
|
|||
|
* Many older Windows applications require write access to the
|
|||
|
%SYSTEMROOT% directory to store .INI files. Newer 32 bit
|
|||
|
applications should use the user registry instead of .INI files.
|
|||
|
* DOS graphic programs require write access to
|
|||
|
%SYSTEMROOT%\SYSTEM32\CMOS.RAM.
|
|||
|
* The builtin NT backup program requires write access the
|
|||
|
%SYSTEMROOT%\SYSTEM32 directory to store temporary files.
|
|||
|
|
|||
|
The above list is not all-inclusive. You can enable failure auditing on all
|
|||
|
files and then examine the audit logs after making the most of the file
|
|||
|
system read-only to determine what files users need write access to. You
|
|||
|
can also use the Somar DumpAcl program to dump and print file permissions
|
|||
|
prior to making any changes.
|
|||
|
|
|||
|
Macro runs when document is opened
|
|||
|
|
|||
|
A WinWord document can contain a macro which runs when the file is opened.
|
|||
|
These macros can perform very powerful operations, including file i/o,
|
|||
|
sending mail or calling Win32 services. So a malicous user might ask
|
|||
|
another, unsuspecting user to read a document the first user wrote. This
|
|||
|
document contains a WordBasic macro which runs when the document is opened.
|
|||
|
The macro copies all files from the unsuspecting user's personal
|
|||
|
directories to a directory to which both users have read and write
|
|||
|
permission. The macro then sends mail to the malicious user notifying them
|
|||
|
of what happened. The document may take a while to start up, but the
|
|||
|
unsuspecting user assumes this is because the document is long. The
|
|||
|
malicous user later deletes the WordBasic macro from the document and
|
|||
|
notifies the unsuspecting user to replace any copy they made, so that
|
|||
|
all potentially incriminating evidence is destroyed.
|
|||
|
|
|||
|
It is also possible to write the macro so it calls a user written DLL that
|
|||
|
does something useful, as well as copying files and performing other
|
|||
|
hostile acts. This DLL might be large and complicated so that it would
|
|||
|
be very difficult to disassemble it and prove that it was doing something
|
|||
|
wrong. Even if you were able to prove that the DLL was accessing your
|
|||
|
files, the author could say this was due to a bug in the DLL. If you
|
|||
|
demanded the source from which the DLL was compiled, the auther could give
|
|||
|
you some modified source. When you pointed out that this source could not
|
|||
|
be used to build the DLL exactly, the author could reply that the source
|
|||
|
had been modified to fix bugs since the DLL was originally built, which is
|
|||
|
a perfectly reasonable explanation. By using a DLL in other words, there is
|
|||
|
never any incriminating evidence.
|
|||
|
|
|||
|
There are other programs besides WinWord which can create files which
|
|||
|
contain embedded macros which execute automatically when the file is opened
|
|||
|
in the creating application. For example, Microsoft Access and Lotus Ami
|
|||
|
Pro (these are just the programs I am aware of, I am sure there are many
|
|||
|
others). Also, Postscript files, believe or not, have file i/o capability.
|
|||
|
So if you open a postscript file in an interpretor, it might go out and
|
|||
|
modify any files to which you have write access. Also, Windows Help files
|
|||
|
(.HLP extension) can call DLLs (typical use is to customize the Help
|
|||
|
program in some way).
|
|||
|
|
|||
|
So, suppose you receive a package containing a .HLP, .EXE and a .DLL file
|
|||
|
all together. You want to browse the .HLP file to see what this package is
|
|||
|
all about and whether you trust it enough to run the .EXE file. You assume
|
|||
|
the .DLL is called by the .EXE only. When you open the .HLP file, the .DLL
|
|||
|
is executed and it's too late if you decide the package is untrustworthy.
|
|||
|
|
|||
|
WinWord and Access both allow the user to hold down the shift key when
|
|||
|
opening a document to prevent any macro from running. It is difficult to
|
|||
|
get in the habit of doing this (I am speaking from experience), especially
|
|||
|
when most of the Word or Access documents you open are your own, and
|
|||
|
therefore known to be safe.
|
|||
|
|
|||
|
Why authors of programs feel the need to include powerful embedded macro
|
|||
|
languages is something I really don't understand. It is possible to
|
|||
|
accomplish most of what embedded languages do using DDE or OLE automation.
|
|||
|
The advantage is that the end user learns one scripting language
|
|||
|
environment and then applies it to different applications, as opposed to
|
|||
|
learning a new language for each application. Microsoft has decided to
|
|||
|
include VBA in all of their products, which reduces the amount of learning
|
|||
|
to some extent. But why, I ask, not just provide good OLE Automation
|
|||
|
capabilities so we don't need embedded macro languages at all, but can
|
|||
|
instead use a separate Visual Basic program?
|
|||
|
|
|||
|
In any case, if it is absolutely necessary (for political or marketing
|
|||
|
reasons) to include an embedded scripting language in an application, then
|
|||
|
users should be allowed to set an option in the application so that they
|
|||
|
are prompted before any macros are run (e.g. "this document contains an
|
|||
|
embedded macro. Do you want to run this macro?"). There should be no way
|
|||
|
for the document to override this option and the option setting should be
|
|||
|
persistent (saved in a .INI file or the user's registry profile). If
|
|||
|
absolutely necessary, the application can be designed so that if the user
|
|||
|
refuses to run the macro, the application will refuse to open the document.
|
|||
|
|
|||
|
Interesting Note. I was just reading about the Good Times mail "virus".
|
|||
|
This is a hoax which alleged that there was a way to write a mail message
|
|||
|
such that if you read the mail message, all your files would be deleted.
|
|||
|
Users reading this hoax become frantic that they can no longer read any
|
|||
|
mail without endangering their system. Actually, there is an element of
|
|||
|
truth to this. If the mail message included an attached Word document, then
|
|||
|
reading that attachment might cause a macro to be run which deleted all
|
|||
|
your files. These attachments can be sent using SMTP MIME or Microsoft
|
|||
|
and other propertiary mail systems.
|
|||
|
|
|||
|
File sharing issues
|
|||
|
|
|||
|
The SMB file and print server protocol used by NT is much more resistant to
|
|||
|
impersonation and session hijacking than the NFS file sharing protocol used
|
|||
|
on Unix. This is significant since NFS is one of the biggest security
|
|||
|
weaknesses on Unix.
|
|||
|
|
|||
|
It is remotely conceivable that a gateway machine could hijack an SMB
|
|||
|
session and then read/write any files to which the true user of that
|
|||
|
session had access. However, the likelihood of this happening is very small,
|
|||
|
since true gateway machines are seldom used on LANs due to performance
|
|||
|
reasons. If the machine attempting the impersonation or hijacking is merely
|
|||
|
a node on the same Ethernet or Token Ring as the client and/or server, then
|
|||
|
it would probably be very difficult to perform the impersonation or
|
|||
|
hijacking. In particular, it would be difficult to get packets routed to
|
|||
|
the impersonating machine instead of the true destination machine.
|
|||
|
|
|||
|
In any case, the much more relevant security risk is that user data is
|
|||
|
transmitted in the clear and so can be easily read by any computer on any
|
|||
|
LAN over which the data passes. Remember that if you connect to a remote
|
|||
|
network drive over the Internet or other insecure connection, you are
|
|||
|
passing data back and forth whenever you read or write a file on the
|
|||
|
network drive. File manager gives the illusion of the data being local,
|
|||
|
which makes remote files easy to use, but which can also lead to security
|
|||
|
breaches.
|
|||
|
|
|||
|
This risk of eavesdropping does not exist for logons passwords, since these
|
|||
|
are never transmitted in the clear over the network, but rather a
|
|||
|
challenge-response protocol is used instead.
|
|||
|
|
|||
|
In the long run, it would be nice if Windows NT were designed so that all
|
|||
|
SMB protocol data passed over the network was automatically encrypted,
|
|||
|
using a key which was randomly chosen for each NetBios session. No directly
|
|||
|
competing operating systems have this feature and, until some do, it is
|
|||
|
unlikely NT will. If you have a need to transmit data over an insecure
|
|||
|
network and you want to be protected from eavesdroppers, you will need to
|
|||
|
use some sort of encryption. For example, there are router boxess that can
|
|||
|
encrypt all TCP data, but not the IP header which is used for routing. Put
|
|||
|
one of these routers at two sites and configure with the same key all data
|
|||
|
passed between those sites with be secure. You are still open to traffic
|
|||
|
analysis, however. Traffic analysis is a concern, for example, when an
|
|||
|
undercover spy wants to send reports back to the home office, or similar
|
|||
|
scenarios.
|
|||
|
|
|||
|
Profiles contain sensitive information
|
|||
|
|
|||
|
Some users put their userid and password on the command line of the program
|
|||
|
manager item, for example for Microsoft Mail. This way they can start mail
|
|||
|
by just double-clicking the mail icon, without having to type in their
|
|||
|
password. This password will be embedded in the user profile.
|
|||
|
|
|||
|
The local user profile is stored in %SYSTEMROOT%\SYSTEM32\CONFIG and also
|
|||
|
on a file server share, if a named, domain-wide user profile has been
|
|||
|
assigned for the user. Permissions on these directories should
|
|||
|
be like:
|
|||
|
|
|||
|
SYSTEM full control
|
|||
|
Administrators full control
|
|||
|
CREATOR OWNER full control
|
|||
|
Everyone or Users add permission only
|
|||
|
|
|||
|
This is how permissions are initially set on %SYSTEMROOT%\SYSTEM32\CONFIG.
|
|||
|
Since CREATOR OWNER has full control, each user will have full control of
|
|||
|
their own profile. Since Everyone and Users have only add permission, they
|
|||
|
will be able to create a profile, but won't be able to read other users
|
|||
|
profiles.
|
|||
|
|
|||
|
In some cases, such as with 3270 emulator programs, passwords are included
|
|||
|
in keyboard macros (so the user can use F12 or whatever to initiate the
|
|||
|
entire logon sequence). These macros may be stored in the user profile or
|
|||
|
a file. If a file, users should be warned to make sure the directory where
|
|||
|
this file is stored is not world-readable. This is primarily a concern on
|
|||
|
shared workstations.
|
|||
|
|
|||
|
Passwords in general
|
|||
|
|
|||
|
If a password is short and obvious, then it can be guessed. If it is
|
|||
|
written down in a notebook, it can be discovered. So pick a long password,
|
|||
|
consisting of a mixture of upper and lower case letters and punctuation,
|
|||
|
never write it down, and change it often (but not so often you feel the
|
|||
|
need to write it down). This is all well-known, but so important that it is
|
|||
|
worth repeating nonetheless. Finding someone's password written down is
|
|||
|
the lowest-tech way to break into a system, but unfortunately also the
|
|||
|
most common.
|
|||
|
|
|||
|
Special shares
|
|||
|
|
|||
|
NT shares the %SYSTEMROOT%\SYSTEM32\REPL\EXPORT\SCRIPTS directory, so that
|
|||
|
users can read their login script during login. Normally, all of the
|
|||
|
scripts are readable by Everyone. So be careful what you put in these
|
|||
|
scripts and this directory. Other special shares are created by other
|
|||
|
installed services, such as SNA server or SMS. Use Somar DumpAcl to dump
|
|||
|
a list of shares and their permissions. And examine the permissions on the
|
|||
|
directories underlying the shares. Remember that the final access
|
|||
|
permission on a shared directory is the intersection of the share and NTFS
|
|||
|
permissions. So while you are setting permissions to restrict access, be
|
|||
|
careful you don't unintentionally completely remove access.
|
|||
|
|
|||
|
Win32 services default to running under SYSTEM account
|
|||
|
|
|||
|
Many of the internet Unix breakins occurred when someone discovered a bug
|
|||
|
in a TCP/IP service and took advantage of this bug to break into the
|
|||
|
system. For example, the infamous Internet worm took advantage of a bug
|
|||
|
which caused the stack to be overwritten if the finger daemon received bad
|
|||
|
input. Obviously, you should try to only run services which do not have
|
|||
|
bugs. However, the danger if there is a bug is greatly reduced if the
|
|||
|
service runs under an ordinary user account with restricted permissions,
|
|||
|
instead of under the SYSTEM account (which corresponds to the Unix root
|
|||
|
account). So, for example, run your SMTP service under an smtpuser account,
|
|||
|
and give this account limited privileges, instead of running it under the
|
|||
|
SYSTEM account.
|
|||
|
|
|||
|
Viruses
|
|||
|
|
|||
|
If you are not familiar with viruses, there are many good books on the
|
|||
|
subject. NT is better secured than DOS from viruses, provided you normally
|
|||
|
run under an ordinary user account (not administrator), and keep most
|
|||
|
system files protected against modification by user accounts. NT is also
|
|||
|
secure against boot sector viruses, which are the most difficult to
|
|||
|
eradicate, provided you never boot with a floppy in the drive, since NT
|
|||
|
does not allow non-privileged programs to write directly to disk.
|
|||
|
|
|||
|
Data on disk not encrypted
|
|||
|
|
|||
|
Anyone who has physical access to a machine can read file system data by
|
|||
|
either reinstalling NT (the installer can pick the initial Administrator's
|
|||
|
password and Administrator can read all files) or booting from a DOS floppy
|
|||
|
and reading raw sectors using a low level disk utility. In both cases, the
|
|||
|
user would need access to the floppy drive. On many machines, the floppy
|
|||
|
can be disabled via the BIOS. There are two ways to get around a disabled
|
|||
|
floppy:
|
|||
|
|
|||
|
* Resetting the BIOS. Typically this is done by setting a jumper which
|
|||
|
causes a slow discharge of the battery needed to preserve the BIOS settings
|
|||
|
in CMOS. Discharge might take several hours, or several minutes, depending
|
|||
|
on your motherboard. Don't trust manufacturer's specs, since this is not
|
|||
|
something anyone tests.
|
|||
|
* Moving the hard drive to another machine and reading it there.
|
|||
|
|
|||
|
These techniques require opening the computer case, so there should be no
|
|||
|
risk for machines stored in open areas where opening a case would be
|
|||
|
immediately noticed.
|
|||
|
|
|||
|
If the case can be opened, then you will need to encrypt data on disk.
|
|||
|
There are various products which allow you to do this, with varying degress
|
|||
|
of user-friendliness and transparency. (Any manufacturers who would like me
|
|||
|
to list there product and add hypertext links to their Web pages, just drop
|
|||
|
me a note).
|
|||
|
|
|||
|
If you need military grade security, it should be noted that fragments of
|
|||
|
any file that is stored unencrypted in memory can be written to the paging
|
|||
|
file. So software encryption products will not be sufficient in this case.
|
|||
|
What you need instead is a disk controller which encrypts data on the fly
|
|||
|
as it is transferred between memory and disk. Typically, the user would be
|
|||
|
prompted for a password by the disk controller BIOS during cold boot. An
|
|||
|
examples of where military grade security is needed is a embassy which
|
|||
|
contains secret data on PCs. These PCs might fall into the hands of a
|
|||
|
hostile intelligence agency with adequate resources to extract information
|
|||
|
from the fragments of data in the paging file. For most users, such
|
|||
|
military grade security is not really necessary.
|
|||
|
|
|||
|
Backup/Restore user rights allow reading/writing all files
|
|||
|
|
|||
|
It is obvious that to perform a backup, the operator needs to be able to
|
|||
|
read all files. What is not obvious is that tape need not be involved. It
|
|||
|
is trivial to write a program in C which takes advantage of the backup right
|
|||
|
to read any file in the system. So be careful of who you give the backup
|
|||
|
right to. The use of the backup right as well as accesses to files can be
|
|||
|
logged in the Audit log. Users who have both backup and restore rights can
|
|||
|
read any file, modify it and write it back. As with the Backup right, use
|
|||
|
of the restore right can be logged. User Manager is used to assign rights
|
|||
|
to users and enable auditing of the use of user rights.
|
|||
|
|
|||
|
Data on backup tapes not encrypted
|
|||
|
|
|||
|
The NT backup program does not encrypt data on tape. So anyone who has a
|
|||
|
tape can read it on another machine on which the user has restore
|
|||
|
privileges, such as their personal NT workstation.
|
|||
|
|
|||
|
FTP/Telnet passwords
|
|||
|
|
|||
|
Microsoft does a good job of warning people about the fact that FTP
|
|||
|
passwords are transmitted in the clear. Especially for machines connected
|
|||
|
to the Internet, it is probably best to allow only anonymous FTP, so that
|
|||
|
no one ever attempts to transmit a password to your machine over the
|
|||
|
internet. If you FTP or Telnet from your machine to another machine on the
|
|||
|
internet, the same warning applies: any password you enter or any
|
|||
|
data you transmit, could be intercepted by other machines on networks over
|
|||
|
which the data is passed.
|
|||
|
|
|||
|
FTP service directory
|
|||
|
|
|||
|
The home directory you specify for the FTP service is only the initial
|
|||
|
current directory. Ftp users can change their current directory. So if you
|
|||
|
specify a home directory of c:\ftp, any ftp user can change to c:\ and thence
|
|||
|
change to any subdirectories under c:\. Normal NTFS permissions will apply,
|
|||
|
of course, to whatever account the ftp user is running under. If you don't
|
|||
|
want ftp users to be able to see the root directory of your primary
|
|||
|
partition, you should create a separate partition for ftp and then
|
|||
|
configure ftp so that it can only read and/or write to that partition.
|
|||
|
|
|||
|
Application software issues
|
|||
|
|
|||
|
The really valuable data on a computer system is what is produced by
|
|||
|
applications and stored in file and databases. It is very important to
|
|||
|
write and install these applications with an eye on security. It does no
|
|||
|
good to follow all the guidelines above and then have SQL Server setup in
|
|||
|
such a way that anyone with an account can read the entire database. Or to
|
|||
|
have an transaction processing monitor which runs under a privileged
|
|||
|
account and allows unprivileged users to submit requests that give them
|
|||
|
access to the entire file system.
|
|||
|
|
|||
|
Send comments and questions to info@somar.com
|
|||
|
All material Copyright <20> 1995 Somar Software. Last updated 3 June 1995.
|
|||
|
|