diff --git a/Makefile b/Makefile
deleted file mode 100644
index 81e474b..0000000
--- a/Makefile
+++ /dev/null
@@ -1,33 +0,0 @@
-# Scratch directory for building extrenal sources
-BUILD = build
-
-# Root to install things before they're packaged
-TARGET = target
-
-# Downloaded source files go here
-CACHE = cache
-
-# The end result
-BIN = bin
-
-ifdef ARCH
-export CC = ${ARCH}-cc
-export STRIP = ${ARCH}-strip
-endif
-
-all: packages
-
-dist: ctf-install.zip
-ctf-install.zip: packages.zip bzImage rootfs.squashfs /usr/lib/syslinux/mbr.bin
- zip --junk-paths $@ packages.zip bzImage rootfs.squashfs /usr/lib/syslinux/mbr.bin install.sh
-
-packages.zip: packages
- zip --junk-paths $@ bin/*.pkg
-
-clean: packages-clean
- rm -rf $(BUILD) $(TARGET) $(BIN)
-
-scrub: clean
- rm -rf $(CACHE)
-
--include */*.mk
diff --git a/doc/ipv6.txt b/doc/ipv6.txt
deleted file mode 100644
index 2ecc83f..0000000
--- a/doc/ipv6.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-IPv6 in Dirtbags CTF
-====================
-
-The contest network uses IPs in the unique local address space
-fd84:b410:3441::/48. Each team gets a /64 internal subnet, with
-their team number (generally the same digits as the switch port).
-
-Each subnet's gateway is fd84:b410:3441:$teamno::1.
-
-Team 15, in switch port 15, on VLAN 15, gets fd84:b410:3441:15::/64.
-
-Server network is fd84:b410:3441::/64 (AKA fd84:b410:3441:0::/64). To
-make things easier to type, use hosts in the /112. The MCP server lives
-at fd84:b410:3441::2.
-
-Vendors typically live on port 23. They usually want a static address.
-Tell them this:
-
- Pick any address in fd84:b410:3441:23::/64. Your default gateway
- is fd84:b410:3441:23::1. You may want to assign yourself a subnet,
- for example fd84:b410:3441:23:1234::
-
-Kevin Nauer gets port 24. In 2012, we needed to route fd80:1::/48
-through fd84:b410:3441:24::2, since he was using that subnet for
-his systems.
diff --git a/doc/packages.txt b/doc/packages.txt
deleted file mode 100644
index dce545c..0000000
--- a/doc/packages.txt
+++ /dev/null
@@ -1,68 +0,0 @@
-CTF Packages
-============
-
-Packages are squashfs files.
-
-A hypothetical package named pkgname.sfs will be mounted under
-/opt/pkgname. The following top-level files and directories are
-significant:
-
-* /setup - Run after package is mounted
-* /bin/ - Added to $PATH for login shells
-* /puzzles/ - Appears as a puzzle category (see "Puzzles" below)
-* /answers.txt - Puzzle answers for category pkgname (see "Puzzles" below)
-
-
-setup script
-------------
-
-The setup script (if it exists and is executable) will be run from within
-the mounted directory. This is mostly so you can copy things out of your
-read-only package and into read/write areas.
-
-Don't start your service here, instead, make a new directory in
-/var/service and place a "run" script in it. More information can be found
-at .
-
-Some common actions in setup:
-
- cp -r service/* /var/service # Install startup services
-
- # Set up a file with ownership
- install -o ctf -m 0644 /var/lib/ctf/whatever.db
-
-
-Puzzles
--------
-
-To expose puzzles, place them in the /puzzles/ directory, like so:
-
- /puzzles/10/index.html
- /puzzles/20/index.html
- /puzzles/20/script.cgi
- /puzzles/30/index.html
- /puzzles/30/something.jpg
- /puzzles/40/index.html
-
-where the second directory is the point value of the puzzle. This means
-that no two puzzles in a category can have the same point value.
-
-Files will be served up from the web server, and CGI scripts will be
-executed.
-
-Store answers to your puzzles in /answers.txt. Answers are one per
-line, with the point value appearing first, followed by a space, then
-the answer. Answers are case sensitive. You may have multiple answers
-for each point value.
-
-
- 10 zip file
- 10 zip
- 10 ZIP
- 10 pkzip
- 10 PKZIP
- 20 varname
- 30 JFIF
- 40 0x8040fe67
- 40 8040FE67
- 40 8040fe67
diff --git a/doc/smoke.xcf b/doc/smoke.xcf
deleted file mode 100644
index ca38244..0000000
Binary files a/doc/smoke.xcf and /dev/null differ
diff --git a/doc/token-categories.txt b/doc/token-categories.txt
deleted file mode 100644
index 0067f73..0000000
--- a/doc/token-categories.txt
+++ /dev/null
@@ -1,180 +0,0 @@
-LANL CTF Token-Based Categories
-===============================
-
-LANL's CTF contest allows for easy addition of new modules which can use
-"tokens". A token is a character string worth one point in the contest.
-A point may only be claimed once per team, but multiple teams can claim
-the same token and each will get a point. Tokens look like this:
-
- example:xenon-donut-helix
-
-where "example" is the category name, and "xenon-donut-helix" is a
-bubblebabble hash of a 32-bit random number. The entire string must be
-submitted as the token.
-
-Tokens are issued by the token server using the tokencli program at the
-end of this document. They can also be issued before the beginning of a
-contest. If your category allows it, it will be much easier for you to
-simply request a number of tokens before the contest begins, and
-hard-code them into your category.
-
-You will want to arrange that participants get a token after having
-completed some sort of task. In existing categories, tokens are
-frequently what lie beneath some trail of hacking. For instance, one
-program provides a token when the proper printf formatting string is
-provided. Another embeds five tokens into log messages using different
-encodings.
-
-Any machine that you connect to our network will get a wired connection
-and should claim a static IP address on the 10.0.2.0/24 network. While
-it's unlikely you'll conflict with anyone else, be prepared to
-reconfigure it with a new IP on the morning of the event.
-
-If you plan to request tokens, please do so at least 2 weeks before the
-start of the event. I will need to know what you'd like your category
-to be called, and how many tokens you'd like. It's not a problem if you
-don't use all the tokens you request.
-
-Remember that this is a security contest, and contestants will be far
-more engaged with your category if they have to do real work to get the
-tokens. For example, a vendor might be tempted to leave tokens lying
-around in configuration boxes to reward people who explore its rich
-configurability, but this would probably result in people clicking
-through the UI as quickly as possible looking only for tokens. Far
-better would be to have the tokens lying under the products
-functionality somewhere, forcing contestants to interact with the
-product like they would in their day to day work after having purchased
-it. A Snort category, for instance, would do well to have tokens within
-packet captures which triggered alarms.
-
-I can't stress that last point enough: constestants have been known to
-spend over 2 hours on a single problem. Don't be afraid to really
-challenge them.
-
-
-
-
-
-
-/* tokencli.c - LANL CTF token client
-Author: Neale Pickett
-
-This program requires an arc4 implementation, email me if you can't find
-one you like.
-
-This also requires a shared 128-bit key. I need the key before you can
-start requesting tokens from the server :)
-
-
-This software has been authored by an employee or employees of Los
-Alamos National Security, LLC, operator of the Los Alamos National
-Laboratory (LANL) under Contract No. DE-AC52-06NA25396 with the
-U.S. Department of Energy. The U.S. Government has rights to use,
-reproduce, and distribute this software. The public may copy,
-distribute, prepare derivative works and publicly display this software
-without charge, provided that this Notice and any statement of
-authorship are reproduced on all copies. Neither the Government nor
-LANS makes any warranty, express or implied, or assumes any liability or
-responsibility for the use of this software. If software is modified to
-produce derivative works, such modified software should be clearly
-marked, so as not to confuse it with the version available from LANL.
-*/
-
-
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-#include "arc4.h"
-
-/* I don't feel compelled to put all the TCP client code in here
- * when it's so simple to run this with netcat or ucspi. Plus, using
- * stdin and stdout makes it simpler to test.
- */
-
-int
-read_key(char *filename, uint8_t *key, size_t *keylen)
-{
- int fd = open(filename, O_RDONLY);
- int len;
-
- if (-1 == fd) {
- perror("open");
- return EX_NOINPUT;
- }
-
- len = read(fd, key, *keylen);
- if (-1 == len) {
- perror("read");
- return EX_NOINPUT;
- }
- *keylen = (size_t)len;
-
- return 0;
-}
-
-int
-main(int argc, char *argv[]) {
- uint8_t skey[200];
- size_t skeylen = sizeof(skey);
- char token[200];
- size_t tokenlen;
- int ret;
-
- if (argc != 3) {
- fprintf(stderr, "Usage: %s SERVICE SERVICEKEY 3>TOKENFILE\n", argv[0]);
- fprintf(stderr, "\n");
- fprintf(stderr, "SERVICEKEY is a filename.\n");
- fprintf(stderr, "Server chatter happens over stdin and stdout.\n");
- fprintf(stderr, "Tokens are written to file descriptor 3.\n");
- fprintf(stderr, "\n");
- fprintf(stderr, "To run with netcat:\n");
- fprintf(stderr, " nc 10.0.0.2 1 -e tokencli cat cat.key 3> tokenfile\n");
- return EX_USAGE;
- }
-
- /* read in keys */
- ret = read_key(argv[2], skey, &skeylen);
- if (0 != ret) return ret;
-
- /* write service name */
- write(1, argv[1], strlen(argv[1]));
-
- /* read nonce, send back encrypted version */
- {
- uint8_t nonce[80];
- int noncelen;
-
- noncelen = read(0, nonce, sizeof(nonce));
- if (0 >= noncelen) {
- perror("read");
- return EX_IOERR;
- }
- arc4_crypt_buffer(skey, skeylen, nonce, (size_t)noncelen);
- write(1, nonce, (size_t)noncelen);
- }
-
- /* read token */
- {
- int len;
-
- len = read(0, token, sizeof(token));
- if (0 >= len) {
- perror("read");
- return EX_IOERR;
- }
- tokenlen = (size_t)len;
- }
-
- /* decrypt it */
- arc4_crypt_buffer(skey, skeylen, (uint8_t *)token, tokenlen);
-
- /* write it to fd 3 */
- write(3, token, tokenlen);
-
- return 0;
-}
-
diff --git a/html/burn.jpg b/html/burn.jpg
deleted file mode 100644
index cd064d4..0000000
Binary files a/html/burn.jpg and /dev/null differ
diff --git a/html/credits.html b/html/credits.html
new file mode 100644
index 0000000..82481a4
--- /dev/null
+++ b/html/credits.html
@@ -0,0 +1,51 @@
+
+
+
+ The Credits
+
+
+
+
Credits
+
+
+
Dirtbags King of the Hill was created by:
+
+
+
Neale Pickett
+
Aaron McPhall
+
Russel Nolen
+
Patrick Avery
+
Kate Vajda
+
Alex Brugh
+
Paul Ferrell
+
Jeremy Scott
+
Danny Quist
+
Adam Glasgall
+
Curtis Hash
+
Erin Ochoa
+
William Phillips
+
Should your name be here? Please remind me!
+
+
+
Parts of this contest were inspired by contests from:
+
+
DC949
+
Tube Warriors
+
Sandia National Laboratories
+
+
+
+ Lastly, this contest would not exist were it not for hundreds of
+ thousands of lines of code from free software authors around the
+ world, including:
+