1. -.-字符串
摩斯密码
2. secret
打开题目地址是个网页跳转,据大佬说直接用burpsuite,我就试了一下
后来发现了个更方便的方法,直接F12,你懂的
3. A Piece Of Cake
字母频率破解替换加密
分析上下文,发现缺少的字母是b,填充进去拿flag就好
4. 美丽的实验室logo
工具stegsolve了解一下,选择帧播放
5. 段子
直接锟斤拷转16进制代码就好
6. 握手包
他们都说使用kali解密的,这题我倒没试过
7. 公倍数
写个程序就好啦
8. base64?
直接base32解密,然后改为16进制
9. 关于USS Lab
百度USS Lab就好
10. 熟悉的声音
脑洞很大,先将上面字符串转化为-.组成的字符串,然后摩斯密码在线解密,然后再用凯撒加密
11. Help
先把压缩包的伪加密去掉,再将获得的word文档解压
12. 德军的密码
看了大佬的资料才知道是费纳姆密码
13. 爱吃培根的出题人
培根密码,大小写换成 ab,网上解一下就好
14.ROPGadget
将汇编变成16进制码就好,我是直接用pwntools的
15.veryeasyRSA
直接上脚本跑RSA的结果,用RSATools
python gmpy2库可实现rsa中的求私钥之类的
16. Shellcode
完全不知道是啥,结果网上找了个工具叫shellcodexe,运行一下就好了……
17. 取证
讲道理这题太明显了,我百度了一下,都没去是,直接一个个试软件名就好了---volatility
18. veryeasy
直接用基本命令strings+[文件名]就能获得flag
基础逆向题,拖进IDA,直接上脚本
n = [251, 158, 103, 18, 78, 157, 152, 171, 0, 6, 70, 138, 244,
180, 6, 11, 67, 220, 217, 164, 108, 49, 116, 156, 210, 160]
key = [0xab, 0xdd, 0x33, 0x54, 0x35, 0xef]
flag = ''
for i in range(26):
flag += chr(n[i] ^ key[i % 6])
print(flag)
又是逆向题,直接拖进IDA
就是基础运算,上脚本
import string
def ecrypto(a):
if a != '\xff' and a:
if ord(a) > 47 and ord(a) <= 96:
a = chr(ord(a) + 53)
elif ord(a) <= 46:
a = chr(ord(a) + ord(a) % 11)
else:
a = chr(61 * (ord(a) / 61))
return a
enc = r'jeihjiiklwjnk{ljj{kflghhj{ilk{k{kij{ihlgkfkhkwhhjgly'
m = ''
for i in enc:
for j in string.printable:
if i == ecrypto(j):
m += j
break
print m.decode('hex')
21. Easy RSA
libnum库分解质因数