diff --git a/packages/ircd/ircd.mk b/packages/ircd/ircd.mk
index 79d99ea..2b5b06f 100644
--- a/packages/ircd/ircd.mk
+++ b/packages/ircd/ircd.mk
@@ -22,7 +22,7 @@ $(IRCD_BUILDDIR)/source: $(IRCD_TAR)
ircd-build: $(IRCD_BUILDDIR)/built
$(IRCD_BUILDDIR)/built: $(IRCD_BUILDDIR)/source
- cd $(IRCD_SRCDIR) && ./configure $(CONFIG_XCOMPILE_FLAGS)
+ cd $(IRCD_SRCDIR) && ./configure $(CONFIG_XCOMPILE_FLAGS) --enable-ipv6
$(MAKE) -C $(IRCD_SRCDIR)
touch $@
diff --git a/packages/ircd/service/ircd/finish b/packages/ircd/service/ircd/finish
new file mode 100755
index 0000000..6317f74
--- /dev/null
+++ b/packages/ircd/service/ircd/finish
@@ -0,0 +1,4 @@
+#! /bin/sh
+
+IP=$(cat ip.txt)
+ip addr del $IP dev eth0
diff --git a/packages/ircd/service/ircd/ip.txt b/packages/ircd/service/ircd/ip.txt
new file mode 100644
index 0000000..07f368a
--- /dev/null
+++ b/packages/ircd/service/ircd/ip.txt
@@ -0,0 +1 @@
+fd84:b410:3441::6/64
diff --git a/packages/ircd/service/ircd/ngircd.conf b/packages/ircd/service/ircd/ngircd.conf
index 0e7705b..cb21c97 100644
--- a/packages/ircd/service/ircd/ngircd.conf
+++ b/packages/ircd/service/ircd/ngircd.conf
@@ -1,7 +1,11 @@
[Global]
Name = irc.ctf
Info = CTF IRC
+ AdminInfo1 = CTF IRC Server
+ AdminInfo2 = The table at the front of the room
+ AdminEmail = zephyr@dirtbags.net
MotdPhrase = "welcome datacomp"
+ Listen = fd84:b410:3441::6
[Operator]
Name = oper
diff --git a/packages/ircd/service/ircd/run b/packages/ircd/service/ircd/run
index f033477..16a5e77 100755
--- a/packages/ircd/service/ircd/run
+++ b/packages/ircd/service/ircd/run
@@ -2,6 +2,11 @@
exec 2>&1
-ip addr add fd84:b410:3441::6 label eth0:ircd dev eth0
+IP=$(cat ip.txt)
+ip addr add $IP label eth0:ircd dev eth0
+ip monitor | grep -q $IP
-exec /opt/ircd/bin/ngircd --config ./ngircd.conf --nodaemon
+adduser -S -H -u 65534 nobody
+adduser -S -H irc
+
+exec setuidgid irc /opt/ircd/bin/ngircd --config ./ngircd.conf --nodaemon
diff --git a/packages/logger/service/logger/ip.txt b/packages/logger/service/logger/ip.txt
index b7c75a4..9777f24 100644
--- a/packages/logger/service/logger/ip.txt
+++ b/packages/logger/service/logger/ip.txt
@@ -1 +1 @@
-10.0.0.14/24
+fd84:b410:3441::07a6/64
diff --git a/packages/mcp/service/httpd/run b/packages/mcp/service/httpd/run
index 4f064d7..a183245 100755
--- a/packages/mcp/service/httpd/run
+++ b/packages/mcp/service/httpd/run
@@ -22,4 +22,4 @@ done
mkdir -p sites
cd sites
ln -sf /var/www default
-exec tcpsvd -u ctf $IP 80 /opt/mcp/bin/fnord-cgi
+exec tcpsvd -u ctf ${IP%/*} 80 /opt/mcp/bin/fnord-cgi
diff --git a/packages/mcp/www/index.html b/packages/mcp/www/index.html
index 0c1d155..82b48c1 100644
--- a/packages/mcp/www/index.html
+++ b/packages/mcp/www/index.html
@@ -19,8 +19,8 @@
About scoring
- Contest chat
+ Contest chat
carries important announcements, and sometimes clues and
puzzles.
@@ -42,16 +42,13 @@
Rules
- -
- No ARP-level attacks: this includes IP spoofing.
-
-
No DoS attacks.
-
- Do not attack machines outside the contest network
- (10.x.x.x). Low ports (under 1024) do not
- run contest categories.
+ Do not attack machines outside fd84:b410:3441::/48.
+ Low ports (under 1024) do not run contest categories, don't
+ waste your time.
-
Consider the contest network hostile. It is up to you to
diff --git a/packages/printf/printf.mk b/packages/printf/printf.mk
index f77ba09..520985d 100644
--- a/packages/printf/printf.mk
+++ b/packages/printf/printf.mk
@@ -6,8 +6,6 @@ printf-install: printf-build
mkdir -p $(PRINTF_PKGDIR)/bin/
$(MAKE) -C packages/printf/src install DESTDIR=$(CURDIR)/$(PRINTF_PKGDIR)
- $(call COPYTREE, packages/printf/tokens, $(PRINTF_PKGDIR)/tokens)
-
$(call COPYTREE, packages/printf/service, $(PRINTF_PKGDIR)/service)
printf-clean:
diff --git a/packages/printf/service/printf/ip.txt b/packages/printf/service/printf/ip.txt
index fb7ede6..7adf1f8 100644
--- a/packages/printf/service/printf/ip.txt
+++ b/packages/printf/service/printf/ip.txt
@@ -1 +1 @@
-10.0.0.91
+fd84:b410:3441::2329/64
diff --git a/packages/printf/service/printf/run b/packages/printf/service/printf/run
index 331b959..3336885 100755
--- a/packages/printf/service/printf/run
+++ b/packages/printf/service/printf/run
@@ -3,7 +3,8 @@
exec 2>&1
IP=$(cat ip.txt)
-ip addr add $IP label eth0:printf dev eth0
+ip addr add $IP dev eth0
+ip monitor | grep -q $IP
# So I say to him, "Alex, what's a good high port number for a CTF category?"
# And he says, "6"
diff --git a/packages/printf/service/printf/run-printf b/packages/printf/service/printf/run-printf
index 716baf7..0f6bd9b 100755
--- a/packages/printf/service/printf/run-printf
+++ b/packages/printf/service/printf/run-printf
@@ -1,8 +1,3 @@
#! /bin/sh
-chpst -u 9001 -/ /opt/printf/bin ./printf \
- 3< /var/lib/ctf/tokens/printf0 \
- 4< /var/lib/ctf/tokens/printf1 \
- 5< /var/lib/ctf/tokens/printf2 \
- 6< /var/lib/ctf/tokens/printf3 \
- 7< /var/lib/ctf/tokens/printf4
+exec chpst -u 9001 -/ /opt/printf/bin ./printf
diff --git a/packages/printf/src/Makefile b/packages/printf/src/Makefile
index 15f1b4d..5def83f 100644
--- a/packages/printf/src/Makefile
+++ b/packages/printf/src/Makefile
@@ -5,7 +5,7 @@ TARGETS = printf
all: build
build: $(TARGETS)
-printf: printf.o token.o
+printf: printf.o
install: $(TARGETS)
install -m 0755 $(TARGETS) $(DESTDIR)/bin
diff --git a/packages/printf/src/printf.c b/packages/printf/src/printf.c
index a93f10f..f28a113 100644
--- a/packages/printf/src/printf.c
+++ b/packages/printf/src/printf.c
@@ -1,7 +1,6 @@
#include
#include
#include
-#include "token.h"
void
record(char *buf) {
@@ -19,40 +18,24 @@ record(char *buf) {
fputc('\n', stderr);
}
-uint8_t const key[] = {0x98, 0x37, 0x92, 0x7d,
- 0xa5, 0x6d, 0xc9, 0x61,
- 0xca, 0x97, 0xf8, 0xa5,
- 0xfe, 0x0f, 0xf6, 0xfc};
-
/* Storage space for tokens */
-char token[5][TOKEN_MAX];
+char *token[5] = {
+ "printf:xylep-radar-nanox",
+ "printf:xylep-radar-nanox",
+ "printf:xylep-radar-nanox",
+ "printf:xylep-radar-nanox",
+ "printf:xylep-radar-nanox"
+};
/* Make this global so the stack isn't gigantic */
char global_fmt[8000] = {0};
-/* Since this runs in a chroot jail, and setting up all the symlinks is
- * a pain in the butt, we just read from file discriptors passed in.
- * Pipes are the best thing. :D
- */
-void
-read_tokens()
-{
- int i;
- ssize_t len;
-
- for (i = 0; i < sizeof(token)/sizeof(*token); i += 1) {
- len = read_token_fd(i + 3, key, sizeof(key), token[i], sizeof(token[i]));
- if (len >= sizeof(token[i])) abort();
- token[i][len] = '\0';
- }
-}
-
int
main(int argc, char *argv[], char *env[])
{
char *t0 = token[0];
- int t1[TOKEN_MAX];
+ int t1[100];
char *fmt = global_fmt;
char *datacomp = "welcome datacomp";
int token4_flag = 0;
@@ -64,8 +47,6 @@ main(int argc, char *argv[], char *env[])
/* So the compiler won't complain about unused variables */
i = datacomp[0] ^ t0[0];
- read_tokens();
-
/* Token 0 just hangs out on the stack */
/* Set up token 1 (%c%c%c%c...) */
diff --git a/packages/printf/tokens/printf0/category b/packages/printf/tokens/printf0/category
deleted file mode 100644
index f3be370..0000000
--- a/packages/printf/tokens/printf0/category
+++ /dev/null
@@ -1 +0,0 @@
-printf
diff --git a/packages/printf/tokens/printf0/category.key b/packages/printf/tokens/printf0/category.key
deleted file mode 100644
index 6089383..0000000
--- a/packages/printf/tokens/printf0/category.key
+++ /dev/null
@@ -1 +0,0 @@
-‚»ÞIŠ[^,5àÆÚO½Ì
\ No newline at end of file
diff --git a/packages/printf/tokens/printf0/enc.key b/packages/printf/tokens/printf0/enc.key
deleted file mode 100644
index ef2e9f9..0000000
--- a/packages/printf/tokens/printf0/enc.key
+++ /dev/null
@@ -1 +0,0 @@
-˜7’}¥mÉaÊ—ø¥þöü
\ No newline at end of file
diff --git a/packages/printf/tokens/printf1/category b/packages/printf/tokens/printf1/category
deleted file mode 100644
index f3be370..0000000
--- a/packages/printf/tokens/printf1/category
+++ /dev/null
@@ -1 +0,0 @@
-printf
diff --git a/packages/printf/tokens/printf1/category.key b/packages/printf/tokens/printf1/category.key
deleted file mode 100644
index 6089383..0000000
--- a/packages/printf/tokens/printf1/category.key
+++ /dev/null
@@ -1 +0,0 @@
-‚»ÞIŠ[^,5àÆÚO½Ì
\ No newline at end of file
diff --git a/packages/printf/tokens/printf1/enc.key b/packages/printf/tokens/printf1/enc.key
deleted file mode 100644
index ef2e9f9..0000000
--- a/packages/printf/tokens/printf1/enc.key
+++ /dev/null
@@ -1 +0,0 @@
-˜7’}¥mÉaÊ—ø¥þöü
\ No newline at end of file
diff --git a/packages/printf/tokens/printf2/category b/packages/printf/tokens/printf2/category
deleted file mode 100644
index f3be370..0000000
--- a/packages/printf/tokens/printf2/category
+++ /dev/null
@@ -1 +0,0 @@
-printf
diff --git a/packages/printf/tokens/printf2/category.key b/packages/printf/tokens/printf2/category.key
deleted file mode 100644
index 6089383..0000000
--- a/packages/printf/tokens/printf2/category.key
+++ /dev/null
@@ -1 +0,0 @@
-‚»ÞIŠ[^,5àÆÚO½Ì
\ No newline at end of file
diff --git a/packages/printf/tokens/printf2/enc.key b/packages/printf/tokens/printf2/enc.key
deleted file mode 100644
index ef2e9f9..0000000
--- a/packages/printf/tokens/printf2/enc.key
+++ /dev/null
@@ -1 +0,0 @@
-˜7’}¥mÉaÊ—ø¥þöü
\ No newline at end of file
diff --git a/packages/printf/tokens/printf3/category b/packages/printf/tokens/printf3/category
deleted file mode 100644
index f3be370..0000000
--- a/packages/printf/tokens/printf3/category
+++ /dev/null
@@ -1 +0,0 @@
-printf
diff --git a/packages/printf/tokens/printf3/category.key b/packages/printf/tokens/printf3/category.key
deleted file mode 100644
index 6089383..0000000
--- a/packages/printf/tokens/printf3/category.key
+++ /dev/null
@@ -1 +0,0 @@
-‚»ÞIŠ[^,5àÆÚO½Ì
\ No newline at end of file
diff --git a/packages/printf/tokens/printf3/enc.key b/packages/printf/tokens/printf3/enc.key
deleted file mode 100644
index ef2e9f9..0000000
--- a/packages/printf/tokens/printf3/enc.key
+++ /dev/null
@@ -1 +0,0 @@
-˜7’}¥mÉaÊ—ø¥þöü
\ No newline at end of file
diff --git a/packages/printf/tokens/printf4/category b/packages/printf/tokens/printf4/category
deleted file mode 100644
index f3be370..0000000
--- a/packages/printf/tokens/printf4/category
+++ /dev/null
@@ -1 +0,0 @@
-printf
diff --git a/packages/printf/tokens/printf4/category.key b/packages/printf/tokens/printf4/category.key
deleted file mode 100644
index 6089383..0000000
--- a/packages/printf/tokens/printf4/category.key
+++ /dev/null
@@ -1 +0,0 @@
-‚»ÞIŠ[^,5àÆÚO½Ì
\ No newline at end of file
diff --git a/packages/printf/tokens/printf4/enc.key b/packages/printf/tokens/printf4/enc.key
deleted file mode 100644
index ef2e9f9..0000000
--- a/packages/printf/tokens/printf4/enc.key
+++ /dev/null
@@ -1 +0,0 @@
-˜7’}¥mÉaÊ—ø¥þöü
\ No newline at end of file
diff --git a/packages/tanks/tanks.mk b/packages/tanks/tanks.mk
index 9007d20..b530520 100644
--- a/packages/tanks/tanks.mk
+++ b/packages/tanks/tanks.mk
@@ -1,7 +1,7 @@
TANKS_PKGDIR = $(TARGET)/tanks
TANKS_CACHE = $(CACHE)/tanks.git
TANKS_BUILDDIR = $(BUILD)/tanks
-TANKS_URL = "http://woozle.org/~neale/projects/ctanks"
+TANKS_URL = "http://dirtbags.net/projects/tanks"
$(TANKS_CACHE):
git clone --bare $(TANKS_URL) $@
@@ -23,7 +23,6 @@ tanks-install: tanks-build
$(call COPYTREE, packages/tanks/html, $(TANKS_PKGDIR)/html)
cp packages/mcp/www/ctf.css $(TANKS_PKGDIR)/html/style.css
- cp packages/mcp/www/grunge.png $(TANKS_PKGDIR)/html
cp $(TANKS_BUILDDIR)/nav.html.inc $(TANKS_PKGDIR)/html
cp $(TANKS_BUILDDIR)/tanks.js $(TANKS_PKGDIR)/html
cp $(TANKS_BUILDDIR)/forf.html $(TANKS_PKGDIR)/html