[NSSRound#3 Team]funnypng
说明:这题我也是根据透明的胡萝卜_robots 的WP,写一下我的理解加上复现。
- 先看属性是48bit,我们可以用opencv读一下,看看是几个通道的
import cv2img = cv2.imread("./funnypng.png", cv2.IMREAD_UNCHANGED)
print(img.shape[-1])
运行结果:
3
cv2.IMREAD_UNCHANGED
表示,保持原图状态读取,如果你不加,那他只会读取8bit,这些小细节要注意。
根据运行结果3,我们就知道是RGB三个通道,再根据图片属性的48bit,也就是R和G和B每个通道占48 / 3 = 16(bit)
,也就比正常情况的8bit多了8bit,首先你能理解这个地方,后面就比较好理解了。
- 我们使用stegsolve读取图片,发现图片的R通道的最低位隐写了一个二维码,由于这个工具只会读取图片的8bit,也就是说原图是16bit,我们的前8bit被读取了,发现了半个二维码,另外半个二维码,其实被出题人放到了后8bit里面,所以现在的目标就是提取后面的8bit;也就是00000000 00000000,我们要提取后8bit的。
上才艺:
import cv2
import numpy as npimg = cv2.imread("./funnypng.png", cv2.IMREAD_UNCHANGED)img2 = img & 0xFF
img2 = img2.astype(np.uint8)cv2.imwrite("./fun.png", img2)
- 后8bit已经被我们提取到了,所以说会opencv真的很爽,虽然我会的也不多,哈哈哈
可以看到后8bit的B通道的最后一位隐写了另一半二维码,我们拿到了另一半了。
用ps稍微处理一下:
这种被涂鸦的使用:QRazyBox
找到二维码目录,导入二维码。
NSSCTF{fbef863db8331e8c63f73d7a04c1cf5b}
总结:出题人的思路是每个通道16bit,前8bit会默认被软件处理,后8bit不会被处理,所以就可以进行隐写,很有创意的题目~
[NSSRound#3 Team]funnypng相关推荐
- Reverse入门[不断记录]
文章目录 前言 一.[SWPUCTF 2021 新生赛]re1 二.[SWPUCTF 2021 新生赛]re2 三.[GFCTF 2021]wordy[花指令] 四.[NSSRound#3 Team] ...
- Visual Studio 2005 Team System下载地址
注册一个msn就可以去微软下载了,关于替换序列号变成正版的方法我没有试,team suite 我在用,但Team Foundation Server 我还没有安装好 Microsoft Visual ...
- 高级网络配置《 bond team桥接 》的建立
bond 资料详情 一.链路聚合:以太网链路聚合简称链路聚合,它通过将多条以太网物理链路捆绑在一起成为一条逻辑链路,从而实现增加链路带宽的目的.同时,这些捆绑在一起的链路通过相互间的动态备份,可以有效 ...
- 安装Team Services Agent Win7
现状:项目现时使用的是Team Services,使用Team Services可以控制其中的一台Build Server,从Github提取代码,并在Build Server进入编译打包处理(son ...
- 微软MSIT部门招Sr SDE for FSS team
Job Description: Qualifications Do you want to design and build the services and solutions that are ...
- 【拾贝】版本控制-git 建立Team项目
提示一下:GitHub升级了 1. 网站升级后原来网站上有些教程图片有些问题 2. 客户端升级也引起了如下问题: 原来Git Shell 是这个路径 C:\Users\Administrator\Ap ...
- UVa540 Team Queue
// 题意:有t个团队的人在排队.每次来了一个新人之后,如果他有队友在排队,那么这个新人会插队到队友的身后. // 要求支持三种指令:ENQUEUE x; DEQUEUE(队首出队); STOP.模拟 ...
- Team Foundation Server安装指南(转)
1.说明 Team Foundation Server(以下简称VSTF)的安装并不是一件轻松的事情,在安装的过程中相信很多人都或多或少碰到一些问题而安装不成功,虽然手头有微软提供的所谓安装手册,也曾 ...
- 理解VMware Team中的虚拟网络
VMware Workstation 5.0(及其以后的版本)提供了"Team"功能.每个Team都包括"一组"虚拟机,以及多个虚拟交换机.Team是VMwar ...
最新文章
- 比较数据库表结构之间的差异
- Vue 全家桶 + Express 实现的博客
- 【TypeScript】类的使用
- opencv 获取一个目录下子目录_OpenCV系列 --- OpenCV4.01配置VS2015
- 《大型网站技术架构》读书笔记之六:永无止境之网站的伸缩性架构
- 飞控计算机的作用,用于波音777飞机的主要飞控计算机
- 壁式框架内力计算_4种类型剪力墙的计算要点
- 从无到有:阿里巴巴中国站手机客户端项目设计
- Navicat打开保存的查询
- SGI opengl source code download
- StackOverflow热帖:Java整数相加溢出怎么办?Java8一步搞定~
- (2)从文件中解析JSON数据
- Linux桌面鼠标取词自动翻译
- 我的计算机加密,安装加密系统后,打开我的电脑速度变慢
- 禁用win10触摸屏手势_禁用和启用Win10平板边缘滑动手势的详细方法
- 算法设计技巧与分析 答案整理
- HTML文本框不能复制粘贴,word文本框无法复制粘贴
- A股永远3000点?量化指数增强策略,轻松多涨10倍。附代码【邢不行】
- python 使用pdfminer3k 读取PDF文档
- 华为的海外员工生活写实
热门文章
- .chm文件打开显示找不到网址
- QQ城市达人接口编程及经验分享
- 牛客小白月赛28 G.牛牛和字符串的日常
- msiexec.exe用于执行msi的安装操作
- linux系统du指令,教你在Linux系统中使用du命令,包括用du与其他命令结合使用
- Enfocus PitStop Pro 2019(PDF增强插件)
- 【实验教程】华为设备基础配置
- 98%的数据被浪费,企业该如何释放数据价值?
- css实现整体网页16 9,CSS实现宽度自适应宽高16:9的矩形的示例
- ubuntu离线安装deb应用包与python包