浙江省2025预赛re

Author:share

这次没有打好,吸取了些教训

1.DontDebugMe

一道签到题

打开发现有个反调试,然后通过复杂的计算,算出key进行加密,加密逻辑是先加上key的高八位,在异或上低八位.

key直接动调出来就行了,这里是俩个字节进行加密的

exp:

v=[   0xa9e9,0xa7f8,0xa2f9,0xd620,0xd69a,0xd9c8,0xd399,0x85cb,0xd29b,0xd5c7,0x8496,0xd4c9,0xd89a,0xd7ca,0xd59c,0x85c8,0xd597,0x859e,0xd49c,0x6dca,  ]

key=[0x685,0xEE20]

for i in range(len(v)):
v[i]^=key[1]
v[i]-=key[0]
for i in range(len(v)):
print(chr(v[i]&0xff)+chr(v[i]>>8),end='')

2.BasicLoader

这题动调的时候发现了反调试,直接查看发现了这是修改了值,创建了另外一个进程来进行加密,直接dump出来加密程序

这里来到了第二部分,这里跟第一部分类似,是对v9进行rc4加密,然后当作函数来校验输入的对错,直接将加密后的数据写入二进制文件

这里就是简单的一个异或

exp:

v = [
0x20014077,
0x770A1073,
0x7C0B4320,
0x73524472,
0x73501128,
0x20564477,
0x77041321,
0x72524721
]
key=0x44332211
for i in range(len(v)):
v[i]^=key
for i in range(len(v)):
for j in range(4):
print(chr((v[i]>>8*j)&0xff),end='')

3.ez_rust

比赛的时候没有时间去做了,后面复现了一下

这是一道rust语言逆向,输入时用文件来完成的

这里是将前四位当作密钥来初始化rc4的,然后进行rc4加密,猜测是flag头的前四位DASC

这里使用了salsa20这个加密跟rc4一样是对称加密

这里的密钥是使用了rc4初始的s盒,这里拼接到最后的八位是nonce,然后进行加密

使用idapython,动调计算数密文后在进行rc4解密得到最后的flag

提取出密文

exp:

def rc4(key, data):
if isinstance(key, str):
key = key.encode('utf-8')
if isinstance(data, str):
data = data.encode('utf-8')
S = list(range(256))
j = 0
for i in range(256):
j = (j + S[i] + key[i % len(key)]) % 256
S[i], S[j] = S[j], S[i]
i = j = 0
result = []
for byte in data:
i = (i + 1) % 256
j = (j + S[i]) % 256
S[i], S[j] = S[j], S[i]
# 与密钥流进行异或操作
result.append(S[(S[i] + S[j]) % 256])
return result


# 示例用法
if __name__ == "__main__":
key = 'DASC'
# 明文
plaintext =[ 0xB5, 0x46, 0x94, 0x60, 0x4A, 0x85, 0x5C, 0xFF, 0xBA, 0x0E,
0x22, 0xDA, 0x65, 0x2B, 0xB4, 0xEB, 0x37, 0xF4, 0x61, 0xC7,
0x76, 0x76, 0x79, 0x03, 0x07, 0xA1, 0x36, 0xEF, 0x0A, 0xCD,
0x26, 0xA4, 0x1D, 0x26, 0x7D, 0x0C, 0x34, 0x4C, 0x0B, 0xA5,
0x97,]
a=[]
ciphertext = rc4(key, plaintext)
for i in range(len(plaintext)):
a.append((plaintext[i]^ciphertext[i])&0xff)
print(bytes(a))

还需要努力✊

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇
本博客已运行 days h m s
The Blog By spr1ng
Thank you for your support.