summaryrefslogtreecommitdiff
path: root/fast
diff options
context:
space:
mode:
Diffstat (limited to 'fast')
-rw-r--r--fast/server.yaml4
-rw-r--r--fast/submitter.py16
2 files changed, 13 insertions, 7 deletions
diff --git a/fast/server.yaml b/fast/server.yaml
index 8c3bdb8..fcee064 100644
--- a/fast/server.yaml
+++ b/fast/server.yaml
@@ -1,7 +1,7 @@
game:
tick_duration: 80
- flag_format: ENO[A-Za-z0-9+\/=]{48}
- team_ip: 10.1.26.1
+ flag_format: SAAR\{[A-Za-z0-9-_]{32}\}
+ team_ip: 10.32.160.0
submitter:
delay: 20
diff --git a/fast/submitter.py b/fast/submitter.py
index dcaffe7..a5df7cb 100644
--- a/fast/submitter.py
+++ b/fast/submitter.py
@@ -1,7 +1,13 @@
-import requests
+from pwn import *
def submit(flags):
- flag_responses = requests.post('http://example.ctf/flags', json=flags).json()
- accepted_flags = { item['flag']: item['response'] for item in flag_responses if item['response'].endswith('OK') }
- rejected_flags = { item['flag']: item['response'] for item in flag_responses if not item['response'].endswith('OK') }
- return accepted_flags, rejected_flags
+ accepted_flags, rejected_flags = {}, {}
+ r = remote('submission.ctf.saarland', 31337)
+ for flag in flags:
+ r.sendline(flag.encode())
+ response = r.recvline().decode().strip()
+ if response.startswith('[OK]'):
+ accepted_flags[flag] = response
+ else:
+ rejected_flags[flag] = response
+ return accepted_flags, rejected_flags