BugkuCTF-MISC题1和0的故事

基础知识:

PIL

PIL是Python Imaging Library,它为python解释器提供了图像编辑功能。
PIL.Image.new()方法通过给定的模式和大小创建一个新图像。尺寸以(width,height)-tuple,以像素为单位。对于单波段图像,颜色作为单个值给出,对于多波段图像,颜色作为一个元组给出(各波段一个值)。
我们还可以使用颜色名称。如果省略了color参数,则图像将填充为零(通常对应于黑色)。如果颜色为无,则不初始图像。如果您要在图像里粘贴或绘制信息,这将很有用。
用法:
PIL.Image.new(mode, size)
PIL.Image.new(mode, size, color)

参数:
mode:用于新图像的模式。 (可能是RGB,RGBA)
size:包含(宽度,高度)以像素为单位的2元组。
color:图像使用什么颜色。默认为黑色。如果给出的话,对于单频带模式,它应该是单个
整数或浮点值;对于多频带模式,它应该是一个元组。

返回值:Image对象。

putpixel()

PIL是Python Imaging Library,它为python解释器提供了图像编辑功能。 PixelAccess类提供对PIL.Image数据的读写访问权限(像素级)。访问单个像素相当慢。如果要遍历图像里的所有像素,则可能会通过Pillow API的其他部分的方法更快。

putpixel()修改x,y处的像素。对于单波段图像,颜色作为单个数值给出;对于multi-band图像,颜色作为元组给出
用法: putpixel(self, xy, color)

参数:
xy:像素坐标,表示为(x,y)
value:-像素值。

返回值:具有像素的图像。

解题过程

下载文件得到一个txt文件,打开查看全是0和1
在这里插入图片描述
1和0可联想到黑和白两颜色,尝试转成二维码

python转二维码:

from PIL import Image
MAX = 25
#二维码大小
pic = Image.new("RGB",(MAX, MAX))
#str = """1111111001110010001111111100000100001111010100000110111010011100010010111011011101010111100001011101101110101010101000101110110000010011000101010000011111111010101010101111111000000000100000110000000011000111011101101000110000001000010110010010010100010011110100001110111001100111101001010110010010011000001001100001001101000111100011111101110010100010110111110011011111101111000110110010010101101100100011110011111111111011100000000101100011000101001111111010010100101010001100000101010101010001100110111010001001111111100101011101000011001011110111101110100100110010010000110000010110000110110110011111111011010000101110101
#"""#修改后的二维码
str="""0000000001110010000000000000000000001111010000000000000000011100010000000000000000010111100000000000000000001010101000000000000000000011000101000000000000000010101010100000000000000000100000110000000011000111011101101000110000001000010110010010010100010011110100001110111001100111101001010110010010011000001001100001001101000111100011111101110010100010110111110011011111101111000110110010010101101100100011110011111111111011100000000101100011000101000000000010010100101010001000000001010101010001100100000000001001111111100100000000000011001011110111000000000100110010010000100000000110000110110110010000000011010000101110101
"""#原二维码
# str为获取的01片段
i=0
for y in range (0,MAX):for x in range (0,MAX):if(str[i] == '1'):pic.putpixel([x,y],(0, 0, 0))else:pic.putpixel([x,y],(255,255,255))i = i+1
pic.show()
pic.save("5.png")
#由于直接预览分辨率太低,所以保存下来观看"""
PIL.Image.new(模式, 大小, 颜色)
"""

运行代码发现上述二维码少了定位标志
在这里插入图片描述
通过ps可以手动补全
在这里插入图片描述
直接生成二维码
扫描得到flag
flag{QR_c0de_1s_1nterest1n9}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/525412.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python time 模块 - Python零基础入门教程

目录 一.前言二.Python time 模块常用函数介绍三.Python time 模块使用 1.Python time 模块获取时间2.Python time 模块自定义时间格式3.Python time 模块查看代码执行时间 四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 Python time 模…

面趣 | 这道微软面试题你会吗?

参加 2018 AI开发者大会,请点击 ↑↑↑问面试题目:两个单词如果包含相同的字母,次序不同,则称为字母易位词(anagram)。例如,“silent”和“listen”是字母易位词,而“apple”和“aplee”不是易位词。请定义…

BugkuCTF-MISC题baby_flag.txt

下载附件得到一个压缩包baby_flag.zip 打开得到baby_flag.txt,直接点击打开发现乱码 通过010editor打开观察发现这是一个图片文件 将文件后缀改为.jpeg得到一张图片 通过binwalk -e …未分离出有价值的信息 在010editor发现有RAR压缩包的头 将这一部分数据复制…

云漫圈 | 计数排序,你真的了解么?

参加 2018 AI开发者大会,请点击 ↑↑↑————— 第二天 —————————————————假定20个随机整数的值如下:9,3,5,4,9,1,2,7,8,1&…

BugkuCTF-MISC题blind_injection

下载附件 方法一: 下载用wireshark打开 题目说的是盲注,而注入一般都是走的http,直接导出http对象,再根据大小排序 得到flag 方法二: 若HTTP对象列表点击大小无反应 将其导出,命名为output 在文件夹里查…

ubuntu服务器ssh登录密码修改,Ubuntu-18.04 下修改root用户密码,安装SSH服务,允许root用户远程登录,安装vsftp服务器...

修改root用户密码打开终端,输入 sudo passwd root 指令:安装SSH服务ssh默认端口号是22,可以在/etc/ssh/sshd_config文件中修改查看服务器否开启:netstat -tlp启动服务:sudo /etc/init.d/ssh start重启服务:…

Python json模块 - Python零基础入门教程

目录 一.前言二.python json 模块常用函数三.json 转 Python 字典 dict四.Python 字典 dict 转 json五.关于 json.dump 和 json.load六.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.前言 JSON 的全称是 JavaScript Object Notation&…

Cloud一分钟 | 英国发布大规模遗传数据;德国电信与华为联合发布PLAS云连接服务...

Hello,everyone:10月15日早,星期一,祝大家工作愉快!一分钟新闻时间:★ 百度云与智慧农业的头部企业强强联合,共建ABC智能农业生态。★ 德国电信与华为联合发布PLAS云连接服务。★ 英国发布大规模…

“汉堡+奶昔”怎么就成了精致生活的热门标签?

图片来源:视觉中国文章来源:DT财经“左手汉堡,右手奶昔,这是新天地Coco的时髦新日常。最近沪上刮起一阵打卡新风潮,汉堡竟然成了标记城市美好生活的一大利器。还在纠结晚餐去金拱门还是汉堡王的DT君,发现自…

揭开互联网公司的神秘面纱,数据解读那些slay整个行业的互联网公司

前言:随着互联网行业的日益兴盛,吸引力越来越多的牛人加入其中,也有许多小伙伴跃跃欲试,想要在互联网的浪潮中大展身手。今天我们通过看准网的数据,帮助大家对各大互联网公司有一个比较概括的了解。01.数据来源看准网提…

Cloud一分钟 | Gartner发布2018年第二季度全球服务器市场报告;中信银行联合腾讯云推出手机银行智能语音产品...

Hello,everyone:10月16日早,星期二,祝大家工作愉快!一分钟新闻时间:完1.微信群:添加小编微信:tangguoyemeng,备注“进群姓名公司职位”即可,加入【云计算学习…

Cloud一分钟 | 华为云发布云数据安全白皮书;OPPO携手阿里云举行天池OGeek算法挑战赛...

Hello,everyone:10月17日早,星期三,祝大家工作愉快!一分钟新闻时间:完1.微信群:添加小编微信:tangguoyemeng,备注“进群姓名公司职位”即可,加入【云计算学习…

关于这道填空题,你会如何回答?(附带学习链接)

曾经有一篇百万阅读量的爆文,里面出了道填空题,问:____是铜牌,____是银牌,____是金牌,____是王牌。小白的答案是:Java是铜牌,Linux是银牌,Hadoop是金牌,大数据…

BugkuCTF-Crypto题affine

题目描述: 这题考的是仿射密码,了解一下仿射密码 仿射密码为一类替换密码。它是一个字母对一个字母的。它的加密函数为 其a和m互质,m为字母的数目。 解码函数为 其a^-1为a在Zm群的乘法逆元 乘法逆元: 所有与26互素元素的乘法…

Python set集合 - Python零基础入门教程

目录 一.set 集合简介二.set 集合常用函数三.set 集合运算符四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 在 Python 变量中除了以前文章所提到的整形 int / 浮点数 float / 布尔值 bool / 列表 list / 字典 dict 之外,还有…

Cloud一分钟 | 华为云、腾讯云、阿里云中标「央视2018年租赁公有云服务」项目...

Hello,everyone:10月18日早,星期四,祝大家工作愉快!一分钟新闻时间:完1.微信群:添加小编微信:tangguoyemeng,备注“进群姓名公司职位”即可,加入【云计算学习…

Cloud一分钟 | 华云数据中标上药控股私有云千万级项目; 总投资90亿元的中国移动厦门数据中心,一期电源工程项目候选人公示...

Hello,everyone:10月19日早,星期五,祝大家工作愉快!一分钟新闻时间:完1.微信群:添加小编微信:tangguoyemeng,备注“进群姓名公司职位”即可,加入【云计算学习…

Python set list dict tuple 区别和相互转换 - Python零基础入门教程

目录 一.前言二.Python set list dict tuple 区别三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.前言 Python 提供多种数据类型来存放数据项集合,主要包括序列(列表 list 和元组 tuple)&#xff…

2023RT-Thread开发者大会

参加了一次RT-Thread的开发者大会,相当有意思,虽然一天奔波挺累,但睡了半天之后简单剪了下22号的视频,也就有时间写自己的参会笔记了。 与openEuler社区不同,RT-Thread社区更专注于嵌入式,与硬件厂商结合较…

企业大咖教你解决Kubernetes的挑战

Kubernetes(K8s)是自动化容器操作的开源平台,这些操作包括部署,调度和节点集群间扩展。如果你曾经用过Docker容器技术部署容器,那么可以将Docker看成Kubernetes内部使用的低级别组件。Kubernetes还可以提供容器弹性&am…