You are on page 1of 11

Anonymity complete GUIDE By Theraider & Dangerous R.

Anonymity on the web

[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