Automne's Shadow.

HSCTF 2019 SuperSecureSystem WriteUp

2019/06/06 Share

Crypto

打个酱油做了下。

题目如下,还是蛮多人做出来的。

automne

连接之后,会提供一段super secret message,但是每次连接这段message都不同。由于flag的格式是hsctf{},输入hsctf{可以看到就是这段super secret message的前面部分的内容

automne

所以只要遍历ascii码,和message对比即可得到flag。

主要考察脚本的编写,使用pwntools,但是在做比较的时候,务必注意将得到的输出用strip()处理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#encoding=utf-8

from pwn import *

p = remote("crypto.hsctf.com",8111)
s = p.recvline_contains("secret")[-106:]
print "secret message: " + s
flag = ""
j = 0

while True:
for i in range(33,127):
#p.recvuntil('encrypt: ')
p.sendline(flag+chr(i))
p.recvuntil('Encrypted: ')
r = p.recvline()
#print flag+chr(i)
#print r
#print s[j:j+2]
if s[j:j+2] == r.strip()[-2:]:
print "Gotta."
flag += chr(i)
print flag
j += 2
print j
if j == 104:
print "solved!"
break
print flag

运行一段时间得到flag:

automne

CATALOG