目录
附件得到一个gif动图,用stegsolve Frame Browser 逐帧查看
看到一个没有定位角的二维码
PS 进行补全
得到flag
下载发现是一个.jar的游戏 java反编译得到源码
idea反编译jar包 安装Java Bytecode Decompiler插件
找到插件目录
cmd命令:
java -cp “D:\Java-IDEA\IntelliJ IDEA 2022.1\plugins\java-decompiler\lib\java-decompiler.jar” \
org.jetbrains.java.decompiler.main.decompiler.ConsoleDecompiler -dgs=true \
C:\Users\lenovo\Downloads\game.jar C:\Users\lenovo\Desktop\final
D:\Java-IDEA\IntelliJ IDEA 2022.1\plugins\java-decompiler\lib\java-decompiler.jar是我的插件目录
C:\Users\lenovo\Downloads\game.jar 是我要反编译的jar包
C:\Users\lenovo\Desktop\final 是我要生成反编译后jar包的目录
反编译之后,将final\目录里的jar修改为.zip后缀,解压即可
在PlaneGameFrame.java文件中找到flag,base64解码得到flag
夜哆悉諳多苦奢陀奢諦冥神哆盧穆皤三侄三即諸諳即冥迦冥隸數顛耶迦奢若吉怯陀諳怖奢智侄諸若奢數菩奢集遠俱老竟寫明奢若梵等盧皤豆蒙密離怯婆皤礙他哆提哆多缽以南哆心曰姪罰蒙呐神。舍切真怯勝呐得俱沙罰娑是怯遠得呐數罰輸哆遠薩得槃漫夢盧皤亦醯呐娑皤瑟輸諳尼摩罰薩冥大倒參夢侄阿心罰等奢大度地冥殿皤沙蘇輸奢恐豆侄得罰提哆伽諳沙楞缽三死怯摩大蘇者數一遮
经典与佛论禅加密
得到MzkuM3gvMUAwnzuvn3cgozMlMTuvqzAenJchMUAeqzWenzEmLJW9
rot13一下,再进行base64解码,得到flag
图片总数为104,是8的倍数,自然联想到一个字节8位二进制码
黑白对应1和0,转化为字符串形式
01100110011011000110000101100111011110110100011001110101010011100101111101100111011010010100011001111101
手写出来肯定很麻烦,这里贴上其他师傅的脚本
- white = open("./gif/0.jpg","rb").read()
- black = open("./gif/1.jpg","rb").read()
- flag_dic = ""
-
- for i in range(104):
- with open("./gif/%d.jpg"%i,"rb") as f:
- if f.read() == white:
- flag_dic += "0"
- else:
- flag_dic += "1"
- import re
- a=‘01100110011011000110000101100111011110110100011001110101010011100101111101100111011010010100011001111101’
- b = re.findall(r’.{8}’,a)
- flag = ‘’
- for i in b:
- flag += chr(int(i,2))
- print(flag)
-
- 或
- flag = ""
-
- for i in range(len(flag_dic)/8):
- flag += chr(int(flag_dic[i*8:(i+1)*8],2))
-
- print(flag)
得到flag,也可以找在线网站 二进制转文本 flag{FuN_giF}
下载下来pdf 打开后 全选+复制 到txt里我们发现在末尾有一段AB组成的
刚开始以为是培根密码,试了试并不行
AB两种,还有间隔,猜测是 对应 . 和 - 的摩斯密码
菜狗截获了一份报文如下c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2,生气地掀翻了桌子(╯°□°)╯︵ ┻━┻
- import re
- a = 'c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2'
- b = re.findall(r'.{2}',a)
- flag = ''
- for i in b:
- flag += chr(int(i,16)-128)
- print(flag)
得到:Hi, FreshDog! The flag is: hjzcydjzbjdcjkzkcugisdchjyjsbdfr
010editor打开看见了一个secret.png 但是解压缩只有一个flag.txt 里面没内容
这里他也提示header CRC不匹配 所以他可能修改了文件数据
RAR文件的特点
RAR通常情况比ZIP压缩比高,但压缩/解压缩速度较慢。
恢复记录:加入数据用于修复,在压缩包本身损坏但恢复记录够多时可对损坏压缩包进行恢复。见块类型如下:
标记块:HEAD_TYPE=0x72
压缩文件头:HEAD_TYPE=0x73
文件头:HEAD_TYPE=0x74
旧风格的注释头:HEAD_TYPE=0x75
旧风格的用户身份信息:HEAD_TYPE=0x76
旧风格的子块:HEAD_TYPE=0x77
旧风格的恢复记录:HEAD_TYPE=0X78
旧风格的用户身份信息:HEAD_TYPE=0X79
子块:HEAD_TYPE=0x7A
最后的结束块:HEAD_TYPE=0x7B
3C A8是crc,而7A是块类型,但是一看发现这个块类型有点问题,这个应该是文件头的位置
应该修改为74
之后获得了一个secret.png 但是打开却是空白 010editor打开发现是gif89a 更改后缀为gif
ps打开 下载两个图层
stegsolve 分别查看这两张空白图片查看隐写,得到了两个 一半的二维码
再用ps修复这个二维码补全定位角
得到flag:flag{yanji4n_bu_we1shi}
今天是菜狗的生日,他收到了一个linux系统光盘
010editor打开 查找flag
看见了一个目录 flag所在位置
7z也可以打开这个文件
直接找到了flag文件,一串base64编码,解码得到flag
也可以在kali里binwalk -e 分离文件
也可以mount挂在到linux目录下,用命令找flag
下载了一个pcap流量包,用Wireshark打开
题目说了菜刀,那我们去其中http流里寻找flag痕迹
我们在http流种发现了flag.txt hello.zip之类的,我们去 binwalk 分离一下文件
发现确实存在 foremost 分离文件得到 压缩包 被加密了
挨个流继续查找有用信息 发现6666.jpg 有点可疑
好长一大串action
看到一堆16进制编码 &z2=FFD8FFE0 看见明显的图片头 010editor写入文件种
得到这个图片,压缩包密码应该就是 Th1s_1s_p4sswd_!!!
解压得到flag:flag{3OpWdJ-JP6FzK-koCMAK-VkfWBq-75Un2z}
得到一个pcap流量包 wireshark打开 导出为http对象
看到了一个网址,一个png图片还有其他估计没什么用的
追踪http流:
GET /aideddesign/img_add_info HTTP/1.1
Host: tools.jb51.net
网址为:tools.jb51.net/aideddesign/img_add_info 是一个图片隐写术的网站
同时我们导出http流文件时,可以看见两个特别大的文件和一张图片
会得到两个有png图片信息特征的和下面这样的一个长风景png图片文件:
里面应该是有隐藏信息在里面
这里就考察到我们对png图片格式的认识:
PNG图片固定以 89 50 4E 47 0D 0A 1A 0A (4个字节)开头 49 45 4E 44--IEND结尾)
我们分别找到两个大文件中的png头尾 去掉其余的多余部分
得到两个新的png图片:
得到了一个钥匙,和一个文件更大的风景图。
结合之前的那个图片隐写的网站,所以这个转化后的风景照应该是有加密的信息。 而密码肯定在这个key的图片里。
我们修改一下key图片的高度,在下面发现了key:57pmYyWt
拿到解密网站上去解密
得到一串Hex编码,解码得到flag:DDCTF{QEWokcpHeUo2WOfBIN7pogIWsF04iRjt}