Bugku练习题---MISC---1和0的故事

flag:flag{QR_c0de_1s_1nterest1n9}

解题步骤:

1、观察题目,下载附件

2、不得不说这道题挺贵的,打开是这个样子的,由0和1组成的字符

3、观察了一会,感觉可能是跟颜色有关,黑白两色,可能是二维码,上脚本解决这道题,脚本如下:

 1 import xlwt
2
3 #创建一个xls,需要安装xlwt环境库
4 book = xlwt.Workbook()
5
6 #创建一个样式(黑色填充,无边界)
7 style = xlwt.easyxf('pattern: pattern solid, fore_colour black;font: height 250')
8 #添加一个表单,允许覆盖
9 table=book.add_sheet('flag_code',cell_overwrite_ok=True)
10
11 #打开txt文件,注意文件路径
12 with open( '1和0的故事.txt', 'r' ) as f:
13 qr=f.read()
14
15 qrlist=qr.split("\n")
16
17 #first_col=sheet.col(0)
18
19 m=0
20 for i in qrlist:
21 n=0
22 for j in i:
23 table.col(n).width=256*3
24 if j=='1':#如果是1则在Excel上涂黑
25 table.write(m,n,'',style=style)
26 else:
27 table.write(m,n,'')#如果是0则不涂黑
28 n+=1
29 m+=1
30 book.save('ctfcode.xls')
31 print('over!!')

4、原理是创建一个excel脚本,通过自动化的方式创建表格中的二维码,打开以后效果如下,一定要安装环境库和注意文件的路径

5、二维码最关键的是定位符,这里明显缺少定位符,将定位符补全就可以了,如图所示:

6、扫描二维码,得到答案,解题完成

知乎地址:https://www.zhihu.com/people/yi-kuai-xiao-bing-gan-43-64/posts
CSDN地址:https://blog.csdn.net/liu914589417
欢迎关注评论,耶斯莫拉

Bugku练习题---MISC---1和0的故事的更多相关文章

  1. Bugku练习题---MISC---蜜雪冰城~

    Bugku练习题---MISC---蜜雪冰城~ flag:flag{1251_521_m1xueb1n9chen9ti@nm1mi} 解题步骤: 1.观察题目,下载附件 2.拿到手以后发现有好几个文件 ...

  2. Bugku练习题---Crypto---聪明的小羊

    Bugku练习题---Crypto---聪明的小羊 flag:flag{6fde4163df05d900} 解题步骤: 1.观察题目,下载附件 2.根据题目描述,判断是栅栏密码,位移2位,白给题,上网 ...

  3. Bugku练习题---Web---计算器

    Bugku练习题---Web---计算器 flag:flag{8b4b2f83db2992d17d770be1db965147} 解题步骤: 1.观察题目,打开场景 2.场景打开后发现是一个验证码界面 ...

  4. Bugku练习题---MISC---easy_nbt

    Bugku练习题---MISC---easy_nbt flag:flag{Do_u_kN0w_nbt?} 解题步骤: 1.观察题目,下载附件 2.通过观察题目描述和压缩包中的文件,发现这个好像是MC的 ...

  5. Bugku练习题---MISC---FileStoragedat

    Bugku练习题---MISC---FileStoragedat flag:bugku{WeChatwithSteg0} 解题步骤: 1.观察题目,下载附件 2.下载后发现是一个后缀名为.dat的文件 ...

  6. Bugku练习题---MISC---啊哒

    Bugku练习题---MISC---啊哒 flag:flag{3XiF_iNf0rM@ti0n} 解题步骤: 1.观察题目,下载附件 2.下载以后发现是一张图片,从表面看没有什么有价值的信息 3.直接 ...

  7. JS-DOM2级封装练习题--点击登录弹出登录对话框

    <!doctype html><html lang="en"> <head> <meta charset="UTF-8" ...

  8. c语言总练习题

    !4,42 ?45 1 Description 键盘输入一个双精度数据,乘以2以后输出 Input 输入一个double型数据 Output 输出它的两倍数,结果保留8位小数 Sample Input ...

  9. MTK 虚拟 sensor bring up (pick up) sensor1.0

    pick up bring up sensor1.0 1.pick up对比 2.SCP 1.添加驱动文件 2.添加编译环境(打开开关) 注:编译过程中如果显示内存不够 3.修改底层数据上报方式 3. ...

随机推荐

  1. python方面

    (113条消息) re.sub()用法的详细介绍_jackandsnow的博客-CSDN博客_re sub Python slice() 函数 | 菜鸟教程 (runoob.com) (111条消息) ...

  2. nginx简介&nginx基本配置和优化

    一.nginx简介 1.nginx的发展 Nginx是俄罗斯人编写的一款高性能HTTP和反向代理服务器.Nginx能够选择高效的epoll(Linux2.6内核).kqueue(FreeBSD).ev ...

  3. idea推送项目到github

    参考: https://blog.csdn.net/SoWhatWorld/article/details/103817786?depth_1-utm_source=distribute.pc_rel ...

  4. C语言之常量(知识点4)

    一.常量(概念) ①用标识符代表常量 ②一般用大写字母表示 二.定义格式 #define 符号常量 常量 三.案例 #define PI 40; #define PRICE 30; 四.注意 ①其值在 ...

  5. ROS终端中创建功能包的常用命令

  6. python学习笔记(六)——程序调试

    在我们平时编写程序时,常常会遇到各种错误,俗称BUG.而我们程序猿的工作常常需要对程序进行调试,也就是所谓的debug. 程序调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法 ...

  7. CSS实例:翻转图片、滚动图片栏、打开大门

    CSS 翻转图片主要用到的技术除了3D翻转和定位 ,还用到了一个属性 backface-visibility:visable|hidden;该属性主要是用来设定元素背面是否可见. 效果图如下: 具体的 ...

  8. JavaScript 工作原理之六-WebAssembly 对比 JavaScript 及其使用场景

    原文请查阅这里,略有改动,本文采用知识共享署名 4.0 国际许可协议共享,BY Troland. 本系列持续更新中,Github 地址请查阅这里. 这是 JavaScript 工作原理的第六章. 现在 ...

  9. SpringCloud微服务治理技术入门(SCN)

    1.集群.分布式.微服务 首先先理解三个感念 什么是集群?: 同一个业务,部署在多个服务器上,目的是实现高可用,保证节点可用! 什么是分布式?: 一个业务分拆成多个子业务,部署在不同的服务器上,每个子 ...

  10. java中匿名内部类的匿名构造函数是怎么用的

    java中匿名内部类的匿名构造函数是怎么用的下面的例子说明匿名内部类的匿名构造函数的用法 例2.7.2_0interface FigureMark_to_win {    void whoAmI(); ...