【杂项入门-摩斯密码】

  • A+
所属分类:逆向工程

第一题 进制转换

第二题 摩斯密码

第三题 摩斯密码

第四题 RGB值

第五部分 摩斯密码介绍


杂项第一题: convert

【杂项入门-摩斯密码】

打开1.txt

https://ctf.bugku.com/files/de3b517a9b83b2d35f1a8751e9b80c08/1.txt

里面全是二进制

【杂项入门-摩斯密码】

看到这么多0、1,第一想法就是进行进制转换,将二进制转成10进制或者16进制等,方便下一步操作,由于文件内容较多,在线工具没法转换,写个简单的python脚本跑一下吧:


f1=open('1.txt','r')

#二进制转10进制

oct1=int(f1.read(),2)

#十进制转16进制

hex1=hex(oct1)

#将十六进制文件写入文件

out.txtf2=open('out.txt','w')

f2.write(hex1)

#关闭文件

f1.close()

f2.close()


【杂项入门-摩斯密码】

将1.txt内容保存在桌面

【杂项入门-摩斯密码】

转成十六进制

【杂项入门-摩斯密码】

删除开头的0x,之后将这些十六进制数放到编辑器中

【杂项入门-摩斯密码】

导入这个文件后 发现

文件头  为 52617221   正好为rar文件 

【杂项入门-摩斯密码】

【杂项入门-摩斯密码】

那么将他另存为  q.rar 

解压后发现一张图片

【杂项入门-摩斯密码】

【杂项入门-摩斯密码】

修改后缀之后,解压得到图片key.jpg,接下就是图片隐写相关的常规操作(查看属性、010 editor、stegsolve等),在图片属性“主题”里面发现一串base64编码的字符串:

ZmxhZ3swMWEyNWVhM2ZkNjM0OWM2ZTYzNWExZDAxOTZlNzVmYn0=

解码,得到flag

flag{01a25ea3fd6349c6e635a1d0196e75fb}



杂项第二题: 听首音乐

【杂项入门-摩斯密码】

下载地址https://pan.baidu.com/share/init?surl=gfvezBl

密码y6gh

看题目是跟音频相关的题目,

下载下来是个压缩包,解压得一个waw文件,点击播放下(电脑先安装了一个Cool Edit)。

【杂项入门-摩斯密码】

【杂项入门-摩斯密码】

【杂项入门-摩斯密码】

导入进去是个波形图,点击播放是段音乐。

发现上方有一串小的波形码放大看下。

【杂项入门-摩斯密码】

和摩尔斯电码的点、划、间隔很相似。猜测是摩尔斯电码

用记事本记录下来是这样的。。。

..... -... -.-. ----. ..--- ..... -........- ----. -.-. -... ----- .---- ---.. ---.. ..-. ..... ..--- . -.... .------... -.. --... ----- ----. ..--- ----. .---- ----. .---- -.-.

每一串码之间的间隔用空格代替

然后emmm找个摩尔斯电码解密的在线网站,或者自己写个脚本跑...

【杂项入门-摩斯密码】

得到5BC925649CB0188F52E617D70929191C



关于音频工具,也可以用Audacity分析

【杂项入门-摩斯密码】



关于摩斯密码:

摩尔斯电码(又译为摩斯密码,Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。它发明于1837年,发明者有争议,是美国人塞缪尔·莫尔斯或者艾尔菲德·维尔。摩尔斯电码是一种早期的数字化通信形式,但是它不同于现代只使用零和一两种状态的二进制代码,它的代码包括五种:点、划、点和划之间的停顿、每个字符之间短的停顿、每个词之间中等的停顿以及句子之间长的停顿。

 

【杂项入门-摩斯密码】

摩尔斯电码由两种基本信号组成:短促的点信号“·”,读“滴”;保持一定时间的长信号“—”,读“嗒”。间隔时间:滴=1t,嗒=3t,滴嗒间=1t,字符间=3t,单词间=7t。

 

 

杂项第三题: ctf练习---摩斯密码

题目:
 
嘀嗒嘀嗒嘀嗒嘀嗒 时针它不停在转动
--  ---  .-.  ...  . 
 
嘀嗒嘀嗒嘀嗒嘀嗒 小雨它拍打着水花
-.-.  ---  -..  . 
 

思路:百度一张摩斯密码表,然后根据摩斯密码表把相应的符号翻译出来即可。

【杂项入门-摩斯密码】

翻译后的结果是morsecode

所以答案为wct{morsecode}。



杂项第四题: 好多数值

【杂项入门-摩斯密码】

打开连接: https://ctf.bugku.com/files/093d4073de2c7bfac7466fd166c5d990/1.txt

里面都是255,255

【杂项入门-摩斯密码】

先复制出来

【杂项入门-摩斯密码】

看了大佬的解题思路:

打开文件发现好多行类似255,255,255的数据,直接想到RGB值,估计是画图。

用yafu分解一下因数,yafu自行下载

【杂项入门-摩斯密码】

然后进行爆破

【杂项入门-摩斯密码】

爆破中。

分解因数,有503、61、2

即图像无非503 * 122,1006 * 61,30683 * 2这三个size,可以先排除第三个,即试前两个即可

文件总共61366行,分解一下是122*503,猜测要画一个宽503,高122的图,拿Python写个脚本如下:


import re

from PIL import Image

 

with open("1.txt", "r") as f:

    data = f.readlines()

 

size = [503, 122]

img = Image.new("RGB", size)

pix = img.load()

for x in range(size[0]):

    for y in range(size[1]):

        r, g, b =data[x*122+y][:-1].split(',')

        pix[x,y] = int(r),int(g), int(b)

img.show()

img.save("flag.bmp")

【杂项入门-摩斯密码】

得到最终flag如图:

【杂项入门-摩斯密码】

flag{[email protected]’tseeme}

ps:flag没有空格。。。。。。。。。

 

 

RGB值

【杂项入门-摩斯密码】

在电脑中,RGB的所谓“多少”就是指亮度,并使用整数来表示。通常情况下,RGB各有256级亮度,用数字表示为从0、1、2...直到255。注意虽然数字最高是255,但0也是数值之一,因此共256级。

【杂项入门-摩斯密码】


Yafu使用方式

使用方式
1、使用cmd进入yafu的解压目录,输入yafu-x64进入命令行,最常用的命令是factor(n),将n值分解。

factor(需要分解的大数)

2、使用yafu的时候遇到mismatched parens
//这是因为在命令行里不支持过长的位数。
新建一个文件p.txt,内容里写上n的值,最后面一定要换行。
然后运行命令为

yafu-x64 "factor(@)" -batchfile 1.txt

【杂项入门-摩斯密码】



第五部分:摩斯电码介绍

摩尔斯电码

转载

https://morse.supfree.net/

  摩尔斯电码定义了包括:英文字母A-Z(无大小写区分)十进制数字0-9,以及“?”“/”“()”“-”“.”很适合英语的通信。至今仍有很多地方在使用。在业余无线电通信中,他是全世界运用统一的电码。下面列出的是基本码表:

 

字母

【杂项入门-摩斯密码】

数字

【杂项入门-摩斯密码】

标点符号

【杂项入门-摩斯密码】

非英文字符

【杂项入门-摩斯密码】

特殊符号

【杂项入门-摩斯密码】

在推理小说中,密码是非常常见的东西,其中经常使用的、也是最为简单的就是摩斯密码了,这里提供一些相关资料,希望有所帮助。

  电报通信的语言是由电码符号组成的。电报通信最早是由美国的摩尔斯在 1844年发明的,所以电码符号也被叫做摩尔斯电码(Morse code)。电码 符号由两种基本信号和不同的间隔时间组成:短促的点信号“ .”,读“ 的 ”(Di);保持一定时间的长信号“─”,读“答 ─”(Da)。

 在早期战时电报通信中应用广泛,相信大家在很多战争片中都看到过吧?通讯员对着发报机按个不停,其实是根据一定的规则将发报机的“撞针”与“针板”(这两个都是形象用词)进行接触,从而产生或长或短的电信号。接受方的发报机会将这种电信号翻译成为声音信号比如上面的DIDA。而操作员根据声音转换成密码图形,对照密码表在翻译成文字。而发报者所进行的就是反操作。由于一定程度上属于一种密码,所以如果不知道摩尔斯电码表的人是不能明白其中的意思的。

 

其他介绍:

摩尔斯电码(英语:Morse code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。是由美国人艾尔菲德·维尔(Alfred Lewis Vail)与萨缪尔·摩尔斯(Samuel Finley Breese Morse)在1836年发明。


摩尔斯电码是一种早期的数字化通信形式,但是它不同于现代只使用0和1两种状态的二进制代码,它的代码包括五种:
1.点(.)

2.划(-)

3.每个字符间短的停顿(在点和划之间的停顿)

4.每个词之间中等的停顿

5.以及句子之间长的停顿

摩尔斯电码字母与数字对应表:

【杂项入门-摩斯密码】

例如:

原文本:I LOVE YOU TOO

加密后:../.-../---/...-/./-.--/---/..-/-/---/---


本文始发于微信公众号(LemonSec):【杂项入门-摩斯密码】

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: