Web Security


References:


Web Assets and Risks

Discussion summarizes Yeager and McGrath, section 7.1.

Assets to Protect

Risks

Vulnerable points in Web:

Common Web Security Mechanisms

Threats to Internet Security

Threats to Web Server Software

Compare Web security to UNIX sendmail security. sendmail...

In comparison, Web servers...

There one additional problem in Web servers, with no parallel in sendmail. There are potential security holes in Web scripts (e.g., scripts that invoke external commands, perhaps through system call).

Securing a Web Server

Restricting Access to Documents

Web servers use access control lists to enforce authorization to use Web documents.

In NCSA's httpd, user can create .htaccess file to control access:

<Limit GET>
order deny,allow
deny from all
allow from .cs.vt.edu
allow from .ee.vt.edu
allow from 128.173.40.105
</Limit>

How Password Protected Web Pages Work

NCSA's httpd uses basic authentication: use a simple password for authentication, and restrict document access according to user name, group membership, or user agent IP address. Example (for NCSA httpd, in .htaccess file for a directory) [from Stein, p. 141]:

AuthName      Saturn
AuthType      Basic
AuthUserFile  /usr/local/etc/httpd/conf/passwd
AuthGroupFile /usr/local/etc/httpd/conf/group

<Limit GET>
require user huey dewey louie
require group web-maintainers
</Limit>

Web server maintains its own password file, separate from host password file. For example, in NCSA's httpd, use

htpasswd [-c] password_file user

to create a password file (if -c is present) or to add a user to the password file. The htpasswd program is in httpd's support directory.

A group file is created with a text editor. Each line consists of a group name followed by a colon followed by a comma separated list of user names:

web-maintainers:  sally,fred
admin:            otto,loise

When GET arrives for document with restricted access:

There are alternatives to Basic authentication that use cryptography, so a sniffer cannot capture a uuencoded password and reuse it. (One is public key encryption. Another is to use passwords that are good for only one use, along with a card that a user possesses.)


Return to CS6204 home page.

Last modified on 12 November 1996.

Send comments to abrams@vt.edu.
[This is http://ei.cs.vt.edu/~wwwbtb/fall.96/ClassNotes/security.html.]