今天把polar靶场的crypto密码简单部分ak了,一点一点分享一下wp
上楼梯
打开题目是一串乱码

我们先尝试把这些乱码字符转一下ASCII码,看能不能出一些信息

我们可以发现虽然后面是框,但是其实还是有实际意义的
我们知道f的ASCII码是102,第一位实际是101
l的ASCII码是108,第二位实际是106
我们猜测第一位往后1位,第2位往后2位,第三位往后3位以此类推
我们写个脚本
python
nums = [101, 106, 94, 99, 118, 96, 93, 94, 47, 42, 40, 42, 89, 40, 86, 85, 82, 31, 32, 31, 34, 80, 74, 74, 26, 73, 26, 71, 23, 20, 19, 23, 18, 15, 20, 14, 19, 87]
result = ""
for i, num in enumerate(nums):
new_val = num + (i + 1) # 第i位加i+1
result += chr(new_val)
print(result)

得到flag
再这么说话我揍你了
这个打开就知道是阴阳怪气编码,直接在线解码即可

替换?
题目已经给了很明确的提示了,替换,使用替换密码的没几个,希尔就是比较常出的一个
第一行给出了字母表abcdefghijklmnopqrstuvwxyz
密文是rolwwzupvajwopfw
密钥是bgirxjleyucnszhm
直接在线解

得到flag
xuja decode
看题目,x、u、j、a是4个不同的加密方式
如果我们逆向过来就是先用aaencode解密

然后是jjencode

然后是uuencode

最后就是xxencode

得到了flag
base?
打开题目标准的base100,直接解码

这里我们看不出来是什么编码,可以直接试试一键解码,看看有没有有用的信息

发现直接解出来flag了,我可以反问一下rot47的形式

其实字面意思就是没有非常特征的表现,也只能这样一键解码试一试了
serpent
这是一个新的知识点,就是serpent密码,我们拿到题目先是一个压缩包,也没有别的提示,那就直接爆破呗

然后就找一个在线解密网站,密码还是压缩包密码

就可以得到flag,至于这个密码
大概就是一个对称密钥块密码,这是在高级加密标准(AES)的较量,它被排在第二位,以Rijndael算法入围。Serpent是由罗斯·安德森,礼比哈姆,和Lars努森设计。像其他的AES意见书,Serpent具有128比特的块大小和支持的128,192或256位的密钥大小。所述的密码是32轮取代-置换网络的4个32位字块上的操作。每轮适用的8个4比特至4比特S-box的并行32倍之一。
感觉也不会怎么出,了解一下有这个东西吧
这是贝斯?
这道题也没啥难的,按照文件名顺序解码就行,85-91-92

置换密码
这里打开可以直接猜测就是ASCII码,我们直接转换一下

我们可以看到初具规模但又很奇怪
前面提示说是置换密码,我们想到是不是变换了位置,总共24个,我们可以先尝试拼接flag,就是开头,按顺序变成4行6列
然后开始找顺序

发现拼成flag的是425361的顺序,我们每一行都按照这样进行排序

最后连起来就是flag
本次先分享到这里,谢谢大家