You are on page 1of 11

Anonymity on the web

By Theraider & Dangerous R.


[tableofcontents]
01 - table of contents
02 - introduction
03 - first tips
04 - about proxies
05 - cookies
06 - ftp transfers
07 - secure transactions
08 - SSL tunelling
09 - anonymity on irc
10 - mail crypto (and pgp usage)
11 - icq privacy
12 - spyware
13 - cleaning tracks
14 - ending words
[ introduction ]
Nowadays, everyone wants privacy on the web, because no matter where you go,
someone could be watching you. Someone like your employer, someone trying to
hack your system, companies gathering all your info to sell to yet other companies,
or even the government, may be on your track while you peacefully surf the web.
Thus, anonymity on the web means being able tu use all of its services with no
concern about someone snooping on your data.
Your computer being connected to the net has an IP [Internet Protocol] address. If
you have a dial-up connection, then your IP changes every time you connect to the
internet (this is not always true, though. There are dialup isps, specially for
university students, that do have static ips). Cable modems and DSL connections
have a static IP, which means that the IP address does not change. One of the goals
of getting anonymous is to make sure your ip, either static or dynamic) isn't revealed
to other users of the internet, or to server administrators of the servers you roam
around when using internet services.
This text tries to give you some hints on how to maintain your anonimity on the web.
Some of the hints may sound banal, but think of, if you really abide them in every
situation.
[ first tips ]
When chatting on IRC, ICQ, AIM (etc..), do not give out personal information about
yourself, where you live, work, etc.
Do not use your primary email address (the one your ISP gave you) anywhere
except to family members, close friends or trusted people. Instead create for
yourself a web-based email account such as yahoo, hotmail, dynamitemail,
mail.com, etc. and use this e-mail address to signing up for services, when in the
need to give your mail to download something, or to publish on your homepage.

When signing up for services on the web, don't give your real information like
address, phone number and such unless you really need to do so. This is the kind of
information that information gathering companies like to get, so that they can sell
out and fill your mailbox with spam.
Use an anonymous proxy to surf the web. This makes sure your ip doesn't get stored
on the webserver logs. (Webservers log every GET request made, together with
date, hour, and IP. This is where the proxy comes in. They get the ip from the proxy,
not yours)
Use a bouncer to connect to IRC networks, in case you don't trust the
administrators, or the other users. A bouncer is a program that sits on a
permanently connected machine that allows you to connect there, and from there to
the irc server, just like a proxy works for webservers.
Use anonymous remailers to send out your e-mails.
Cryptography can also help you by making sure the material you send out the web,
like by email, etc, is cyphered, not allowing anyone that doesn't have your key to
read it (in key-based cryptography). Programs like PGP (pretty good privacy) are
toolkits with all you need to cypher and uncypher your stuff.
Delete traces of your work with the computer including history files, cache or backup
files.
[ about proxies ]
Proxies are caches that relay data. When you configure your web browser to use a
proxy, it never connects to the URL. Instead it always connects to the proxy server,
and asks it to get the URL for you. It works similarly with other type of services such
as IRC, ICQ etc. There'll won't be direct connection between you and the server, so
your real IP address won't be revealed to the server. When you view a website on
the server, the server won't see your IP. Some of web proxies do not support
forwarding of the cookies whose support is required by some of the websites (for ex.
Hotmail).
Here are some anonymous proxies that you can use to surf anonymously (notice that
some of these may be a payed service):
Aixs - http://aixs.net/
Rewebber - http://www.anon.de/
Anonymizer - http://www.anonymizer.com/
The Cloak - http://www.the-cloak.com/
You'll highly probably find many websites that provide the lists of unauthorised
proxies and remailers . Such lists are being compiled usually with the help of port
scanners or exploit scanners, scanning for computers with wingate or other proxies'
backdoors. Using these proxies is illegal, and is being considered as unauthorized
access of computer. If you get such list to your hands, check if the info is legal or
compiled by script kiddie, and act acordingly.
If you anyhow decide not to use proxy, at least do not forget to remove your
personal information from your browser. After you remove details like your name
and e-mail address from your browser, the only info a Web site can sniff out is your
ISP's address and geographical location. Also Java and JavaScript applets can take
control of your browser unexpectedly, and if you are surfing to unknown and
potentially dangerous places you should be aware of that. There are exploitable
browser bugs (mainly Internet explorer ones) reported ever week.

[ cookies ]
Maybe you're not aware of the fact that if you have the "allow cookies" feature in
your browser on, websites can store all sorts of information on your harddrive.
Cookies are small files that contain various kind of information that can be read bt
websites when you visit them. The usual usage is to track demographics for
advertising agencies that want to see just what kinds of consumers a certain site is
attracting. Web sites also use cookies to keep your account information up-to-date.
Then for instance when you visit your e-mail webbased account without being
unlogged some hours later, you find yourself being logged on, even if you turn off
your computer. Your login and password was simply stored on your harddrive in
cookie file. This is security threat, in case that there is more persons who have the
access to your computer.
Most of the browsers offer the possiblity to turn off the cookies, but some of sites
like Hotmail.com require them to be turned on. In case you decided to allow cookies,
at least never forget to log off from the websites when you're finishing visiting them.
[ ftp transfers ]
When using an FTP client program to download files, assure yourself, that it's giving
a bogus password, like guest@unknown.com, not your real one. If your browser lets
you, turn off the feature that sends your e-mail address as a password for
anonymous FTP sessions.
[ secure transaction ]
Everything being sent from the web server to your browser is usually in plain text
format. That means, all transferred information can be easily sniffed on the route.
Some of the web servers support SSL (which stands for Secure Socket Layer). To
view and use these websites you'll need SSL support in your browser as well. You
recognize, that the connection is encrypted, if URL starts with https:// instead of
usual http://. Never use web server without SSL for sending or receiving sensitive
private or business information (credit card numbers, passwords etc.)
[ SSL tunelling ]
What is SSL?
SSL stands for Secure Socket Layer. The ?Secure? implies an encryption, while
Socket Layer denotes an addition to the Window Socket system, Winsock. For those
that don?t know, a Socket is an attachment to a port on a system. You can have
many sockets on one port, providing they are non-blocking (allowing control to pass
through to another socket aware application which wishes to connect to that port).
A Secure Socket Layer means that any sockets under it, are both secure and safe.
The idea behind SSL was to provide an encrypted, and thus, secure route for traffic
along a socket based system, such as TCP/IP (the internet protocol). Doing this
allows security in credit card transactions on the Internet, encrypted and protected
communiqu along a data line, and overall peace of mind.
The SSL uses an encryption standard developed by RSA. RSA are a world respected
American organisation that specializes in encryption and data security. Initially, they
developed a cipher length of only 40 bits, for use with the Secure Socket Layer, this
was considered weak and therefore a longer much more complicated encryption

cipher was created, 128 bits. The reasoning behind it was simple: it needs to be
secure.
The RSA site puts the advantage of a longer encryption length pretty clearly:
because 40-bit encryption is considered to be relatively weak. 128-bits is about 309
septillion times ( 309,485,000,000,000,000,000,000,000 ) larger than 40-bits. This
would mean it would take that many times longer to crack or break 128-bit
encryption than it would 40-bit.
If you want more information on the technicalities or RSA?s SSL encryption engine,
visit their site: http://www.rsasecurity.com/standards/ssl.
But what does all this encryption and security have to do with you?
Well, that?s a simple question. No matter how hard you try, at times your privacy
will need to be knowingly invaded so you can make use of the product offered for
doing so. If you think about food, for example, one cannot eat without swallowing.
When we wish to make a transaction or view a site on the internet, where we have
to give enough information away so that it happens, we also want to be assured no
one else along the line gathers that data. An encrypted session would mean our data
is not at the hands of any privacy perpetrators unless they knew how to decode it ?
and the only ones in the know, are those you specifically wish. SSL uses public key
encryption as explained in the PGP section.
To put this at a head: if you use an encrypted connection or session, you can be
relatively assured that there are no prying eyes along the way.
And how do I implement SSL with SSL Tunnelling?
We know that a Secure Socket Layer is safe, but what we don?t know is what a
Tunnel is. In the most simplistic form, a tunnel is a proxy. Like proxy voting in
general elections, a tunnel will relay your data back and forth for you. You may be
aware though, that there are already ?proxies? out there, and yes, that is true.
Tunnelling is done via proxies, but it is not considered to be the same as a standard
proxy relaying simply because it isn?t.
Tunnelling is very special kind of proxy relay, in that it can, and does relay data
without interfering. It does this transparently and without grievance or any care for
what is passing its way.
Now, if we add this ability to ?tunnel? data, any data, in a pipe, to the Secure
Sockets Layer, we have a closed connection that is independent of the software
carrying it; and something that is also encrypted. For those of you wanting to know a
little more about the technicalities, the SSL layer is also classless in the sense it does
not interferer with the data passed back and forth ? after all, it is encrypted and
impossible to tamper with. That attribute means an SSL capable proxy is able to
transfer data out of its ?proxied? connection to the destination required.
So to sum up, we have both a secure connection that does the job and relays things
in the right direction; and we have direct tunnel that doesn?t care what we pass
through it. Two very useful, and almost blind entities. All we need now is a secure
proxy that we can use as the tunnel.
Proxies:

Secure proxies are alike standard proxies. We can either use an HTTP base SSL
equipped proxy - one specifically designed for security HTTP traffic, but because of
the ignorant nature of SSL communication, it can be bent to any needs ? or we can
use a proper SSL service designed for our connection ? like you would use a secure
NNTP (news) program with a secure proxy on port 563 instead of taking our long
way - which would probably work as well.
A secure HTTP proxy operates on port 443. Host proxies are not public, that means
they operate for, and allow only traffic from their subnet or the ISP that operates
them ? but, there are many badly configured HTTP proxies and some public ones out
there. The use of a program called HTTrack (available on Neworder) will aid you in
scanning and searching for proxies on your network or anywhere on the Internet if
your ISP does not provide you with one.
Neworder also features a number of sites dedicated to listing public proxies in the
Anonymity section. While it?s often hard to find a suitable fast proxy, it?s worth the
effort when you get one.
So how can I secure my connections with SSL Tunnelling?
That?s a big question, and beyond the scope out this tuition as it must come to and
end. I can however, point you in the right direction of two resources that will aid you
in tunnelling both IRC, and most other connections via a HTTP proxy.
For Windows, the first stop would be http://www.totalrc.net?s Socks2HTTP. This is
an SSL tunnelling program that turns a normal socks proxy connection into a
tunnelled SSL connection.
The second stop, for both Windows and Unix is stunnel. Stunnel is a GNU kit
developed for SSL tunnelling any connection. It is available for compile and download
as binary here: Stunnel homepage - http://mike.daewoo.com.pl/computer/stunnel
[ anonymity on irc ]
A BNC, or a Bouncer - is used in conjunction with IRC as a way of hiding your host
when people /whois you. On most IRC networks, your host isnt masked when you
whois, meaning the entire IP appears, like 194.2.0.21, which can be resolved. On
other networks, your host might be masked, like IRCnetwork-0.1 but it can still give
valuable information, like nationality if your host is not a IP, but a DNS resolved
host, like my.host.cn would be masked to IRCnetwork-host.cn but this would still tell
the person who whoised you, that you are from China.
To keep information such as this hidden from the other users on an IRC network,
many people use a Bouncer, which is actually just a Proxy. Let us first draw a
schematic of how a normal connection would look, with and without a BNC installed.
Without a BNC:
your.host.cn <<-->> irc.box.sk
With a BNC:
your.host.cn <<-->> my.shell.com <<-->> irc.box.sk
You will notice the difference between the two. When you have a BNC installed, a

shell functions as a link between you and the IRC server (irc.box.sk as an example).
You install a BNC on a shell, and set a port for it to listen for connections on. You
then login to the shell with your IRC client, BitchX/Xchat/mIRC, and then it will login
to the IRC server you specify - irc.box.sk in this case. In affect, this changes your
host, in that it is my.shell.com that makes all the requests to irc.box.sk, and
irc.box.sk doesn't know of your.host.cn, it has never even made contact with it.
In that way, depending on what host your shell has, you can login to IRC with a host
like i.rule.com, these vhosts are then actually just an alias for your own machine,
your.host.cn, and it is all completely transparent to the IRC server.
Many servers have sock bots that check for socket connections. These aren't BNC
connections, and BNC cannot be tested using a simple bot, unless your shell has a
socket port open (normally 1080) it will let you in with no problem at all, the shell is
not acting as a proxy like you would expect, but more as a simple IRC proxy, or an
IRC router. In one way, the BNC just changes the packet and sends it on, like:
to: my.shell.com -> to: irc.box.sk -> to: my.shell.com from: your.host.cn <- from:
my.shell.com <- from: irc.box.sk
The BNC simply swaps the host of your packet, saying it comes from my.shell.com.
But also be aware, that your own machine is perfectly aware that it has a connection
established with my.shell.com, and that YOU know that you are connected to
irc.box.sk. Some BNCs are used in IRC networks, to simulate one host. If you had a
global IRC network, all linked together, you could have a local server called:
cn.myircnetwork.com which Chinese users would log into. It would then Bounce
them to the actual network server, in effect making all users from china have the
same host - cn.myircnetwork.com, masking their hosts. Of course, you could change
the host too - so it didn't reveal the nationality, but it is a nice gesture of some
networks, that they mask all hosts from everyone, but it makes life hard for IRCops
on the network - but its a small price to pay for privacy.
Note: Even if you do use IRC bouncer, within DCC transfers or chat, your IP will be
revealed, because DCC requires direct IP to IP connection. Usual mistake of IRC user
is to have DCC auto-reply turned on. For an attacker is then easy to DCC chat you or
offer you a file, and when IRC clients are connected, he can find out your IP address
in the list of his TCP/IP connections (netstat).
How do I get IRC bouncer?
you download and install bouncer software, or get someone to install it for you
(probably the most known and best bouncer available is BNC, homepage :
http://gotbnc.com/)
you configure and start the software - in case it's bouncer at Unix machine, you start
it on your shell account (let's say shell.somewhere.com)
you open IRC and connect to the bouncer at shell.somewhere.com on the port you
told it to start on.
all depending on the setup, you may have to tell it your password and tell it where to
connect, and you're now on irc as shell.somewhere.com instead of your regular
hostname
[ mail crypto ]
Usually the safest way to ensure that your e-mail won't be read by unauthorised
persons is to encrypt them. To be compatible with the rest of the world I'd suggest
to use free PGP software.

PGP (Pretty Good Privacy) is a piece of software, used to ensure that a message/file
has not been changed, has not been read, and comes from the person you think it
comes from. Download location: http://www.pgpi.org/
How does pgp Work?
The whole idea behind PGP is that of Public and Private keys. To explain the
algorithm PGP uses in order to encrypt the message would take too much time, and
is beyond the scope of this, we will however look at how it ensures the integrity of
the document. A user has a password, this password has to be chosen correctly, so
don't choose passwords like "pop" or "iloveyou", this will make an attack more likely
to succeed. The password is used to create a private key, and a public key - the
algorithm ensures that you can not use the public key to make the private key. The
public key is sent to a server, or to the people you send e-mails/files, and you keep
the private key secret.
We will use a few terms and people in this introduction, they are: Pk - Public Key, Sk
- Secret Key (private key). Adam will send an e-mail to Eve, and Rita will be a
person in between, who we are trying to hide the content of the mail from. Rita will
intercept the email (PGP doesn't ensure that Rita cant get her hands on the package,
she can - its not a secure line like other technologies) and try to read it/modify it.
Adam has a Sk1 and a Pk1, and Eve has a Sk2 and a Pk2. Both Adam, Eve, and Rita
have Pk1 and Pk2, but Sk1 and Sk2 are presumed to be totally secret. First, here is
a schematic of how it all looks:
PUBLIC SERVER
Pk1, Pk2
Adam <------------------------------------------> Eve Sk1 ^ Sk2
|
|
|
|
Rita
So Adam wants to send a packet to Eve, without Rite reading it, or editing it. There
are three things that we need to make sure:
That Rita cant read the text without permission
That Rita cant edit it in any way, without Eve and Adam knowing
That Even knows that Adam sent it
First thing is making sure Rita cant read the text. Adam does this by encrypting the
message with Eves Pk2 which he has found on the server. You can only Encrypt with
the Pk, not decrypt, so Rita wont be able to read the data unless Eve has revealed
her Sk2.
The second thing to make sure, is that Rite cant edit the message. Adam creates a
hash from the message he has created. The hash can be encrypted using Pk2, or
sent as it is. When Eve gets the message, she decrypts it, and creates a hash
herself, then checks if the hashes are the same - if they are, the message is the
same, if its different, something has changed in the message. The Hash is very

secure, and it is in theory impossible to make a change, and get the hash to remain
the same.
The third, and probably one of the most important things to ensure, is that Rita
hasn't grabbed the mail, made a new one, and sent it in Adams name. We can
ensure this by using Public key and Private key too. The Sk can be used both to
encrypt and to decrypt, but Pk can only encrypt. When Adam normally sends a
message M to Eve, he creates the encrypted message C by doing: C=Pk2(M). This
means, Adam uses Pk2 (Eves Pk) on message M to create message C. Image this:
Adam can encrypt the message with his Sk1, because it is impossible to derive Sk1
from the message, this is secure and without any danger, as long as no one knows
the password used to make Sk1 with. If the message M is encrypted with Sk1, he
gets a message called X, Eve can decrypt the message using Pk1 which is public. If
the message decrypts to something that makes sence, then it must be from Adam,
because Sk1 is considered as secret, and only Adam knows it.
The entire process looks like this, when sending message C: Adam signs his digital
signature on C, and hashes C: X=Sk1(C). Then Adam encrypts the message for Eve:
M=Pk2(X). The message is sent, and looks all in all like this: M=Pk2(Sk1(C)). Rita
can intercept M, but not decrypt, edit, or resend it. Eve receives M, and decrypts it:
X=Sk2(M). Then she checks the digital signature: C=Pk1(X) and checks the Hash on
the way.
This way, the PGP Public/Private key system ensures integrity and security of the
document e-mail, but PGP is not the only algorithm that uses the Public/Private key
theory, Blowfish, and RSA are among the many other technologies that use it, PGP is
just the most popular for e-mail encryption, but many don't trust it because of
rumors of backdoors by the NSA (I don't know if its true though). PGP comes in a
commercial, and a freeware version for Windows, and is available for Linux as well.
What ever encryption you use, it will be better than none.
[ anonymous remailers ]
Remailers are programs accessible on the Internet that route email and USENET
postings anonymously (i.e., the recipient cannot determine who sent the email or
posted the article). This way the sender can't be traced back by routing headers
included in the e-mail. There are different classes of remailers, which allow
anonymous exchange of email and anonymous posting to USENET and often many
other useful features.
Resources:
Chain is a menu-driven remailer-chaining script:
http://www.obscura.com/crypto.html
Raph Levien's remailer availability page offers comprehensive information about the
subject
http://www.sendfakemail.com/~raph/remailer-list.html
The Cypherpunks Remailers are being developed to provide a secure means of
providing anonymity on the nets. Here you can find out about the available
remailers, those which have been standard in existance for a long time as well as the
new experimental remailers and anonymous servers.
http://www.csua.berkeley.edu/cypherpunks/remailer/

[ icq privacy ]
How can I keep my privacy at ICQ?
Send and receive messages via ICQ server, not directly. Every direct connection
enables attacker to learn your IP. Encrypt your messages by dedicated software,
encryption addons.
How to encrypt ICQ messages?
There are addons which enhance your ICQ with possibility to encrypt outcoming
messages. The user on the other side needs to have the addon as well in order to
decrypt your message.
Resources:
http://www.encrsoft.com/products/tsm.html
Top Secret Messenger (TSM) - trial version has only weak 8-bit encryption
http://www.planet-express.com/sven/technical/dev/chatbuddy/default.html
Chat Buddy - a freeware Windows application for encrypting chat sessions
http://www.algonet.se/~henisak/icq/encrypt-v5.txt
how encryption works in ICQ protocol v5
[ spyware ]
As we all work hard to become more savvy about protecting our personal information
and keeping as anonymous as possible on the web, advertising companies are
working just as hard to come up with new ways of getting our personal information.
One of the ways they accomplish this is through spyware.
Spyware are applications that are bundled along with many programs that you
download for free. Their function is to gather personal information about you and
relay it back to advertising firms. The information is then used either to offer you
products or sold to other advertisers, so they can promote THEIR products. They
claim this is all they do with this information, but the problem is nobody really knows
for sure.
Spyware fits the classic definition of a trojan, as it is something that you did not
bargain for+when you agreed to download the product. Not only is spyware an
invasion of your privacy, but (especially if you have a few different kinds on your
machine) it can also chew up bandwidth, making your internet connection slower.
Sometimes, these spies really are harmless, merely connecting back to the home
server to deliver+you more advertising. Some, like Gator for instance, send out
detailed information about your surfing habits, operating system, income, age
demographic et cetera.
Avoiding spyware
Avoiding spyware is getting harder and harder, as more software distributors are
choosing it as a method of profiting from freeware and shareware distributions. Be
leery of programs with cute+little icons like Gator. Also, watch those Napster
wannabes like AudioGalaxy, Limewire, and Kazaa. I've yet to find one that didn't

include spyware. Before you download, check to see if the program is known to
contain spyware.
For a list of most known spyware, the best I've found is here:
http://www.infoforce.qc.ca/spyware/enknownlistfrm.html
Getting rid of spyware
In most cases, you can remove the spyware from your system and still use the
application you downloaded. In the case of Gator and Comet Cursor, the the whole
program is spyware an it must be completely removed to stop the spying.
There are several ways to get rid of spyware on your system. You can use a firewall
to monitor outgoing connections. The programmers that put these things together,
however, are getting sneakier and sneakier about getting them to circumvent
firewalls. Comet Cursor, for instance uses an HTTP post command to connect without
the intervention of a firewall. You can also install a registry monitor such as Regmon
to monitor your registry for unwanted registry registry changes, but this is not
foolproof either.
Probably the best method of removal is to download a spyware removal program and
run it like it was a virus scanner. The best examples of these programs are:
Lavasoft's Adaware. Available at http://www.lavasoftusa.com/ Or professional
cybernut Steve Gibson's OptOut. Available at: http://grc.com/optout.htm Both of
these programs are free and are updated regularly.
Here are some links, if you wish to learn more about spyware:
http://www.spychecker.com/
http://grc.com/optout.htm
http://www.thebee.com/bweb/iinfo200.htm
[ cleaning tracks ]
Resources:
Burnt Cookies - allows automatic detection and optional deletion of Cookies
deposited by Banner Ad web-sites
http://www.andersson-design.com/bcookies/index.shtml
Surfsecret - automatically kills files like your Internet cache files, cookies, history,
temporary files, recent documents, and the contents of the Recycle Bin.
http://www.surfsecret.com/
Note: One sidenote on cleaning tracks. When you delete some files on your machine,
these aren't actually deleted. Only the reference to their location in the hard drive is
deleted, which makes the OS think that that location on the HD is free and ready to
take things. Thus, there are ways to recover data even after you delete them.
There are however, several ways to _wipe_ this information. Programs that fill hard
disk locations with zeros, then with 1s, on several passes are your best bet to make
sure no document goes to the wrong hands. One of such programs is PGP. PHPi now
comes with a utility that does this work, and you can even select the number of
passes to wipe files. For *nix, there is also the "wipe" program. Use these when you
feel you have data that needs secure cleaning.

You might also like