BMZCTF第一次公开赛MISC(上)
2021/12/26 6:10:16
本文主要是介绍BMZCTF第一次公开赛MISC(上),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
BMZCTF第一次公开赛MISC(上)
计划参加参加第二次公开赛,先做一下第一次公开赛的题试一试
你猜猜flag
binwalk
分析一下
zip
文件,改后缀后需要密码才能打开
执行你猜猜flag.exe
9个大爷,9个密码,试一下发现压缩包密码是第四个大爷的
加压缩后得到了这几个文件
flag
在mdb
文件里
snake
压缩包需要密码
注释内容是Ook编码
使用这个网站解密
解压缩后得到三个文件,其中process
是py
文件
process
加密过程,将snake.jpg
通过process.py
处理为data.jpg
根据关键加密函数写解密程序
加密函数
def data_encode(bytedata): data = int.from_bytes(bytedata,byteorder='big') if (data % 2 == 0): data = (data + 1) ^ 128 else: data = (data - 1) ^ 128 data = bytes([data]) return data
解密脚本
def decode(data,snake): for i in data.read(): if (i%2 == 0): i = (i +1)^128 else: i = (i - 1)^128 i = bytes([i]) snake.write(i) data = open('data.jpg','rb') snake = open('snake.jpg','wb+') decode(data,snake)
我写的这个脚本和网上的其他wp的脚本不太一样,有一点bug。。。
就是图片下部分会有一点噪声
可以参考一下另一个wp
with open('snake.jpg','wb') as snake: with open('data.jpg','rb') as data: for i in data.read(): if (i%2 == 0): i = (i +1)^128 else: i = (i - 1)^128 i = bytes([i]) snake.write(i)
参考:https://www.pythonheidong.com/blog/article/727068/c0cc8687c70f894b8a25/
使用stegsolve
可以看到一行字
上网查一下可以知道sepent
是一种加密方法
对snake.jpg
使用steghide
查找信息
找到了一个key.txt
使用steghide extract -sf snake.jpg
提取出来key.txt
根据key
使用serpent
算法对data
文件解密
使用这个网站
根据我为数不多的经验,这里w
代表的是white
,b
代表的是black
,是个二维码
上脚本
import PIL from PIL import Image width = height = 200 img = Image.new("RGB", (width, height)) i = 0 file = open('odt.dat', 'rb') char = str(file.read()) for w in range(width): for h in range(height): if (char[i]=='w'): img.putpixel([w,h],(255,255,255)) else: img.putpixel([w,h],(0, 0, 0)) i = i + 1 img.save('flag.png') file.close()
扫码
ps:没刷完。。。脚本写了好多次都报错。。。。明天再刷吧
这篇关于BMZCTF第一次公开赛MISC(上)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享
- 2024-11-22ansible 的archive 参数是什么意思?-icode9专业技术文章分享
- 2024-11-22ansible 中怎么只用archive 排除某个目录?-icode9专业技术文章分享
- 2024-11-22exclude_path参数是什么作用?-icode9专业技术文章分享
- 2024-11-22微信开放平台第三方平台什么时候调用数据预拉取和数据周期性更新接口?-icode9专业技术文章分享
- 2024-11-22uniapp 实现聊天消息会话的列表功能怎么实现?-icode9专业技术文章分享
- 2024-11-22在Mac系统上将图片中的文字提取出来有哪些方法?-icode9专业技术文章分享
- 2024-11-22excel 表格中怎么固定一行显示不滚动?-icode9专业技术文章分享
- 2024-11-22怎么将 -rwxr-xr-x 修改为 drwxr-xr-x?-icode9专业技术文章分享
- 2024-11-22在Excel中怎么将小数向上取整到最接近的整数?-icode9专业技术文章分享