I'm Conor Patrick. Former {FTC OTRI, JHUAPL} intern. I support open source development. I do research for Secure Embedded Systems at Virginia Tech. You can follow me on Twitter.

Using a Docker container to log into IRC via Tor

17 October 2015

TL;DR

For those of you that use Docker, or would like to learn, you can immediately get started by running:

docker run -it cpp1/weechat_tor

It will pull a container containing Ubuntu 14.04, WeeChat (IRC client), and a Tor proxy. It opens up WeeChat and immediately connects to OFTC over Tor.

You’ll see something like this:

Docker

Nutshell: Docker is an open-source project that leverages isolation features in the Linux kernel to run applications in VM-like userspace environments (containers). A container is often a more lightweight and efficient option than running an application in a virtual machine.

I’ve recently got hooked on it because it’s great for reusing applications that have some complexity to the environment they run in. For example, using Weechat + Tor is a nice service I like to have running for myself, but it’s a bit of a pain to set up each time I move to a new computer or server.

The Virginia Tech Cyber Security Club is planning on hosting a collegiate CTF event next year and I’m vouching for challenges to be made in Docker. That way any student can make a challenge, and by putting it in a Docker container, makes it much easier to host and setup for the event.

WeeChat

WeeChat is a feature rich IRC client that’s nice because it uses ncurses and can easily be used in a terminal. I just leave it running on a server. It’s nice to leave your IRC client running continuously somewhere so you can drop in on your channels any time without having to reconnect or lose back logs.

Also seeing a lot of these can get annoying:

I personally like to use Digital Ocean and tmux. Really easy to set up.

# server:
tmux new -s irc
docker run -it cpp1/weechat_tor
# close terminal

# from laptop/desktop:
ssh username@myserver.xyz -t tmux a -t irc

P.S. Students can get $50 credit on Digital Ocean though Github.

Tor

Tor is a very popular and awesome anonymity network. But why need to be anonymous? I don’t have much reason to other then to show off for this post. However, it was great for checking out a botnet.

edit: If you seriously want to be anonymous though, it’s not that easy. Check out the Tor website and other tools like whonix and torsocks.

Resources

You can check out my Dockerfile here if you want to make changes.