Defcon 2019 Qualify: redacted puzzle Writeup
文章目录
- Defcon 2019 Qualify: redacted-puzzle
- 1.Attachments
- 2.source code
- 3.author: bboe
- 4.writeups
- 5.知识点
- 5.1 图像模式
- 5.2 pallete
- 5.3 Python PIL包使用
- 5.4 Base系列编码原理
- 6 [Defcon 2020q uploooadit](https://github.com/o-o-overflow/dc2020q-uploooadit)
- 总结
Defcon 2019 Qualify: redacted-puzzle
ctftime link: https://ctftime.org/task/8526
1.Attachments
redacted-puzzle.gif
Everything you need is in this file.
2.source code
dc2019q-puzzle
3.author: bboe
Bryce Boe是defcon的组织者,AppFolio公司的软件工程师\Tech Leader,加州大学圣巴巴拉分校 助教。
- Social Media
- Blog
- Github
- Google Scholar
这位老师最后一篇论文发表于2014年,其博客也停更于2014年。
其主要贡献在于可视化的编程工具与教育事业的结合。
在论文Organizing large scale hacking competitions中提出了大规模黑客技术比赛的设想。
身为人父的他已经在享受生活了,羡慕。
另外,可以找到他在defcon2020q中出的另一道题目Defcon 2020q uploooadit
4.writeups
- ThreatLevelMidnight
- OSUSEC
- IDontHaveATeam
- ThreatLevelMidnight
- 2019 defcon 学习
题目给出一个全黑的gif。分析发现图片的调色板为纯黑。
我们逐帧修改其调色板,让画面变得多彩一些。
from PIL import Image
imageObject = Image.open("./redacted-puzzle.gif")
for frame in range(0,imageObject.n_frames):imageObject.seek(frame)imageObject.putpalette([255,0,0,0,255,0,0,0,255])imageObject.save("./tmp/output-%02u.png" % frame)
可以得到一组 类似八边形的图片。
其中给出了一个长32的字母表 flag_alphabet = "+-=ABCDEFGHIJKLMNOPQRSTUVWXYZ_{}"
每一张图都是一个8bit的2进制数字。
verticies = ['10001100', '01100011', '11100100', '01000110', '10000101', '00111101', '01000010', '10011000', '11100000','11110100', '10000000', '00101101', '01110010', '00011100', '00001000', '10100101', '11010111', '01101110','10100110', '10010001', '10111100', '10000100', '10000001', '10111001', '11010100', '00111011', '11001110','11110010', '00011110', '10011101', '11001001', '11000111', '01100101', '00011110', '10011111']
由于flag_alphabet
中有32个可见字符,想到Base32编码方式。
用符号表中的字母编码gif,得到flag。
verticies = ['10001100', '01100011', '11100100', '01000110', '10000101', '00111101', '01000010', '10011000', '11100000','11110100', '10000000', '00101101', '01110010', '00011100', '00001000', '10100101', '11010111', '01101110','10100110', '10010001', '10111100', '10000100', '10000001', '10111001', '11010100', '00111011', '11001110','11110010', '00011110', '10011101', '11001001', '11000111', '01100101', '00011110', '10011111']alphabet = '+-=ABCDEFGHIJKLMNOPQRSTUVWXYZ_{}'def solve(verticies):combined = ''for v in verticies:combined += vindicies = []for x in range (0, len(combined)//5):indicies.append(combined[x * 5:x * 5 + 5])answer = ''for x in indicies:answer += alphabet[int(x, 2)]print (answer)def twist(verticies):newverticies = []for v in verticies:# v = abcdefgh -> habcdefgnewv = ''newv+=v[7]newv+=v[0:7] newverticies.append(newv)return newverticiesfor x in range (0,8):solve(verticies)verticies = twist(verticies)print("Finished Program")
5.知识点
5.1 图像模式
https://www.osgeo.cn/pillow/handbook/concepts.html#modes
这个 mode 是一个字符串,它定义图像中像素的类型和深度。每个像素使用位深度的全部范围。所以1位像素的范围是0-1,8位像素的范围是0-255,依此类推。
当前版本支持以下标准模式:
- 1 (1位黑白像素,每字节存储一个像素)
- L (8位像素,黑白)
- P (8位像素,使用调色板映射到任何其他模式)
- RGB (3x8位像素,真彩色)
- RGBA (4x8位像素,带透明蒙版的真彩色)
- CMYK (4x8位像素,分色)
- YCbCr (3x8位像素,彩色视频格式)
- LAB (3x8位像素,L A B颜色空间)
- HSV (3x8位像素、色调、饱和度、值颜色空间)
- I (32位有符号整数像素)
- F (32位浮点像素)
Image库还支持一些特殊模式:
- LA (L和阿尔法)
- PA (P与阿尔法)
- RGBX (带填充的真彩色)
- RGBa (带预乘alpha的真彩色)
- La (L带预乘α)
- I;16 (16位无符号整数像素)
- I;16L (16位小端无符号整数像素)
- I;16B (16位大端无符号整数像素)
- I;16N (16位本机端无符号整数像素)
- BGR;15 (15位反转真彩色)
- BGR;16 (16位反转真彩色)
- BGR;24 (24位反转真彩色)
- BGR;32 (32位反转真彩色)
我怀疑MISC题目的常用工具 stegsolve 就是在各种Mode之间做切换。
5.2 pallete
使用PIL库 改变图片的调色板
当图片模式选择P
时,ImageObject有pallete参数。
pallete默认为RGB
格式,是一个长度为768的list对象。
在RGB
格式下,pallete的list对象被3个一组,表示RGB颜色。
最多记录256个RGB
颜色。
palette = []
for i in range(256):palette.extend((i, i, i)) # grayscale wedgeassert len(palette) == 768im.putpalette(palette)
5.3 Python PIL包使用
PIL包文档
5.4 Base系列编码原理
Base64, Base32 和 Base16,用通俗的语言深入到内部
6 Defcon 2020q uploooadit
uploooadit
是一道WEB
题,主要考点是haproxy 1.9.10
中存在的HTTP smuggling
漏洞。
Writeup可以看这篇文章
总结
Bryce Boe 老师总共出过两道Defcon的题目。
我没有找到他在题目上线之前对考点的研究痕迹。
其社交媒体或发布的论文中也没有对应的体现。
因此无法预测在2021 defcon中,bboe老师将带来什么样的题目。
Defcon 2019 Qualify: redacted puzzle Writeup相关推荐
- Defcon 2018 Qualify: Easy Pisy writeup
文章目录 Defcon 2018 Qualify: Easy Pisy 1. Source Code 2. Writeup 3. Info 4. Analysis of Author 4.1 janm ...
- 2019强网杯crypto writeup
本次write包含以下题目 copperstudy randomstudy 强网先锋-辅助 copperstudy 题目描述 nc 119.3.245.36 12345 连上去返回 [+]proof: ...
- localhost/ ~wallhe/index.php,实战:2019 0ctf final Web Writeup(一)
前言 鸽了好久的题解,因为自己事务缠身,一直没时间写一下最近比赛的题解,趁近日有空,来填坑~ 第一次参加0ctf新星赛就拿了冠军,还是非常开心的.比赛过程中,web共4道题,我有幸做出3道,java实 ...
- [2019红帽杯]easyRE writeup
很想挑战难题,发现自己连writeup也看不懂 用64bit的ida打开,查找字符 找到函数: signed __int64 sub_4009C6() {signed __int64 result; ...
- 2019技术大赛预选赛 writeup
第一题简单 base64加字符偏移就可以了 第二题 维吉利亚加密 Vvr Ifnvaus Bdwokv Gbtrzsa Vkqgofntja rrlznxk eflvkozjcdue rs " ...
- 插画惯用风格_2020年最佳插画家的10种鼓舞人心的插画风格
插画惯用风格 重点 (Top highlight) I have to confess- I'm an illustration junkie. Hours disappear when I'm sw ...
- 网络安全问题游戏_游戏化如何改变网络安全行业
网络安全问题游戏 Gamification is the process of designing something with game-like elements. A practice that ...
- SWPUCTF2019web题复现
[SWPU2019]web1-easy_web 有一个登录框,试了试万能密码失败,那就注册吧 登录后发现有一个申请广告,在标题处输入11111111',发现报错,应该是sql注入 禁用了or,空格等等 ...
- BUU刷题记录——6
[De1CTF 2019]Giftbox De1CTF Web WriteUp – 赵 login命令处盲注获取登录密码 登陆后其他可用命令 targeting code position => ...
最新文章
- mysqld: Can‘t create directory ‘D:\software\mysql-8.0.28-winx64\mysql-8.0.28-winx64\bin\ oftware\mys
- STL源码剖析 数值算法 accumulate | adjacent_difference | inner_product | partial_sum | power | itoa
- C/C++工程师需要掌握哪些技能?他们的工资这么高,是有原因的!
- JavaME开发环境的搭建
- 数学模型--预测模型、BP神经网络预测
- 使用Python脚本将酷狗音乐的缓存文件修改为可播放
- 华为新员工入职180天培训计划
- 北京邮电大学计算机论文,2019北京邮电大学本科毕业论文-randomwalk.doc
- ulp(unit in the last place)是什么意思
- Win10系统Anaconda+TensorFlow+Keras 环境搭建教程
- asp毕业设计—— 基于asp+access的论坛网站设计与实现(毕业论文+程序源码)——论坛网站
- CSS背景background设置
- 常用RL算法的主要特性
- 自动化测试框架详解【2022】
- linux虚拟机关se,Centos关闭SELinux和防火墙的关闭
- 大学物理——原子间相互作用力
- 企业网络安全防御策略需要考虑哪些方面?
- drf第三讲——筛选、视图
- Paper之EfficientDet: 《Scalable and Efficient Object Detection—可扩展和高效的目标检测》的翻译及其解读
- Qt编写地图综合应用22-动态轨迹
热门文章
- 鼠标悬浮显示禁止图标
- android代码获取deviceid,获取安卓系统的设备id用getDeviceId()函数
- http://fir.im免费发布内测版app和用企业版证书发布app
- 网络-数据链路层回顾
- mysql性能监控 调优_MySQL管理之道:性能调优、高可用与监控(第2版)
- ArchLinux初次进入系统时触摸板可以移动鼠标但是无法点击的问题
- 面临困难不知道如何抉择怎么办,《大话西游之大圣娶亲》观后感
- 论文研究范围从什么角度怎么写?
- 一种基于局域网的点对点语音通信
- 苹果MACOS电脑MAC地址修改的方法