Proving and Hiding your Identity on the Internet A high level overview Jon “The Nice Guy” Spriggs jon@spriggs.org.uk  2009-10-25
Proving And Hiding Your Identity The nature of the Internet is to be anonymous.
The nature of Controlled Networks is to be identifiable.
How can we reverse these two situations to your benefit?
Why would you want to?
Prove your Identity on the Internet How do you prove your identity? Username and one-or-two factor authentication How do you secure your access to private data, hosts and networks? Physical presence, encrypted connections (PGP, VPN, SSL, SSH) How can you encourage trust? Securely exchange keys, protect physical objects, accept only trusted relationships
Explaining Terms: PGP / GPG What is GPG? A Free Software implementation of the PGP system, properly called “Gnu Privacy Guard” What is PGP? An encryption and authentication system Where would I use it? Signing data, ensuring no tampering has occurred
Encrypting data, ensuring no unauthorized person has understood it's contents.
Example: Create GPG Key
Example: Sign a file
Example: Decrypt a file
Explaining Terms: VPN What is a VPN? It is a Virtual Private Network – a method of ensuring a host or network is permitted to access a private network. Where would I use it? Connecting one or more networks or hosts together – usually from a laptop to a work network. What would I use? IPSEC, OpenVPN, SSH
Example: The simplest OpenVPN
Example: The simplest OpenVPN
Explaining Terms: SSL / TLS What is SSL (Secure Sockets Layer)? SSL is an old version of what is now called TLS What is TLS (Transport Layer Security)? TLS is how an encrypted link is created using certificates – for example when browsing to HTTPS sites. What would I use? HTTPS, IMAPS, FTP-S, Jabber, IRC
Example: SSL Certificates
Explaining Terms: SSH What is SSH? A series of data channels, encrypted* and transmitted over a TCP link. Where would I use it? Performing commands, opening tunnels with and transferring files with your remote hosts. What would I use? PuTTY, ssh, ConnectBot, SecureCRT
Example: Warning - SSH
Example: Creating SSH Keys
Example: SSH Port Forwarding Local: His port transferred to my system Local: His port transferred to my system Remote: My port transferred to his system
Hide your Identity on the Internet Why would you want to hide your Identity? Breaching policy, joking with friends, whistleblowing What can you use to hide your identity? Anonymous proxies, tunnels, TOR and FreeNet. How can you trust these systems? Bottom line, you can't – completely. Seeing source code can give you confidence in your first connection. Combining this with technologies like SSL, SSH Keys and GPG can help you trust your destination is untampered.
Explaining Terms: Anonymous Proxy What is an Anonymous Proxy? An anonymous proxy is one which has been set up (inadvertantly or otherwise) to permit traffic from the Internet through it to another service. How do I use it? Find a list, configure your application to use that proxy. Is it trustworthy? Not really. It has been included for completeness.

Identity On The Internet

  • 1.
    Proving and Hidingyour Identity on the Internet A high level overview Jon “The Nice Guy” Spriggs jon@spriggs.org.uk 2009-10-25
  • 2.
    Proving And HidingYour Identity The nature of the Internet is to be anonymous.
  • 3.
    The nature ofControlled Networks is to be identifiable.
  • 4.
    How can wereverse these two situations to your benefit?
  • 5.
    Why would youwant to?
  • 6.
    Prove your Identityon the Internet How do you prove your identity? Username and one-or-two factor authentication How do you secure your access to private data, hosts and networks? Physical presence, encrypted connections (PGP, VPN, SSL, SSH) How can you encourage trust? Securely exchange keys, protect physical objects, accept only trusted relationships
  • 7.
    Explaining Terms: PGP/ GPG What is GPG? A Free Software implementation of the PGP system, properly called “Gnu Privacy Guard” What is PGP? An encryption and authentication system Where would I use it? Signing data, ensuring no tampering has occurred
  • 8.
    Encrypting data, ensuringno unauthorized person has understood it's contents.
  • 9.
  • 10.
  • 11.
  • 12.
    Explaining Terms: VPNWhat is a VPN? It is a Virtual Private Network – a method of ensuring a host or network is permitted to access a private network. Where would I use it? Connecting one or more networks or hosts together – usually from a laptop to a work network. What would I use? IPSEC, OpenVPN, SSH
  • 13.
  • 14.
  • 15.
    Explaining Terms: SSL/ TLS What is SSL (Secure Sockets Layer)? SSL is an old version of what is now called TLS What is TLS (Transport Layer Security)? TLS is how an encrypted link is created using certificates – for example when browsing to HTTPS sites. What would I use? HTTPS, IMAPS, FTP-S, Jabber, IRC
  • 16.
  • 17.
    Explaining Terms: SSHWhat is SSH? A series of data channels, encrypted* and transmitted over a TCP link. Where would I use it? Performing commands, opening tunnels with and transferring files with your remote hosts. What would I use? PuTTY, ssh, ConnectBot, SecureCRT
  • 18.
  • 19.
  • 20.
    Example: SSH PortForwarding Local: His port transferred to my system Local: His port transferred to my system Remote: My port transferred to his system
  • 21.
    Hide your Identityon the Internet Why would you want to hide your Identity? Breaching policy, joking with friends, whistleblowing What can you use to hide your identity? Anonymous proxies, tunnels, TOR and FreeNet. How can you trust these systems? Bottom line, you can't – completely. Seeing source code can give you confidence in your first connection. Combining this with technologies like SSL, SSH Keys and GPG can help you trust your destination is untampered.
  • 22.
    Explaining Terms: AnonymousProxy What is an Anonymous Proxy? An anonymous proxy is one which has been set up (inadvertantly or otherwise) to permit traffic from the Internet through it to another service. How do I use it? Find a list, configure your application to use that proxy. Is it trustworthy? Not really. It has been included for completeness.