#!/usr/local/bin/perl # # header.cgi # # Output standard CNS Security webpage headers (call using SSI include # directive in shtml file) # use warnings; use strict; use lib ('lib'); use CGI qw/:standard/; use SecHdr; print header; # HTTP headers (even though SSI # include, Apache will expect this) #SecHdr::header('printpage.js'); # Security headers SecHdr::header(); # Security headers

Patching

What is a patch?

As the name implies, a patch is a fix. Applied to computers, it is a fix for a software problem. Patches usually come in the form of a program that is designed to fix (or patch) another program.

Why are patches needed? My program works fine!

In some programs, subtle bugs or loopholes are discovered that would allow an attacker to do something the program was not originally intended for. In most cases, these bugs are never seen by the common user while executing the program.

I don't understand how a "bug" could make me vulnerable.

Suppose a programmer wants a field that allows the user to enter a password. Now, if the programmer allowed only, say, 64 characters in memory to hold this password, and didn't check the entered length, what would happen if 65 characters were entered? The last character would overwrite a character in memory. By carefully crafting these overwriting characters, one has built a simple type of exploit called a buffer overflow.

Ok, I have many programs, how can I know if there are bugs?

Usually, the vendor of the software will respond to a bug report and release either a new version of the software (one form of a patch), or a program to fix the software (another form of a patch).

For the Microsoft Windows operating systems, the task is nicely automated - a website can check all the operating system components, and update them accordingly. The website is:

www.windowsupdate.com

You can also learn to set up windows to automatically update itself.

How often should I check for updates, or patches?

The security team recommends checking once a week. It is also advisable to peruse some security related websites, for more up to date news on new bugs that are discovered, and new patches that may be applied. We recommend this website:

http://www.incidents.org

What if I don't run windows?

Users of unices varients sometimes have it tougher. Oftentimes, programs that listen on the internet (and are therefore susceptible to remote attacks) are separate from the operating system (eg OpenSSH, Apache), and therefore need to be checked for patches on an independant basis. While we know that Fedora linux has an automatic updates feature, users of other unices should probably consult with the vendor of their particular distribution (Mandrake, Slackware, SuSE, etc.) #!/usr/local/bin/perl # # footer.cgi # # Output standard CNS Security webpage footers (call using SSI include # directive in shtml file) # use warnings; use strict; use lib ('lib'); use CGI qw/:standard/; use SecHdr; print header; # HTTP headers (even though SSI # include, Apache will expect this) SecHdr::footer; # Security footers This file last modified Thursday, 04-May-2006 15:03:14 EDT