summaryrefslogtreecommitdiffstats
path: root/meta/comm.py
diff options
context:
space:
mode:
authorLouis Burda <quent.burda@gmail.com>2025-01-17 23:42:20 +0100
committerLouis Burda <quent.burda@gmail.com>2025-01-17 23:42:20 +0100
commit6a51a43fef38de05996a5cf2daa6b887dba7e68b (patch)
treea9714e76f08f21e4b6e6248ed6813347aca24ef0 /meta/comm.py
downloadnullcon2023-megavault-master.tar.gz
nullcon2023-megavault-master.zip
Add final challenge filesHEADmaster
Diffstat (limited to 'meta/comm.py')
-rw-r--r--meta/comm.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/meta/comm.py b/meta/comm.py
new file mode 100644
index 0000000..c10ad97
--- /dev/null
+++ b/meta/comm.py
@@ -0,0 +1,25 @@
+import serial
+import sys
+
+def readcmd():
+ while True:
+ line = ser.readline().strip().decode()
+ if len(line) > 0:
+ print("<", line)
+ if line[0] == '!':
+ break
+ return line
+
+def sendcmd(line):
+ print(">", line)
+ ser.write(line.encode() + b"\r")
+
+with serial.Serial(sys.argv[1], 9600, timeout=1) as ser:
+ sendcmd("!INIT")
+ assert(readcmd() == "!OK")
+
+ while True:
+ line = readcmd()
+ assert(line == "!FLAG")
+ sendcmd("!OK")
+ sendcmd("ENO{S4f3_Cr4cKd}")