首页 > 其他 > 详细

CTF-BugKu-加密

时间:2020-09-12 16:14:22      阅读:73      评论:0      收藏:0      [点我收藏+]

2020.09.12

恕我直言,上午做WeChall那个做自闭了,下午复习一下之前做过的。

做题

第一题 滴答~滴

https://ctf.bugku.com/challenges#滴答~滴
技术分享图片

  1. 摩斯密码
    技术分享图片

第二题 聪明的小羊

https://ctf.bugku.com/challenges#聪明的小羊
技术分享图片

  1. 栅栏密码
    技术分享图片

第三题 ok

https://ctf.bugku.com/challenges#ok
技术分享图片

  1. ok密码
    技术分享图片

第四题 这不是摩斯密码

https://ctf.bugku.com/challenges#这不是摩斯密码
技术分享图片

  1. BrainFuck密码
    技术分享图片
    技术分享图片

第五题 easy_crypto

https://ctf.bugku.com/challenges#easy_crypto
技术分享图片

  1. 摩斯密码变种0代替了-1代替了.,最后结果要化成小写。
    技术分享图片

第六题 简单加密

https://ctf.bugku.com/challenges#简单加密
技术分享图片

  1. 看起来很神似base64,但是有一些字符不在base64加密字符的范围,由最后两个AA,猜测是==偏移ascii码之后的结果。
    技术分享图片
  2. 写脚本,先进行ascii码偏移,再进行base64解码
# 这个脚本用于先进行ascii码偏移,再进行base64解码
import base64

miwen = open(‘miwen.txt‘).readline()
res = ‘‘ # 存储结果
for i,enu in enumerate(miwen):
    res += chr(ord(enu)-4)
print(‘ascii码偏移后结果:‘+res)
res = base64.b64decode(res).decode()
print(‘base64解码后结果:‘+res)

技术分享图片

第七题 散乱的密文

https://ctf.bugku.com/challenges#散乱的密文
技术分享图片

  1. 从密文中,我们大致可以猜测出只是字符顺序发生了改变,给的提示是2 1 6 5 3 4,也恰好证实了这一点,这样就说明密文是每六个一组,每一组的每个字符与2 1 6 5 3 4 ,分别对应,2 1 6 5 3 4 是他们明文的正确顺序,也就是说,明文中,第一个对应密文第二个,第二个对应密文第一个,第三个对应密文第五个……
  2. 写个脚本解决问题。
# 此脚本用来根据顺序调整密文以得到铭文
miwen = open(‘miwen.txt‘).readline()
tem = ‘‘ # 临时存储
resList = [] # 结果数组
res = ‘‘ # 最终结果
for i,enu in enumerate(miwen): # 先把密文每六个一组分好
    tem += enu
    if len(tem)==6 or i == len(miwen) - 1:
        resList.append(tem)
        tem = ‘‘
for i in range(len(resList)):
    res += resList[i][1]+resList[i][0]+resList[i][4]+resList[i][5]+resList[i][3]+resList[i][2]
print(res)

技术分享图片

第八题 凯撒部长的奖励

https://ctf.bugku.com/challenges#凯撒部长的奖励
技术分享图片

  1. 凯撒偏移20解密成功
    技术分享图片

第九题 一段Base64

https://ctf.bugku.com/challenges#一段Base64
技术分享图片

  1. Base64解密
    技术分享图片
  2. unescape
    技术分享图片
  3. Hex to text
    技术分享图片
  4. unescape
    技术分享图片
  5. String.fromCharCode(),也就是ascii码转字符吧,写个小脚本
# 此脚本用于ascii码转换字符,输入格式为:38,35,……,120,50
miwen = open(‘miwen.txt‘).readline().split(‘,‘)
for i in range(len(miwen)):
    print(chr(int(miwen[i])),end=‘‘)

技术分享图片
6. Decode HTML
技术分享图片
7. Decode HTML
技术分享图片
8. ……终于出结果了??

第十题 .!?

https://ctf.bugku.com/challenges#.!?
技术分享图片

  1. short ook编码
    技术分享图片

经验教训

  1. 有两种符号组成,每几个一组,每组符号个数不一定相同的加密结果,考虑摩斯密码;
  2. 每组有五个字符,一共有三种类型的字符,可能是short ook加密,一般是.!?这三种字符;

CTF-BugKu-加密

原文:https://www.cnblogs.com/qiaowukong/p/13657062.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!