From 8f009026a712bc12ffcd2d844bcfb6487d3d9c04 Mon Sep 17 00:00:00 2001 From: Neale Pickett Date: Fri, 23 Sep 2011 16:05:17 -0600 Subject: [PATCH] remove armadillo category --- packages/armadillo/armadillo.mk | 20 ----- packages/armadillo/service/armadillo/finish | 4 - packages/armadillo/service/armadillo/ip.txt | 1 - packages/armadillo/service/armadillo/log/run | 3 - packages/armadillo/service/armadillo/motd | 4 - packages/armadillo/service/armadillo/pwnie | 4 - packages/armadillo/service/armadillo/run | 40 --------- packages/armadillo/src/Makefile | 17 ---- packages/armadillo/src/arc4.c | 1 - packages/armadillo/src/arc4.h | 1 - packages/armadillo/src/dillo-solve | 22 ----- packages/armadillo/src/dillo.c | 59 ------------ packages/armadillo/src/gimmie.c | 19 ---- packages/armadillo/src/killme.c | 59 ------------ packages/armadillo/src/straceme.c | 85 ------------------ packages/armadillo/src/token.c | 1 - packages/armadillo/src/token.h | 1 - packages/armadillo/tokens/gimmie/category | 1 - packages/armadillo/tokens/gimmie/category.key | 1 - packages/armadillo/tokens/gimmie/enc.key | 1 - packages/armadillo/tokens/killme/category | 1 - packages/armadillo/tokens/killme/category.key | 1 - packages/armadillo/tokens/killme/enc.key | 1 - packages/armadillo/tokens/ltraceme/category | 1 - .../armadillo/tokens/ltraceme/category.key | 1 - packages/armadillo/tokens/ltraceme/enc.key | Bin 16 -> 0 bytes packages/armadillo/tokens/straceme/category | 1 - .../armadillo/tokens/straceme/category.key | 1 - packages/armadillo/tokens/straceme/enc.key | Bin 16 -> 0 bytes 29 files changed, 351 deletions(-) delete mode 100644 packages/armadillo/armadillo.mk delete mode 100755 packages/armadillo/service/armadillo/finish delete mode 100644 packages/armadillo/service/armadillo/ip.txt delete mode 100755 packages/armadillo/service/armadillo/log/run delete mode 100644 packages/armadillo/service/armadillo/motd delete mode 100755 packages/armadillo/service/armadillo/pwnie delete mode 100755 packages/armadillo/service/armadillo/run delete mode 100644 packages/armadillo/src/Makefile delete mode 120000 packages/armadillo/src/arc4.c delete mode 120000 packages/armadillo/src/arc4.h delete mode 100755 packages/armadillo/src/dillo-solve delete mode 100644 packages/armadillo/src/dillo.c delete mode 100644 packages/armadillo/src/gimmie.c delete mode 100644 packages/armadillo/src/killme.c delete mode 100644 packages/armadillo/src/straceme.c delete mode 120000 packages/armadillo/src/token.c delete mode 120000 packages/armadillo/src/token.h delete mode 100644 packages/armadillo/tokens/gimmie/category delete mode 100644 packages/armadillo/tokens/gimmie/category.key delete mode 100644 packages/armadillo/tokens/gimmie/enc.key delete mode 100644 packages/armadillo/tokens/killme/category delete mode 100644 packages/armadillo/tokens/killme/category.key delete mode 100644 packages/armadillo/tokens/killme/enc.key delete mode 100644 packages/armadillo/tokens/ltraceme/category delete mode 100644 packages/armadillo/tokens/ltraceme/category.key delete mode 100644 packages/armadillo/tokens/ltraceme/enc.key delete mode 100644 packages/armadillo/tokens/straceme/category delete mode 100644 packages/armadillo/tokens/straceme/category.key delete mode 100644 packages/armadillo/tokens/straceme/enc.key diff --git a/packages/armadillo/armadillo.mk b/packages/armadillo/armadillo.mk deleted file mode 100644 index 4febdb5..0000000 --- a/packages/armadillo/armadillo.mk +++ /dev/null @@ -1,20 +0,0 @@ -ARMADILLO_PKGDIR = $(TARGET)/armadillo - -armadillo-install: armadillo-build - mkdir -p $(ARMADILLO_PKGDIR) - - mkdir -p $(ARMADILLO_PKGDIR)/bin/ - $(MAKE) -C packages/armadillo/src install DESTDIR=$(CURDIR)/$(ARMADILLO_PKGDIR) - - $(call COPYTREE, packages/armadillo/tokens, $(ARMADILLO_PKGDIR)/tokens) - - $(call COPYTREE, packages/armadillo/service, $(ARMADILLO_PKGDIR)/service) - -armadillo-clean: - rm -rf $(ARMADILLO_PKGDIR) - $(MAKE) -C packages/armadillo/src clean - -armadillo-build: - $(MAKE) -C packages/armadillo/src build - -PACKAGES += armadillo diff --git a/packages/armadillo/service/armadillo/finish b/packages/armadillo/service/armadillo/finish deleted file mode 100755 index 6317f74..0000000 --- a/packages/armadillo/service/armadillo/finish +++ /dev/null @@ -1,4 +0,0 @@ -#! /bin/sh - -IP=$(cat ip.txt) -ip addr del $IP dev eth0 diff --git a/packages/armadillo/service/armadillo/ip.txt b/packages/armadillo/service/armadillo/ip.txt deleted file mode 100644 index 2e7cb07..0000000 --- a/packages/armadillo/service/armadillo/ip.txt +++ /dev/null @@ -1 +0,0 @@ -10.0.0.3/24 diff --git a/packages/armadillo/service/armadillo/log/run b/packages/armadillo/service/armadillo/log/run deleted file mode 100755 index 1e7bd9d..0000000 --- a/packages/armadillo/service/armadillo/log/run +++ /dev/null @@ -1,3 +0,0 @@ -#! /bin/sh - -exec svlogd -tt $PWD diff --git a/packages/armadillo/service/armadillo/motd b/packages/armadillo/service/armadillo/motd deleted file mode 100644 index 47ed8b3..0000000 --- a/packages/armadillo/service/armadillo/motd +++ /dev/null @@ -1,4 +0,0 @@ - .::7777::-. - /:'////' `::>/|/ - .', |||| `/( e\ - -==~-'`-Xm````-mr' `-_\ diff --git a/packages/armadillo/service/armadillo/pwnie b/packages/armadillo/service/armadillo/pwnie deleted file mode 100755 index 7317d69..0000000 --- a/packages/armadillo/service/armadillo/pwnie +++ /dev/null @@ -1,4 +0,0 @@ -#! /bin/sh - -[ -f motd ] && cat motd -exec chroot /mnt/pwnables-root login -f alice diff --git a/packages/armadillo/service/armadillo/run b/packages/armadillo/service/armadillo/run deleted file mode 100755 index 40b5dab..0000000 --- a/packages/armadillo/service/armadillo/run +++ /dev/null @@ -1,40 +0,0 @@ -#! /bin/sh -e - -# Configure IP address -IP=$(cat ip.txt) -ip addr add $IP label eth0:armadillo dev eth0 - -# Set up chroot environment -# We never umount any of this since it's all just in RAM -mkdir -p /mnt/armadillo-root -grep -q armadillo-root /proc/mounts || mount -o bind / /mnt/armadillo-root -grep -q armadillo-var /proc/mounts || mount -t tmpfs -o size=5m,mode=0755 armadillo-var /mnt/armadillo-root/var -grep -q armadillo-tmp /proc/mounts || mount -t tmpfs -o size=15k armadillo-tmp /mnt/armadillo-root/tmp -grep -q armadillo-home /proc/mounts || mount -t tmpfs -o size=5m,mode=0755 armadillo-home /mnt/armadillo-root/home - -# Make some skeleton junk -install -o root -m 0755 -d /mnt/armadillo-root/var/lib -install -o root -m 0755 -d /mnt/armadillo-root/var/lib/ctf -install -o root -m 0755 -d /mnt/armadillo-root/var/lib/ctf/tokens -install -o root -m 0755 -d /mnt/armadillo-root/var/log -install -o root -m 0755 -d /mnt/armadillo-root/var/spool -install -o root -m 0755 -d /mnt/armadillo-root/var/cache -install -o root -m 0777 -d /mnt/armadillo-root/var/run -install -o root -m 0777 -d /mnt/armadillo-root/var/cache - -# Install the binaries -install -o root -d /mnt/armadillo-root/home/alice/ -install -o bob -m 0111 /opt/armadillo/bin/gimmie /mnt/armadillo-root/home/alice/ -install -o bob -m 0111 /opt/armadillo/bin/dillo /mnt/armadillo-root/home/alice/ - -# straceme and killme need to be suid, to prevent LD_PRELOAD -install -o bob -m 04111 /opt/armadillo/bin/straceme /mnt/armadillo-root/home/alice/ -install -o bob -m 04111 /opt/armadillo/bin/killme /mnt/armadillo-root/home/alice/ - -# Set up links for tokens -mkdir -p /var/lib/ctf/tokens -for puzzle in gimmie straceme killme dillo; do - ln -sf /mnt/armadillo-root/var/lib/ctf/tokens/$puzzle /var/lib/ctf/tokens/$puzzle -done - -exec tcpsvd -C 5:"Let's not be greedy" ${IP%/*} 23 /sbin/telnetd -l ./pwnie diff --git a/packages/armadillo/src/Makefile b/packages/armadillo/src/Makefile deleted file mode 100644 index b183ebc..0000000 --- a/packages/armadillo/src/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -CFLAGS = -Wall -Werror -TARGETS = gimmie straceme killme dillo - -all: build - -build: $(TARGETS) - -gimmie: gimmie.o token.o arc4.o -straceme: straceme.o token.o arc4.o -killme: killme.o token.o arc4.o -dillo: dillo.o token.o arc4.o - -install: $(TARGETS) - install -m 0755 $(TARGETS) $(DESTDIR)/bin - -clean: - rm -f *.o $(TARGETS) diff --git a/packages/armadillo/src/arc4.c b/packages/armadillo/src/arc4.c deleted file mode 120000 index 4dcde89..0000000 --- a/packages/armadillo/src/arc4.c +++ /dev/null @@ -1 +0,0 @@ -../../../src/arc4.c \ No newline at end of file diff --git a/packages/armadillo/src/arc4.h b/packages/armadillo/src/arc4.h deleted file mode 120000 index a5d8c7a..0000000 --- a/packages/armadillo/src/arc4.h +++ /dev/null @@ -1 +0,0 @@ -../../../src/arc4.h \ No newline at end of file diff --git a/packages/armadillo/src/dillo-solve b/packages/armadillo/src/dillo-solve deleted file mode 100755 index 296dbc5..0000000 --- a/packages/armadillo/src/dillo-solve +++ /dev/null @@ -1,22 +0,0 @@ -#! /usr/bin/python - -import subprocess - -# In the actual contest you'd want to run netcat or just -# open your own TCP connection to port 23 and run commands. -d = subprocess.Popen(['./dillo'], - stdout=subprocess.PIPE, - stdin=subprocess.PIPE) -o = d.stdout -i = d.stdin - -c = o.read(1) -v = chr(ord(c) ^ 0x20) -i.write(v) - -o.readline() -o.readline() -o.readline() -o.readline() -o.readline() -d.poll() diff --git a/packages/armadillo/src/dillo.c b/packages/armadillo/src/dillo.c deleted file mode 100644 index 44e6cad..0000000 --- a/packages/armadillo/src/dillo.c +++ /dev/null @@ -1,59 +0,0 @@ -#include -#include -#include -#include "arc4.h" -#include "token.h" - -const uint8_t key[] = - {0xa5, 0xb1, 0x6f, 0xce, - 0x59, 0x2d, 0xb1, 0xe9, - 0x4b, 0x07, 0x91, 0x6d, - 0x9f, 0x3b, 0xc8, 0xc6}; - -const char dillo[] = - (" .::7777::-.\n" - " /:'////' `::>/|/\n" - " .', |||| `/( e\\\n" - " -==~-'`-Xm````-mr' `-_\\\n"); - -int -main(int argc, char *argv[]) -{ - uint8_t v; - int i; - - /* Pick a random non-zero xor value */ - do { - v = arc4_rand8(); - } while (! v); - - - /* Print the dillo */ - for (i = 0; dillo[i]; i += 1) { - struct timespec req = {0, 33333333}; - uint8_t c = dillo[i]; - - if ('\n' != c) { - c ^= v; - } - write(1, &c, 1); - nanosleep(&req, NULL); - } - - /* Read a single byte; strace will help with solution */ - { - uint8_t c; - - read(0, &c, 1); - if (c != v) { - return 1; - } - } - - if (-1 == print_token("dillo", key, sizeof(key))) { - write(2, "Something is broken; I can't read my token.\n", 44); - return 69; - } - - return 0; -} diff --git a/packages/armadillo/src/gimmie.c b/packages/armadillo/src/gimmie.c deleted file mode 100644 index bdf56f2..0000000 --- a/packages/armadillo/src/gimmie.c +++ /dev/null @@ -1,19 +0,0 @@ -#include -#include -#include "token.h" - -uint8_t const key[] = {0x5f, 0x64, 0x13, 0x29, - 0x2e, 0x46, 0x76, 0xcd, - 0x65, 0xff, 0xe8, 0x03, - 0xa4, 0xa9, 0x4f, 0xd9}; - -int -main(int argc, char *argv[]) -{ - if (-1 == print_token("gimmie", key, sizeof(key))) { - fprintf(stderr, "Something is broken; I can't read my token.\n"); - return EX_UNAVAILABLE; - } - - return 0; -} diff --git a/packages/armadillo/src/killme.c b/packages/armadillo/src/killme.c deleted file mode 100644 index 90ba60b..0000000 --- a/packages/armadillo/src/killme.c +++ /dev/null @@ -1,59 +0,0 @@ -#include -#include -#include -#include -#include "arc4.h" -#include "token.h" - -#define ROUNDS 20 - -uint8_t const key[] = {0x51, 0x91, 0x6d, 0x81, - 0x14, 0x21, 0xf8, 0x95, - 0xb8, 0x09, 0x87, 0xa6, - 0xa8, 0xb0, 0xa0, 0x46}; - -int lastsig; - -void -handler(int signum) -{ - lastsig = signum; -} - -int -main(int argc, char *argv[]) -{ - int i; - - for (i = 1; i < 8; i += 1) { - signal(i, handler); - } - - for (i = 0; i < ROUNDS; i += 1) { - int desired = (arc4_rand8() % 7) + 1; - - lastsig = 0; - printf("%d\n", desired); - fflush(stdout); - if (i == 0) { - sleep(5); - } else { - sleep(1); - } - if (0 == lastsig) { - printf("Too slow.\n"); - return 1; - } - if (lastsig != desired) { - printf("Wrong one.\n"); - return 1; - } - } - - if (-1 == print_token("killme", key, sizeof(key))) { - fprintf(stderr, "Something is broken; I can't read my token.\n"); - return EX_UNAVAILABLE; - } - - return 0; -} diff --git a/packages/armadillo/src/straceme.c b/packages/armadillo/src/straceme.c deleted file mode 100644 index ceb9ea2..0000000 --- a/packages/armadillo/src/straceme.c +++ /dev/null @@ -1,85 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "token.h" - -uint8_t const key[] = {0x30, 0x00, 0x55, 0x0f, - 0xc2, 0xf6, 0x52, 0x2a, - 0x31, 0xfd, 0x00, 0x92, - 0x9d, 0x49, 0x24, 0xce}; - -int -main(int argc, char *argv[]) -{ - /* Check argv[1]. - * - * If no args, argv[1] will be NULL, which causes a segfault. - * This is what we want. - * - * To pass this, run ./straceme $$. - * But you have to do it from a shell script, because if you run - * strace ./straceme $$ - * getppid() will return the PID of strace! - */ - if (getppid() != atoi(argv[1])) { - write(2, "argv[1] incorrect\n", 18); - return EX_USAGE; - } - - /* Read an rc file. - * - * To pass this, set $HOME to someplace you have access. - */ - { - int fd; - char fn[128]; - char bs[1000]; - int len; - - len = snprintf(fn, sizeof(fn) - 1, "%s/.stracemerc", getenv("HOME")); - if (len < 0) { - len = 0; - } - fn[len] = '\0'; - - if (-1 == (fd = open(fn, O_RDONLY))) { - fd = open("/etc/stracemerc", O_RDONLY); - } - if (-1 == fd) { - return EX_NOINPUT; - } - - /* We don't actually care about contents */ - read(fd, bs, sizeof(bs)); - close(fd); - } - - /* Read in category name from fd 5 - * - * echo -n straceme > foo.txt - * ./straceme $$ 5< foo.txt - */ - { - char cat[50]; - int catlen; - int i; - - catlen = read(5, cat, sizeof(cat) - 1); - for (i = 0; i < catlen; i += 1) { - if (! isalnum(cat[i])) break; - } - cat[i] = '\0'; - - if (-1 == print_token(cat, key, sizeof(key))) { - write(2, "Something is broken; I can't read my token.\n", 44); - return 69; - } - } - return 0; -} diff --git a/packages/armadillo/src/token.c b/packages/armadillo/src/token.c deleted file mode 120000 index b64f986..0000000 --- a/packages/armadillo/src/token.c +++ /dev/null @@ -1 +0,0 @@ -../../../src/token.c \ No newline at end of file diff --git a/packages/armadillo/src/token.h b/packages/armadillo/src/token.h deleted file mode 120000 index 18eaf6f..0000000 --- a/packages/armadillo/src/token.h +++ /dev/null @@ -1 +0,0 @@ -../../../src/token.h \ No newline at end of file diff --git a/packages/armadillo/tokens/gimmie/category b/packages/armadillo/tokens/gimmie/category deleted file mode 100644 index 5e1d073..0000000 --- a/packages/armadillo/tokens/gimmie/category +++ /dev/null @@ -1 +0,0 @@ -pwnables diff --git a/packages/armadillo/tokens/gimmie/category.key b/packages/armadillo/tokens/gimmie/category.key deleted file mode 100644 index b9f44b7..0000000 --- a/packages/armadillo/tokens/gimmie/category.key +++ /dev/null @@ -1 +0,0 @@ -‚Æt322˜/—0ãg†žji \ No newline at end of file diff --git a/packages/armadillo/tokens/gimmie/enc.key b/packages/armadillo/tokens/gimmie/enc.key deleted file mode 100644 index b90c03d..0000000 --- a/packages/armadillo/tokens/gimmie/enc.key +++ /dev/null @@ -1 +0,0 @@ -_d).FvÍeÿ褩OÙ \ No newline at end of file diff --git a/packages/armadillo/tokens/killme/category b/packages/armadillo/tokens/killme/category deleted file mode 100644 index 5e1d073..0000000 --- a/packages/armadillo/tokens/killme/category +++ /dev/null @@ -1 +0,0 @@ -pwnables diff --git a/packages/armadillo/tokens/killme/category.key b/packages/armadillo/tokens/killme/category.key deleted file mode 100644 index b9f44b7..0000000 --- a/packages/armadillo/tokens/killme/category.key +++ /dev/null @@ -1 +0,0 @@ -‚Æt322˜/—0ãg†žji \ No newline at end of file diff --git a/packages/armadillo/tokens/killme/enc.key b/packages/armadillo/tokens/killme/enc.key deleted file mode 100644 index ed50ba4..0000000 --- a/packages/armadillo/tokens/killme/enc.key +++ /dev/null @@ -1 +0,0 @@ -Q‘m!ø•¸ ‡¦¨° F \ No newline at end of file diff --git a/packages/armadillo/tokens/ltraceme/category b/packages/armadillo/tokens/ltraceme/category deleted file mode 100644 index 5e1d073..0000000 --- a/packages/armadillo/tokens/ltraceme/category +++ /dev/null @@ -1 +0,0 @@ -pwnables diff --git a/packages/armadillo/tokens/ltraceme/category.key b/packages/armadillo/tokens/ltraceme/category.key deleted file mode 100644 index b9f44b7..0000000 --- a/packages/armadillo/tokens/ltraceme/category.key +++ /dev/null @@ -1 +0,0 @@ -‚Æt322˜/—0ãg†žji \ No newline at end of file diff --git a/packages/armadillo/tokens/ltraceme/enc.key b/packages/armadillo/tokens/ltraceme/enc.key deleted file mode 100644 index faaa27e08c2abdfa9a1342e85fe2f7cf817534ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16 YcmbR8X_BjuOT)vdDQBPj=VA~507!TT*Z=?k diff --git a/packages/armadillo/tokens/straceme/category b/packages/armadillo/tokens/straceme/category deleted file mode 100644 index 5e1d073..0000000 --- a/packages/armadillo/tokens/straceme/category +++ /dev/null @@ -1 +0,0 @@ -pwnables diff --git a/packages/armadillo/tokens/straceme/category.key b/packages/armadillo/tokens/straceme/category.key deleted file mode 100644 index b9f44b7..0000000 --- a/packages/armadillo/tokens/straceme/category.key +++ /dev/null @@ -1 +0,0 @@ -‚Æt322˜/—0ãg†žji \ No newline at end of file diff --git a/packages/armadillo/tokens/straceme/enc.key b/packages/armadillo/tokens/straceme/enc.key deleted file mode 100644 index 4a72766c4dd10de468b6f5d5f69a743e58f004ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16 XcmXqD2<1QYElA7oFT