1.滴答~滴



摩斯码,在线解开。

2.



栅栏密码,在线解就出flag了。

3.



Ook解密,由.?!Ook组成密文,在线网站解密

4.这不是摩斯密码



有点像jsfuck,发现又不是,因为不会出现大于号,查了一下发现brainfuck加密,在线网站解下就ok了。

5.easy_crypto



有点像二进制,发现去转文本失败了,看wp,发现是摩斯密码的另一种,用脚本解出来的,

from __future__ import print_function
a = input("input the string:")
s = a.split(" ")
dict = {'01': 'A',
'1000': 'B',
'1010': 'C',
'100':'D',
'0':'E',
'0010':'F',
'110': 'G',
'0000': 'H',
'00': 'I',
'0111':'J',
'101': 'K',
'0100': 'L',
'11': 'M',
'10': 'N',
'111': 'O',
'0110': 'P',
'1101': 'Q',
'010': 'R',
'000': 'S',
'1': 'T',
'001': 'U',
'0001': 'V',
'011': 'W',
'1001': 'X',
'1011': 'Y',
'1100': 'Z',
'01111': '1',
'00111': '2',
'00011': '3',
'00001': '4',
'00000': '5',
'10000': '6',
'11000': '7',
'11100': '8',
'11110': '9',
'11111': '0',
'001100': '?',
'10010': '/',
'101101': '()',
'100001': '-',
'010101': '.',
'110011':',',
'011010':'@',
'111000':':',
'101010':':',
'10001':'=',
'011110':"'",
'101011':'!',
'001101':'_',
'010010':'"',
'10110':'(',
'1111011':'{',
'1111101':'}'
};
for item in s:
print (dict[item],end='')

6.简单加密



看到后缀的AA,联想到base64的两个等于号,大胆猜测是凯撒,放到在线解密时,发现找不到==,发现在线加解密凯撒的局限性,字母只有26个字母,而不是按照ASCII码来移动,所以要自己写个脚本,只需要对应A和等于相差4,所以将密文所有字符的ASCII码都减4,得到flag,这边脚本我删了,不难写,

7.散乱的密文

发现已经有flag的字符,不过排列是散乱的,题目也给了提示,所以猜测给的是顺序,6个字符为一组,手动排序一下,得到flag



@@字符要去掉,应该只是一个占位的作用

8.凯撒部长的奖励

直接在线解密,最好就是看仔细一点,我第一次做,没怎么看仔细,找了半天。。

9.一段base64(老千层饼了,芜湖飞飞)



给了一堆的字符串,并且是base64,刚做的时候,理解是重复的一段base64,发现我错了,找不到,老老实实

到网站上解密,发现居然是



发现全是八进制的数字,把它转换成字符串看看,



又是十六进制,开始套娃了,再转换一次



发现是Unicode编码,转换成中文看看。



这玩意的意思,不是将里面的数字,转换成字符串吗。。

再来一次。



又是一次Unicode的方式不过,这种需要用html来解码,利用一个工具来搞,经过两次得出flag。



里面还有url编码,拿去解码就好了,可以看一下我之前的变量胡乱设的脚本:

import base64
import unicodedata
import urllib
import re
def convert_to_cn(text):
# 需要将 × 这种先做补全,×
text = re.sub(r'&#x([A-F0-9]{2});', r'&#x00\1;', text)
return text.replace('&#x', '\\u') \
.replace(';', '') \
.decode('unicode-escape') \
.encode('utf-8')
with open('base.txt') as f:
p1=f.read()
p2=base64.b64decode(p1) #暗示是八进制的编码
p3=re.findall('\d+',str(p2))
#解码八进制
p4=p3
p5=""
for i in p3:
p5+=chr(int(i,8)) #解码十六进制:
#先将十六进制数取出来
tmp=re.findall('\d+',p5)
#将十六进制再解码
p6=""
for i in tmp:
p6+=chr(int(i,16))
print(p6)
#将Unicode码取出,再解码
tmp=re.findall('u[\d\w]+',p6)
tmp="".join(tmp).replace('u','\\u')
tmp=tmp.encode('utf-8').decode('unicode_escape') #python3unicode转中文
print(tmp)
#将里面的数字取出,转换成字符串
p7=re.findall("\d+",tmp)
p8=""
for i in p7:
p8+=chr(int(i))
print(p8)



oOk加密,.!?典型

11.



brainfuck在线解密

12.



凯撒,gndk和flag肯定有某种联系,查ASCII码表,就能发现猫腻,写出脚本就得出flag了。

13.这不是md5



这题我去,题目说了这不是md5,我以为掩耳盗铃,结果是真的。。。,md5各种试,看了看wp,发现就是个十六进制。。

14.



在线解密就好了

bugku crypto wp上半部分汇总的更多相关文章

  1. bugku Crypto 下半部分wp

    1. 百度托马斯这个人居然还发明了一种轮转的加密法,发现原理是,他将很多行乱序的26个字母,插到一根柱子上,参考糖葫芦的样子,可以旋转每一行,设置自己要发送的明文后,向对方发送乱码的一列,对方只要将这 ...

  2. bugku crypto easy-crypto

    长度不一的01字符串 就要考虑是不是摩斯密码 用这个py脚本: from __future__ import print_function a = input("input the stri ...

  3. bugku crypto 告诉你一个秘密(ISCCCTF)

    emmmm....有点坑 题目: 636A56355279427363446C4A49454A7154534230526D6843 56445A31614342354E326C4B4946467A57 ...

  4. bugku - pwn wp

    一. PWN1 题目:nc 114.116.54.89 10001 1.  直接kali里面跑nc 2.ls看看有啥 3.明显有一个flag cat查看一下 搞定 二 . PWN2 题目:给了nc 1 ...

  5. 2021羊城杯比赛复现(Crypto)

    bigrsa 题目: from Crypto.Util.number import * from flag import * n1 = 10383529640908175186077053551474 ...

  6. BUUCTF Crypto

    BUUCTF 几道crypto WP [AFCTF2018]Morse 简单的莫尔斯密码,最直观的莫尔斯密码是直接采用空格分割的点和划线,这题稍微绕了一下使用的是斜杠来划分 所以首先将斜杠全部替换为空 ...

  7. BUUCTF Crypto_WP(2)

    BUUCTF Crypto WP 几道密码学wp [GXYCTF2019]CheckIn 知识点:Base64,rot47 下载文件后,发现一个txt文件,打开发现一串base64,界面之后出现一串乱 ...

  8. bugku 密码学一些题的wp

    ---恢复内容开始--- 1.滴答滴 摩斯密码,http://tool.bugku.com/mosi/ 2.聪明的小羊 从提示猜是栅栏密码,http://tool.bugku.com/jiemi/ 3 ...

  9. WP | BUGKU 论剑

    题目:bugku Misc论剑 第一步:在winhex里分析 发现文件头有两个 两个jpg文件中间还有一段二进制码 在kali里分离出两个一样jpg图片,但是没有什么发现 二进制码解出来也没有flag ...

随机推荐

  1. python3+unittest参考

    Python3+Selenium+unittest自动化UI测试框架:https://www.cnblogs.com/G2Bent/p/8376001.html unittest --- 单元测试框架 ...

  2. unity中UI坐标转3d世界坐标

    方法: public static Vector3 UIScreenToWorldPoint(Vector3 uiPostion) { uiPostion = UICamera.mainCamera. ...

  3. Django中的中英文切换

    setting.py文件中 其中 zh-Hans是简体中文 zh-Hant是繁体中文 所以更改setttings.py 下 LANGUAGE_CODE = 'zh-Hans'即可 # 英文 LANGU ...

  4. NCF 如何通过WebApi实现前后端分离

    简介 昨天参加了<Best Of Microsoft Build>上海专场 NCF 模块化 WebApi 系统开发 + 容器化部署实战 的小伙伴们,昨天有些没有记住的,今天我在这里给大家把 ...

  5. JMeter逻辑控制器完整介绍

    JMeter逻辑控制器可以对元件的执行逻辑进行控制,就像编程一样,实现业务需求. JMeter包括了以下逻辑控制器: 一共17种.除了仅一次控制器外,其他控制器下可以嵌套别的种类的逻辑控制器. If ...

  6. SQL SERVER常用语法记录

    用于记录SQL SERVER常用语法,以及内置函数. 以下语句包含: WITH 临时表语法 ROW_NUMBER()内置函数,我一般主要是用来分页.针对于查出来的所有数据做一个数字排序 分页的BETW ...

  7. Echarts-2.2.7中统计出来的统计图保存为图片

    今天在做一个图形报表,有个需求是要把展现的统计图保存为图片, 图形报表用的Echarts-2.2.7, 以前有用过 Echarts,记得echarts插件是可以帮助我们把统计图保存为图片的. 只是不记 ...

  8. Linux 2 的 Windows 子系统上发布 CUDA

    Linux 2 的 Windows 子系统上发布 CUDA 为响应大众需求,微软 宣布 在 2020 年 5 月的 建造 大会上推出了 建造 ( WSL 2 ) – GPU 加速功能.这一特性为许多计 ...

  9. vue中dom节点转图片

    今天项目中有个需求,需要将页面的一部分转为图片,相当于存证之类的 然后我查阅了下百度,发现了几种可行的方法,特此来记录下 1.html2canvas插件 安装:npm install --save h ...

  10. Qt自定义信号槽的使用浅析+实例

    1. Qt中自定义信号槽的使用 Qt框架提供的信号槽在某些特定场景下是无法满足我们的项目需求的,因此我们还设计自己需要的的信号和槽,使用connect()对自定义的信号槽进行连接. 如果想要使用自定义 ...