[湖南省赛2019]Findme

1.题目概述

2.解题过程

010打开这几张图片

先简单分析一下这几张图片

简单分析

1.png

从外观上,1.png明显高度太低,需要更改

2.png

2.png末尾有疑似其他文件的名称

3.png

3.png暂时没发现什么东西

4.png

4.png末尾有一串不明base64

cExlX1BsY

5.png

5.png末尾也有一串base64字符和提示性话语

Yzcllfc0lN

然后再开始深入分析1.png

简单修改高后打开

仍然没有什么信息

那来个专业的脚本看一下它原来的宽高是多少

import zlib
import struct filename = '1.png'
with open(filename, 'rb') as f:
all_b = f.read()
crc32key = int(all_b[29:33].hex(), 16)
data = bytearray(all_b[12:29])
n = 4095
for w in range(n):
width = bytearray(struct.pack('>i', w))
for h in range(n):
height = bytearray(struct.pack('>i', h))
for x in range(4):
data[x + 4] = width[x]
data[x + 8] = height[x]
crc32result = zlib.crc32(data)
if crc32result == crc32key:
print("宽为:", end="")
print(width)
print("高为:", end="")
print(height)

按照这个数据给改一下

再打开

继续分析

IDAT隐写

使用工具pngcheck检查IDAT

下载地址:

pngcheck Home Page (libpng.org)

命令:

pngcheck.exe -v 1.png

显示有错误,010再打开1.png,

很明显,这两和其他人不一样

chunk2和chunk3的CTYPE缺少IDAT字样,给加上(在16进制数据里改)IDAT的十六进制标识为49 44 41 54

改好后再打开

LSB隐写

按照它原来的模样猜测有二维码

stegsolve打开

QR-reasearch扫描

哦耶,又找到一个线索

ZmxhZ3s0X3

再看2.png,按照前面的分析,2.png里应该藏有其他文件的数据,但是并没有找到zip之类压缩包的数据

会不会藏有其他格式的压缩包呢?搜一下看看

在搜索7Z时,有了一点线索

哈哈,笑死我了,出题人为了咱们能找到7Z竟然加了2000多个7Z,也不忘记加上个nothing here,有心了

7Z替换成PK

这些7Z后面要么是03 04 要么就是01 02,这不妥妥的zip数据的模样吗?把7Z全部改成PK

然后binwalk分离

打开

得到了999的txt究竟谁是最特殊的那个呢?

按照大小排序,618.txt最大,打开

哦耶,第二个线索

1RVcmVfc

或者直接搜索find,这样更简单,但是不好才到关键词是find

010看3.png,会发现,除了chunk7的CRC是正常的长度,其他的都不正常,太短了

把这6个crc保存下来,是

33 52 6C 5A 33 30 3D

然后放010里

哦耶,线索3

3RlZ30=

把5条线索集中到一起

1-5分别是

ZmxhZ3s0X3

1RVcmVfc

3RlZ30=

cExlX1BsY

Yzcllfc0lN

然后我就按照1-5的顺序直接解,结果不行???

排序,3肯定在最后,

1的解码

2解不出来

4

5也解不出来,

1开头,3结尾,4中间,那只有2种可能

12453或15423,试了一下15423的顺序正确

ZmxhZ3s0X3Yzcllfc0lNcExlX1BsY1RVcmVfc3RlZ30=

终于做出来了!!!

3.flag

flag{4_v3rY_sIMpLe_PlcTUre_steg}

## [湖南省赛2019]Findme ###的更多相关文章

  1. hdu6578 2019湖南省赛D题Modulo Nine 经典dp

    目录 题目 解析 AC_Code @ 题目 第一题题意是一共有{0,1,2,3}四种数字供选择,问有多少个长度为n的序列满足所有m个条件,每个条件是说区间[L,R]内必须有恰好x个不同的数字. 第二题 ...

  2. 2017 湖南省赛 K Football Training Camp

    2017 湖南省赛 K Football Training Camp 题意: 在一次足球联合训练中一共有\(n\)支队伍相互进行了若干场比赛. 对于每场比赛,赢了的队伍得3分,输了的队伍不得分,如果为 ...

  3. 2016湖南省赛----G - Parenthesis (括号匹配)

    2016湖南省赛----G - Parenthesis (括号匹配)   Bobo has a balanced parenthesis sequence P=p 1 p 2…p n of lengt ...

  4. 2016湖南省赛----A 2016 (同余定理)

    2016湖南省赛----A 2016 (同余定理) Description  给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量: 1. 1≤a≤n,1≤b≤m; 2. a×b 是 ...

  5. 2016湖南省赛 I Tree Intersection(线段树合并,树链剖分)

    2016湖南省赛 I Tree Intersection(线段树合并,树链剖分) 传送门:https://ac.nowcoder.com/acm/contest/1112/I 题意: 给你一个n个结点 ...

  6. 2019湖南省赛H题——概率转移&&逆矩阵

    题意 题目链接 Bobo有一个 $n+m$ 个节点的有向图,编号分别为 $1 \sim n$,他还有一个 $n$ 行 $n+m$ 列的矩阵 $P$. 如果在 $t$ 时刻他位于节点 $u(1 \leq ...

  7. 2013年ACM湖南省赛总结

    今年的比赛最大的变化就是改用OJ判题了,相比于PC^2确实省事了不少,至少可以直接复制样例了.题目方面依旧是刘汝佳命题,这点还是相当好的,至少给人以足够的安全感. 开始比赛之后安叔瞬间就把前半部分题目 ...

  8. 2016湖南省赛 [Cloned]

    A.2016 给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量: 1. 1≤a≤n,1≤b≤m; 2. a×b 是 2016 的倍数. Input   输入包含不超过 30 组数 ...

  9. HDU校赛 | 2019 Multi-University Training Contest 6

    2019 Multi-University Training Contest 6 http://acm.hdu.edu.cn/contests/contest_show.php?cid=853 100 ...

随机推荐

  1. Pandas之isna,fillna

    isna() 释义 筛选为NaN的布尔值,可接受单个标量或者数组 举例 筛选stu_name为NaN的所有行: df = pd.DataFrame({'stu_name': ['Tom', 'Tony ...

  2. day2 -- 字符串常用方法、列表、字典

    1.字符串常用方法 name = "Convict abc" count(): print(name.count("c")) # 2 find(): print ...

  3. Java中==、equals、hashCode的区别

    "=="是运算符,用来比较两个值.两个对象的内存地址是否相等: "equals"是Object类的方法,默认情况下比较两个对象是否是同一个对象,内部实现是通过& ...

  4. 「微前端实践」使用Vue+qiankun微前端方案重构老项目的本地验证

    10月份换了新的工作,参与完一个月的需求迭代后,接到了项目重构的任务.简单来说,需要在短时间内提出方案设想,同时进行本地验证,最终需要拿出一套技术替换方案来.于是,埋头苦干了一个月,总算干了点成绩出来 ...

  5. 利用 docker 部署 elasticsearch 集群(单节点多实例)

    文章目录 1.环境介绍 2.拉取 `elasticserach` 镜像 3.创建 `elasticsearch` 数据目录 4.创建 `elasticsearch` 配置文件 5.配置JVM线程数量限 ...

  6. CentOS8系统上Zookeeper安装启动

    下载Zookeeper安装包,下载地址为:https://zookeeper.apache.org/releases.html.注意选择bin的gz包,否则安装不成功,提示找不到相应的类. 一.单机模 ...

  7. nacos配置中心文件(bootstrap.properties)不生效问题解决

    springcloud整合nacos作为配置中心时,配置文件不生效的问题 在这个问题处卡了一天多,在网上各种搜索.大多数解决方案都是在bootstrap.properties文件中配置nacos地址. ...

  8. 实例详解 Java 死锁与破解死锁

    锁和被保护资源之间的关系 我们把一段需要互斥执行的代码称为临界区.线程在进入临界区之前,首先尝试加锁 lock(),如果成功,则进入临界区,此时我们称这个线程持有锁:否则呢就等待,直到持有锁的线程解锁 ...

  9. RFC2544背靠背测试——信而泰Renix测试软件实操

    文章关键词:背靠背测试.合法最小帧间隙.缓存区结构.吞吐量测试. 背靠背测试背景: 随着网络规模的扩大,大量的路由更新消息.频繁的文件传输和数据备份等操作都会导致数据在一段时间内急剧增加,甚至达到该物 ...

  10. 想用WPS 2019模板设计报表?Smartbi V9没问题

    导读:Smartbi V9 报表设计器可以支持WPS 2019个人版了,而且报表功能也有明显增强.   企业报表软件(Smartbi Spreadsheet)是思迈特软件于2014年针对企业客户.系统 ...