CTF-隐写2 啊哒 隐写 多种方法解决 easy_crypto 聪明的小羊 Ping 很普通的数独(ISCCCTF)

目录

准备工作

题目

隐写2

啊哒

 隐写

多种方法解决

easy_crypto

聪明的小羊

Ping

很普通的数独(ISCCCTF)


准备工作

工具:ARCHPR (压缩包爆破)

            winhex (用来检查和修复各种文件、恢复删除文件、硬盘损坏造成的数据丢失等)

题目

隐写2 :

下载文件

得到了一个welcome.jpg

得到了一个表情包 然后我们就没有东西了 我们尝试更改后缀名

所以改为welcome.zip

发现有文件 我们打开flag.rar

发现加密了

 所以打开ARCHPR暴力破解文件

 点击开始

 得到了口令 871

解压文件放入winhex

 在最下面发现了flag   进行base64解码即可

啊哒

下载文件file.zip

其中

 得到了文件

 发现了 一串数字73646E6973635F32303138

然后我们放进去010 Editor

发现了 flag 然后我们改为.zip后缀名

然后尝试解压 发现需要密码

然后我们想起 前面的数字

然后搜索了一下发现是用16进制

得到了密码

 隐写

我们下载文件

解压后获得啊哒.jpg

然后我们依旧放到010 Editor里面查看信息

发现最下面报错了 说错误是CRC 

我查了一下发现是修改了高度或者宽度  crc没有修改

然后这些16进制的东西里面 第二行的前两个为高度和宽度

所以在这里面高度为00 00 01 F4

宽度为  00 00 01 A4

我们尝试把他们修改成一样的 把宽度也修改为 1 F4

 保存后

获得flag

多种方法解决

下载文件解压

 得到了这个文件 然后照常放入010 Editor

 在开头发现了

data:image/jpg;base64

提示我们是base64解码 然后是一个图片

所以我们搜索base64转图片的在线解析网站

下载文件打开发现是二维码

 扫一扫 key就出来了

easy_crypto

我们下载文件 并且解压放到 010 Editor中

发现就是01  

可能就是密码

第一时间我在想是不是二进制

结构解码出错 并且仔细看 确实 并不是01排列

第二想到是不是摩斯密码 放到在线网站解码发现出错

但是能发现有ffa0这种熟悉的感觉 所以我觉得还是摩斯密码 然后我发现这个摩斯密码需要进行转换

把01 转换为 . -看看可不可以

所以我运用py进行转换

c = '0010 0100 01 110 1111011 11 11111 010 000 0 001101 1010 111 100 0 001101 01111 000 001101 00 10 1 0 010 0 000 1 01111 10 11110 101011 1111101'
mos =  ''  //字符串存储摩斯密码
for i in range(len(c)): //让i在c中循环
    if c[i]=='0':  //判断如果c的第i个是0 就把mos赋值为 . 并且自加1
        mos += '.'
    elif c[i] =='1': // 同上
        mos += '-'
    else :
        mos += '/' // 同上
print(mos)

得到摩斯密码

..-./.-../.-/--./----.--/--/-----/.-./..././..--.-/-.-./---/-.././..--.-/.----/.../..--.-/../-./-/./.-././.../-/.----/-./----./-.-.--/-----.-

解码得到flag 要把flag转换为我们熟悉的格式 flag{xxx}  并且要为小写

聪明的小羊

打开没有文件

一只小羊翻过了2个栅栏 fa{fe13f590lg6d46d0d0}

给了提示栅栏 

所以是栅栏密码

我以为是要解码2次

但是 需要一个key 所以我怀疑2 是key 

 解码成功得到flag

Ping

下载文件解压然后放入010Editor 中查看

发现看不出啥 我们就先看看能不能改后缀

我们尝试 zip jpg发现都不行

当我们尝试txt的时候

 发现了 熟悉的东西 fla这三个字符

往下滑确定了flag 所以我们接下来就把他弄出来就行了

很普通的数独(ISCCCTF)

我们下载文件 解压发现了25张数独的照片 一个一个看过去不可能的

我们就打开ps看看能不能拼接  将25张数独依次拼接

然后把有数字的涂黑

拼接完是这样的

但是角不对  所以把角换成二维码的

 得到了这个 就是正常的了 然后我们扫一扫得到了编码

Vm0xd1NtUXlWa1pPVldoVFlUSlNjRlJVVGtOamJGWnlWMjFHVlUxV1ZqTldNakZIWVcxS1IxTnNhRmhoTVZweVdWUkdXbVZHWkhOWGJGcHBWa1paZWxaclpEUmhNVXBYVW14V2FHVnFRVGs9

然后我们继续base64解码 解码7次得到flag

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
图片隐写是指将一张图片隐藏在另外一张图片里面,而 PNG 文件是一种常见的图片格式,因此可以将一张图片隐藏在 PNG 文件中。以下是一个简单的例子: 1. 首先,将要隐藏的图片命名为 image.jpg,将要隐藏图片的 PNG 文件命名为 cover.png。 2. 将 image.jpg 转换为二进制文件,并将其插入 cover.png 中。 ```bash $ xxd -p -c 99999 image.jpg > image.hex $ cat image.hex | tr -d '\n' | xxd -r -p | dd of=cover.png bs=1 seek=100000 conv=notrunc ``` 这里的 `xxd -p -c 99999 image.jpg` 将 `image.jpg` 转换为十六进制,然后 `cat image.hex | tr -d '\n' | xxd -r -p` 将十六进制转回二进制,最后使用 `dd` 命令将二进制插入到 `cover.png` 的第 100000 个字节处。注意,这个位置可以根据具体情况进行调整。 3. 查看生成的 PNG 文件,可以看到图片已经被成功隐藏。 ```bash $ file cover.png cover.png: PNG image data, 800 x 600, 8-bit/color RGB, non-interlaced $ eog cover.png ``` 可以使用 `file` 命令检查文件类型,并使用图片查看器查看图片内容。 4. 提取隐藏的图片。 ```bash $ dd if=cover.png of=image2.jpg bs=1 skip=100000 ``` 这里的 `dd` 命令将 `cover.png` 中的隐藏图片提取到 `image2.jpg` 中。同样地,提取位置可以根据具体情况进行调整。 以上是一个简单的示例,实际情况可能更加复杂。在实际的 CTF 中,可能需要使用更加高级的隐写技巧来隐藏图片,例如使用 Least Significant Bit (LSB) 算法或者 F5 算法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值