If you are a webmaster, you
will find that one of the most valuable things you can use
is the referrer. On the other hand, if you are a surfer,
you may want to disable this feature as it can be a security
risk and a violation of your privacy.
What is this referrer thingie? Well, all web servers have
the capability to create log files and virtually all web
masters (at least those who know what they are doing) use
these logs to determine how their web site is doing. The
log files contain one line for each hit to the web site.
The format and contents of the line vary from server to
server (and webmasters can specify they want more or less
information), but in general it has an incredible amount
of information about that one hit.
Some of the information gathered for each
hit to a web site includes (among other things):
- The requested file (for example, index.html)
- A status code indicating success or error (404 errors,
for example)
- The browser type being used by the surfer (this is the
agent name, and it can also be the name of a search engine
spider or a spam harvester).
- The screen resolution of the surfer's monitor
- The date and time (locally to the server) of the hit
- The TCP/IP address of the surfer (yes, every web page
that you have ever looked at has your TCP/IP recorded in
a web server log file somewhere).
- The URL where the surfer came from
It's this last statistic that causes some concern. Oh,
there is a minor issue in that your TCP/IP address is stored
in the server logs when you access a page, but this is not
very important. You see, these logs do not tend to last
very long as they get very large extremely quickly. Many
(if not most) web sites purge these as soon as statistics
are gathered. Conceivably, of course, this could be of concern
if an investigation were performed ... and these logs are
looked at by webmasters for hacking attempts.
No, the important information is the referrer field. Why?
Well, first there is the privacy question. If a webmaster
knew your TCP/IP address (and he would have to know your
address specifically, since this is the only thing relating
you to the line in the log file - there is no name or email
address stored there) he could get an idea of what you looked
at before you came to his site. Thus, there is a remote
chance that your privacy could be compromised ... a very
remote chance since this is virtually never done by any
webmaster.
The second, and very critical problem is a real security
risk. You see, many websites allow you to log into their
sites to personalize your experience. These sites allow
you to enter personal data such as credit card information,
social security numbers and other items into their database.
Generally cookies are used to identify you as you move from
page to page through the web site. Cookies are by far the
best and preferred way to do this - it's called maintaining
context. However, cookies are frowned upon my many surfers
for various reasons (mostly blown out of proportion fears
created by a press that feels it needs dangers and bad news
to stay competitive).
Thus, some clever webmasters have come up with alternate
ways to allow their web sites to know that "you are
you" as you move around on their site. A very sloppy
method consists of adding a username and password on to
the end of each URL.
For example, suppose you log into a shopping site with
a username and password like so:
URL: http://www.anyshoppingsite.com Username: innocent
Password: naive
If you moved to a page called "toys.htm", the
URL might become:
http://www.anyshoppingsite.com?u=innocent?p=naive
You see the problem? Not yet? Okay, there is no problem
as you move around from page to page within the shopping
site. The problem results when you surf to another page
outside of the shopping site.
What happens? Well, if you surfed to another site from
the page above, that URL complete with the username and
password would be added to the server log files. Guess what,
your username and password just got recorded in plain text
somewhere completely unexpected.
So what's the problem really? Well, let's say you went
to your shopping site, logged in and made some purchases.
To make it simple for you, your credit card numbers are
stored on the site and you can retrieve them at any time
after you are logged in. Everything seems safe because you
need a username and password to get in.
Now, when you are finished shopping you are supposed to
log out. This would remove the username and password from
the referrer. However, you don't do this and instead surf
to another site. You leave your username and password in
that webmasters log files. If that webmaster happens to
check his log files he could get your username and password,
log into your account and get your credit card numbers.
Are you alarmed yet?
Okay, how do you stop this from happening? It's relatively
easy, actually. You get a product called AdSubtract and
install it on your computer. By default this product will
remove the referrer field as you surf around. You are now
protected.
Oh yes, one side effect is you cannot just surf to that
shopping site, since the login information is removed by
AdSubtract. Fortunately, AdSubtract allows you to configure
exceptions. All you need to do is enter the "filters"
section, add your shopping site and specify to not remove
the referrer.
And that, my friends, is how you protect yourself from
one of the internet's biggest gaping security holes. I hope
this has been of use to you. |