文章目录

  • 签到题
  • 你猜猜flag
  • Snake
  • Tiga
  • Hack K

前言

首先恭喜白帽子社区团队成功举办第一届BMZCTF公开赛,我是本次比赛MISC赛题SnakeTiga的出题人末初
以下是我写的这次BMZCTF公开赛的MISC赛题的Writeup,如果有什么写的不对的还请师傅们留言斧正
另外师傅们对于SnakeTiga赛题有疑问的可以留言,我会及时回复

签到题

BMZCTF{W3lc0me_T0_2020BMZCTF}

你猜猜flag

flag.exebinwalk分析发现有附加zip数据,foremost分离出来

flag.exe只有输入4的时候输出的zip密码与其他的号码不同

分离出来的zip压缩包密码为:ZmxhZ+WlveWDj+WPr+S7peeMnOWHuuadpQ==


解压,再mdb文件中找到flag

flag{D1d y0u 8u3ss?}

Snake

难度:中下
考察知识点:Short Ook!、程序逆向还原、Steghide、Serpent加密、二进制数据转二维码


注释里面是Short ook!编码

得到snake.zip的密码:doyoulikesnake?

解压得到三个文件

process是个py程序,添加后缀,然后打开

data_jpg = open('data.jpg','wb')
def file_encode():with open('snake.jpg','rb') as handle:i = 1while True:bytedata = handle.read(1)if(bytedata == b''):exit()process_data = data_encode(bytedata)data_write(process_data)i = i + 1def data_encode(bytedata):data = int.from_bytes(bytedata,byteorder='big')if (data % 2 == 0):data = (data + 1) ^ 128else:data = (data - 1) ^ 128data = bytes([data])return datadef data_write(process_data):data_jpg.write(process_data)if __name__ == '__main__':file_encode()data_jpg.close()

通过程序可以得知data.jpgprocess.py处理snake.jpg得到的,逆向编写处理代码

with open('snake.jpg','wb') as flag:with open('data.jpg','rb') as f:for i in f.read():if (i % 2 == 0):i = (i + 1) ^ 128else:i = (i - 1) ^ 128i = bytes([i])flag.write(i)

得到snake.jpg

使用stegsolve打开,发现提示

Serpent加密,尝试寻找key

Steghide发现有隐写key.txt,无密码

key: VivaLaVida

知道了是Serpent加密,也知道了key,那么data应该就是加密后的数据,直接解密

Serpent-Online-Encrypt:http://serpent.online-domain-tools.com/


下载解密后的数据,发现内容如下:

然后从以下几点看出这是个二维码的二进制数据:

  • 只有wb两种字符,二进制
  • w对应whiteb对应black
  • 总字符200 x 200 = 40000正方形,可能是张二维码
  • 做过二进制转二维码题目的同学从内容的首尾都是w字符,就应该看得出这是个二维码数据

使用Python将这些转换为二维码

import PIL
from PIL import Imagewidth=height=200
img = Image.new("RGB",(width,height))
i = 0
char = "这里填数据"
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')

扫描即可得到flag

flag{67bd09fc-e252-4c21-858f-2a7d698d555f}

Tiga

难度:中下
考察知识点:零宽度字符隐写、CRC爆破、zip密码爆破、zip密码明文攻击、字节流数据还原、Base16/32/64/85混淆解码

vim查看tiga.txt发现存在零宽度字符

零宽度字符隐写在线站:https://yuanfux.github.io/zero-width-web/

得到misc.zip密码:GiveTiGaGuang!

迪迦.jpg文件尾附加了youcanalso.zip的密码信息
file.zip的密码很明显需要通过爆破这些密码片段文件的CRC得到内容

爆破脚本如下:

import binascii
import stringdef crack_crc():print('-------------Start Crack CRC-------------')crc_list = [0x14433530, 0xaf251007, 0xd554e7b6, 0xebb3156, 0xbb474d49, 0x2cb8a39b, 0x75fe76f0]comment = ''chars = string.printablefor crc_value in crc_list:for char1 in chars:for char2 in chars:for char3 in chars:res_char = char1 + char2 + char3char_crc = binascii.crc32(res_char.encode())calc_crc = char_crc & 0xffffffffif calc_crc == crc_value:print('[+] {}: {}'.format(hex(crc_value),res_char))comment += res_charprint('-----------CRC Crack Completed-----------')print('Result: {}'.format(comment))if __name__ == '__main__':crack_crc()


得到file.zip密码:T&hg%WL0^rm@c!VK$xEt~

解压得到youcanalso.zip根据之前的得到的信息,使用ARCHPR掩码爆破十位数字

得到密码:2001701725

解压得到flag.zipyoucanalso.zip


这里很明显可以进行明文攻击

得到flag.zip密码: 1amT1G@得到flag.txt,打开发现通过观察头和尾的内容是zip文件的的字节流数据

将字节流写成zip文件,脚本如下:

import structa = open("flag.txt","r")#十六进制数据文件
lines = a.read()
res = [lines[i:i+2] for i in range(0,len(lines),2)]with open("data.zip","wb") as f:for i in res:s = struct.pack('B',int(i,16))f.write(s)

得到data.zip发现是doc文件的内容

修改后缀为得到data.docx,打开发现是base85数据

注意:后两页是隐藏文字,需要开启隐藏文字查看选项才能发现
将这个base85数据解了一下发现是:base16/32/64/85的随机套娃编码

这里可以通过写个识别脚本通过识别base16/32/64/85进行逐步解码,也可以手工,因为这里设置的编码次数不多,就15次

PS:本来是想设置的编码次数多一点的,不过我比较懒,不想写识别脚本2333

不过推荐使用basecrack这个工具直接解码最快:https://github.com/mufeedvh/basecrack

python .\basecrack.py --magic

然后输入编码数据,得到flag

flag{8fa3e8c4-0121-4f2a-a7f0-0a60032e3763}

Hack K

这题其实我也和出题的师傅商量过

flag最后的存放文件名flag.php太过平常(应该改复杂点),用平常做web的思路,目录扫描一扫就出


访问即可得到flag

首先观察了这个网站,唯一可以想到出题方向的就是这几张图片了,下载下来发现其中一张图片容量非常大


binwalk分析图片有附加别的数据

foremost直接分离,得到一个压缩包,有密码


根据压缩包注释提示使用ARCHPR爆破,得到密码flag

得到一个好像是二维码定位符的png图片


以及一大堆gif图片和文件,其中很容易发现safe (113).gif中有张好像没有定位符的二维码


二维码取出来

使用PS修补一下

访问flag.php得到flag

flag{Zme12a9rqsk123S14RH}

第一届BMZCTF公开赛-MISC-Writeup相关推荐

  1. 南邮CG-CTF—杂项Misc writeup

    南邮CG-CTF-杂项Misc writeup Coding Gay 丘比龙De女神 知识点:文件MD5 Remove Boyfriend MD5 图种 注意!! 南邮CG-CTF链接 Coding ...

  2. 第二届BMZCTF公开赛REVERSE的bmzre

    第二届BMZCTF公开赛REVERSE的bmzre . . 下载附件后照例扔入 exeinfope 中查看信息: . . 32 为无壳,照例扔入 IDA 中查看伪代码,有 main 函数看 main ...

  3. CTF初探之{NEX校选赛MISC writeup}

    CTF初探之{NEX校选赛MISC writeup} 1. 前言 东大NEX校选赛开始了,emmmmm,作为一个小白菜鸡,就从MISC开始吧!!! 2. 题目 [ 第一题] 签到题 作为一道送分题,也 ...

  4. BUUCTF VN2020 公开赛 Misc(复现)

    BUUCTF V&N2020 公开赛 Misc(复现) 真·签到 拉胯的三条命令 ML 第一步 内存取证 Final Game 真·签到 CV大法题 Flag:flag{welcome_to_ ...

  5. Bugku旧平台misc writeup

    流量分析 flag被盗 打开搜索flag字符串 flag{This_is_a_f10g} 中国菜刀 搜索flag发现flag.tar.gz 找到疑似包到处分组字节流保存为1.gz,rar打开看到fla ...

  6. BugkuCTF~Misc~WriteUp

    1.签到 get flag: Qftm{You should sign in} 2.这是一张单纯的图片 查看图片十六进制 提去特殊字符串进行解码 get flag: key{you are right ...

  7. 2021安洵杯Misc writeup

    忘了发了,来迟了 顺便发一下战队的全wp: https://wp.n03tack.top/posts/4906/ Misc 应该算是签到 来得早不如来的巧 CyzCC_loves_LOL 小脑洞+老考 ...

  8. ctfshow 吃瓜杯八月赛 Misc WriteUp

    目录 1.Misc游戏签到 2.吃瓜 3.EZbingo 4.魔王 5.Dinner of Cyanogen 6.Music Game 7.一群强盗 1.Misc游戏签到 别问 问就是玩游戏 套神说的 ...

  9. [BUGKU][CTF][MISC][2020] MISC writeup持续更新中

    CTF总结 ctf基本操作:https://blog.csdn.net/mafucan/article/details/106886421 zip: https://www.anquanke.com/ ...

最新文章

  1. colMedians(x) : Argument ‘x’ must be a matrix、rowMedians(data) : Argument ‘x‘ must be a matrix.
  2. idea 在tomcat中部署的时候 莫名其妙的错误
  3. win7卸载打印机驱动
  4. Python基础(14)_python模块之configparser模块、suprocess
  5. 自动给文本框输入值_Dynamo for Revit自动生成门窗图例详图
  6. java中的图形界面编辑界面_第58节:Java中的图形界面编程-GUI
  7. 人工智能与机器学习有哪些不同
  8. IOS项目集成Weex
  9. centos 默认php 版本太低移到高版本的办法
  10. Piper蛋窝「2020.10.19-2020.10.25」本周更新内容の大预告!
  11. 怎样成为优秀软件模型设计者
  12. 电机控制进阶3——PID串级控制(附全套代码下载)
  13. Cameralink协议
  14. windows多线程同步机制---原子锁
  15. NOIP2018(普及组 ) 赛后感想 题解
  16. 剪辑画中画视频,如何用视频实现画中画效果
  17. 图像分析:二值图像连通域标记-基于行程的标记方法
  18. php开发rfid,rfid是什么?rfid技术详解
  19. Python SMTP 发送带附件电子邮件
  20. 《财富》封面报道:DeFi正在占领华尔街 |链捕手

热门文章

  1. Eclipse常用配置
  2. 自攻螺丝与塑件底孔规格表
  3. Android中SeLinux权限 .te文件编写
  4. 2021年杭州云栖大会,最IoT的有料峰会报名了!
  5. Android Studio中sqlite的使用
  6. 从零开始搭建ROS下无人机激光雷达SLAM——hector_slam建图入门——综述篇
  7. 【Visual C++】游戏开发笔记十七 游戏基础算法(一) 游戏随机系统初步
  8. 洛卡纳哈服务器维护后刷新时间,猎人 洛卡纳哈在哪抓 洛卡纳哈刷新时间
  9. ssh xm 工具_推荐7款超级好用的终端工具 —— SSH+FTP
  10. 互联网公司招聘了“程序员鼓励师”程序员们敢享 受吗?