PolarCTF网络安全2023冬季个人挑战赛

MISC

签到喵

知识点:python库函数,喵语加密

1
2
3
小明养了一只可爱的猫咪并给它起名叫小美,有一天小美突然站立了起来,并说出以下这段喵语:
~呜喵喵喵喵呜啊喵啊~呜喵呜呜~呜啊~啊喵啊呜喵呜~~~喵~呜呜呜~~喵喵喵呜呜呜~呜呜喵呜呜啊喵呜啊啊喵啊呜~喵啊啊~喵~呜呜呜呜啊喵喵喵呜啊喵啊喵呜喵呜呜~喵喵喵啊喵啊呜喵呜喵~~喵~呜呜喵啊喵喵喵喵呜啊喵喵呜呜喵呜呜啊喵呜呜啊喵啊呜喵呜~喵~喵~呜呜呜喵喵喵喵喵呜呜喵喵呜呜喵呜呜~喵啊啊啊喵啊呜喵喵啊啊~喵~呜呜喵~喵喵喵喵呜呜喵喵啊呜喵呜呜~呜啊呜啊喵啊呜~喵啊啊~喵~呜呜喵啊~喵喵喵呜呜啊呜啊呜喵呜呜啊呜啊啊啊喵啊呜~啊呜喵~喵~呜喵呜~~喵喵喵呜呜啊~啊呜喵呜呜~呜啊呜啊喵啊呜~啊喵喵~喵~呜喵啊喵喵喵喵喵呜呜~喵~呜喵呜呜~喵啊~啊喵啊呜~喵啊喵~喵~呜呜呜喵呜喵喵喵呜啊喵啊喵呜喵呜呜啊呜~呜啊喵啊呜喵呜呜呜~喵~呜喵呜啊喵喵喵喵呜呜呜呜啊呜喵呜呜~喵喵喵啊喵啊呜~啊喵啊啊
小明感到十分诧异,他觉得这是小美在告诉他什么隐藏的信息,请你帮助小明翻译小美说了什么,并根据生成文件得到答案

可以看到

兽音译者:http://hi.pcmoe.net/roar.html

image-20240127153205216

http://weixin.qq.com/r/lC3I0KrEAPd-re6z93iG

这是什么?

查看found.py,放入小美说的话

image-20240127153332503

qrcode

宝宝请拿flag:flag{www.PolarCTF.com}

A 宽宽 S 00 E

知识点:零宽字节,ASE加密

image-20240127153544030

仔细查看有什么种类b,c,e,f

image-20240127154118819

或者这种https://offdev.net/demos/zwsp-steg-js

image-20240127153945198

1
U2FsdGVkX19d7TPOqeK+yL2btyx2gt4lp2ErgNwLzytzew9Wu7tcVvsR4tqWzGFi 772B6etLclejBUsSwv/hmg==

根据题目可以看到是aes,但是密钥呢,再看文本是sql,猜密钥为sql

1
YjMzN2U4NGRlODc1MmIyN2VkYTNhMTIzNjMxMDllODA=

image-20240127154634264

flag{b337e84de8752b27eda3a12363109e80}

是uu吗

知识点:uuencode,steghide

1
&,3(S-#4V

根据题目可以判断是uuencode

image-20240127155130236

image-20240127160117470

1
>9FQA9WLV-S$S-S@Y-#8P,C,V-#@W-S@S,C0V.#E]

同样UUencode

1
flag{671378946023648778324689}

机密

知识点:文件隐藏,爆破

image-20240127160257576

放到kali,binwalk或者foremost分离出来

有个压缩包

image-20240127160621409

flag{d72e5a671aa50fa5f400e5d10eedeaa5}

EZ签到

知识点:伪加密,imagemagick,gaps,f5加密,base家族

image-20240127160920275

改成00

f1ag

一个猫猫

我也不知道为什么要用F5-steganography,还有密码是qiandao

image-20240127161550626

1
nizhenbuhuiyiweizheshiqiandaoba

用这个来解密flag.zip

发现里面是正方形的图片,但是 图片大小不相同

用ps

image-20240127161833580

gaps

1
python3 gaps --image=falg.jpg --size=40 --save

还原好的图片为

image-20240127161812624

1
R1kzRE1RWldHRTNET04yQ0dRMlRNTUpYSUUzVFNOS0dHVVpUTU9KV0c0M0VLTktHR1E0VE1SSlhJUT09PT09PQ==

image-20240127162344397

社会主义大法好

1

2014或者1945为密码

1
平等平等和谐文明自由公正法治和谐公正自由自由法治平等公正公正诚信民主平等爱国和谐民主和谐爱国公正爱国平等爱国平等自由自由平等公正自由公正诚信和谐公正民主自由爱国公正友善公正自由诚信民主和谐敬业平等法治公正民主和谐富强自由诚信富强法治平等自由诚信富强法治平等和谐自由平等平等自由民主法治富强公正友善平等自由诚信和谐法治诚信富强自由诚信和谐公正平等和谐公正和谐敬业法治爱国平等爱国公正法治和谐爱国法治敬业自由文明自由友善平等和谐富强自由公正法治法治和谐平等法治民主和谐自由自由爱国法治自由平等民主和谐平等文明友善平等法治民主自由诚信民主和谐公正自由文明自由和谐自由文明富强友善自由文明友善平等平等法治公正诚信民主自由爱国平等民主自由自由公正敬业自由敬业法治爱国公正友善平等法治和谐和谐友善法治
1
2
U2FsdGVkX18hXTEdmaHlK9Wa0JuJu4UApkMzMe69xXg8yBK0Fw5q4HtQ5+qK6BCB
+WkHQDiIxks=

应该是rabit解密

image-20240127162747693

1
flag{Hold_high_the_banner_of _socialism}

Crypto

神秘组织M

这个组织是由5个人创建起来的!!!

1
{bc1bg572ec066}a0d2fb137l951b5451f06b7

可以发现有flag

可以推测前面为flag{}

1
2
3
4
5
    {       b       c		1	    b
g 5 7 2 e c 0 6 6 }
a 0 d 2 f b 1 3 7
l 9 5 1 b 5 4 5 1
f 0 6 b 7

flag{50905d7b2216bfeccb5b41016357176b}

数星星

小明暗恋小红很久了,终于在一个月黑风高的夜晚,决定约她出去数星星。小明数着数着,数出了一串数字,3,6,10,12,15,他觉得这是爱情的关键,思考了整整一晚上,小红很生气,给了他一巴掌。小明觉得就是这串数字让他失去了爱情,你还等什么呢,快来一起数数吧!
得到的结果md5 32位小写加密一下哟!

1
2
3
4
5
6
import wordninja

fn = wordninja.split("****")
str1 = " ".join(fn)
f=open('123.txt','a+')
f=f.write(str1)

image-20240203235517409

which is your favorite word

image-20240204000135558

flag{17c5d0278edcbad3d061a92b723c116d}

不一样的四四方方

请开始你的表演(密文):jilinjingcha

注意:正确的密钥后面最后一个字母不要!!!
key1:information
key2:engineering

网上的关于四方密码介绍很多,一般秘钥都是没有j/q/i

1
2
informatbcdeghjklpqsuvwxy
engirabcdfhjklmopqstuvwxy

但是这道题我们去的是z

http://www.hiencode.com/four.html

http://www.metools.info/code/four-square244.html

image-20240204001557574

flag{c6dac3a0f40dfacefcc473585cdeb0f8}

我爱456

有一个程序员认为456是他的幸运数字,所以干什么都喜欢循环456。得到答案后MD5加密套上flag{}即可

kseYvkasuj5618t
lygemfla235158jd
utasvQsjdybl587t
sydwkuhd54kdhg
jtftY658qiwudhs
iaugwjiushyc871
aksQbhasbkjcbkjd
dvbpzd8v26dfv6f
s6dvdNf6v52v6x
65dT26f5d1b6f5v
35f2Y6d65bbfv5
35dfv32d8bfv256d
kdhMvnhdkjzldkj
sdhjTujsdbch268
sdr26Iksds265dsv
jnm2dsnsdv26865

456循环,依次提取字符串中的第4,5,6个字符

1
2
3
4
5
6
7
8
9
10
11
12
with open("提取出只有字符串的文件位置", 'r') as f:
a = f.read().split('\n')
flag = ''
for i in range(len(a)):
if i % 3 == 0:
flag += a[i][3]
elif i % 3 == 1:
flag += a[i][4]
else:
flag += a[i][5]
print(flag)
# YmQwYjQzNTY3MTI2

base64得到bd0b43567126
flag{b5ff0893e6522a037c144a1f502c2b48}

base

j2rXjx8wSZjD
GHI3KLMNJOPQRSTUb=cdefghijklmnopWXYZ/12+406789VaqrstuvwxyzABCDEF5
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789=+/

image-20240204002421544

flag{666}

AFF

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
flag = "WMPTPTRGGPED"

flaglist = []

for i in flag:
flaglist.append(ord(i)-97)

flags = ""
for i in flaglist:
for j in range(0,26):
c = (3 * j - 17) % 26
if(c == i):
flags += chr(j+97)


print(a,b,flag)

题目可知是仿射密码
密文WMPTPTRGGPED
c = (3 * j - 17) % 26
根据代码可知,a=3,b=17

image-20240204002618865

得到thisisaffine
flag{THISISAFFINE}