stegsolve使用方法
Stegsolve使用方法(是因为ctf题总是遇到并且目前百度没有十分详细的探究说明)

这个没什么好说的,打开文件 ,保存,退出

在分析里面从上到下的依次意思是
File Format:文件格式
Data Extract:数据提取
Steregram Solve:立体试图 可以左右控制偏移
Frame Browser:帧浏览器
Image Combiner:拼图,图片拼接
用法(使用场景)
1.File Format:这里你会看见图片的具体信息有时候有些图片隐写的flag会藏在这里
2.Data Extract:(好多涉及到数据提取的时候,很多博主在wp中都是一带而过,小白们还以为要一个个试。。)

左边一大部分主要是讲了RGBA(Alpha是透明度)的颜色通道
为了方便理解我们分开说
RGB是红绿蓝 但他们的值代表的实际上是亮度
R的数字越大,则代表红色亮度越高;R的数字越小,则代表红色亮度越低。G,B同理
R的亮度各有256个级别,GB同理。即从0到255,合计为256个。从数字0到255的逐渐增高,我们人眼观察到的就是亮度越来越大,红色、绿色或蓝色越来越亮。然而256是2的8次方 所以你会看见上图的7~0 一共8个通道
而Alpha就是透明度 该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域
alpha的值为0就是全透明,alpha 的值为 255 则表示不透明
因此左半部分就理解了
右半部分就是Extra By(额外的)和Bit Order(位顺序)和Bit Plane Order(位平面的顺序)
1).Extra By(额外的):分为row(行)和column(纵)
每个像素用R,G,B三个分量表示,那么一张图片就像一个矩阵,矩阵的每个单位就是(0~255,0~255,0~255)
也就会有是纵排列和行排列了,一般事先访问行再访问列(如果相反会引起ve使用方法)
2).Bit Order(位顺序):MSB是一串数据的最高位,LSB是一串数据的最低位。
3).Bit Plane Order(位平面的顺序)
整个图像分解为8个位平面,从LSB(最低有效位0)到MSB(最高有效位7)随着从位平面0 到位平面7,位平面图像的特征逐渐变得复杂,细节不断增加。(一般我们的图片如果是RGB那么就是24位 3乘8嘛)
4)Bit Plane Order(位平面的顺序):一般图片是24位 也就是3个8 大家可以想像成三明治 比如BGR就是B为三明治第一层 G为第二层 R为第三层。
3.Steregram Solve:立体试图 可以左右控制偏移 可以放张图片试一下就知道这个是什么意思了
4.Frame Browser:帧浏览器 主要是对GIF之类的动图进行分解,把动图一帧帧的放,有时候会是二维码
5.Image Combiner:拼图,图片拼接(意思显而易见)
接下来会带大家实战去深入理解一下Data Extract里面ctf经常用到的LSB隐写

这个我们之前介绍的很详细
而LSB隐写就是修改RGB颜色分量的最低二进制位也就是最低有效位(LSB),而人类的眼睛不会注意到这前后的变化,(人类的眼睛只能识别一部分颜色的变化)

如果我们修改lsb那么颜色依然和没修改的一样,并且修改的话每个像数可以携带3比特的信息。

这个作用是在于把最低位的二进制全部提取出来

这个作用在于对提取出来的最低位使用lsb解码算法

stegsolve使用方法的更多相关文章
- stegsolve.jar压缩包打开和使用方法
1.stegsolve.jar下载 下载地址:http://www.caesum.com/handbook/Stegsolve.jar 2.stegsolve.jar打开方法 (1)需要下载java并 ...
- javaSE27天复习总结
JAVA学习总结 2 第一天 2 1:计算机概述(了解) 2 (1)计算机 2 (2)计算机硬件 2 (3)计算机软件 2 (4)软件开发(理解) 2 (5) ...
- CTF取证方法大汇总,建议收藏!
站在巨人的肩头才会看见更远的世界,这是一篇来自技术牛人的神总结,运用多年实战经验总结的CTF取证方法,全面细致,通俗易懂,掌握了这个技能定会让你在CTF路上少走很多弯路,不看真的会后悔! 本篇文章大约 ...
- mapreduce多文件输出的两方法
mapreduce多文件输出的两方法 package duogemap; import java.io.IOException; import org.apache.hadoop.conf ...
- 【.net 深呼吸】细说CodeDom(6):方法参数
本文老周就给大伙伴们介绍一下方法参数代码的生成. 在开始之前,先补充一下上一篇烂文的内容.在上一篇文章中,老周检讨了 MemberAttributes 枚举的用法,老周此前误以为该枚举不能进行按位操作 ...
- IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法
直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...
- 多线程爬坑之路-Thread和Runable源码解析之基本方法的运用实例
前面的文章:多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类) 多线程爬坑之路-Thread和Runable源码解析 前面 ...
- [C#] C# 基础回顾 - 匿名方法
C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...
- ArcGIS 10.0紧凑型切片读写方法
首先介绍一下ArcGIS10.0的缓存机制: 切片方案 切片方案包括缓存的比例级别.切片尺寸和切片原点.这些属性定义缓存边界的存在位置,在某些客户端中叠加缓存时匹配这些属性十分重要.图像格式和抗锯齿等 ...
随机推荐
- es和数据类型
js=es+dom+bom,dom和bom前面已经讲完了 es是js的本体,是指数据类型,和对于数据的操作手段,他的版本更新得很快 这些功能不是html文件提供的,也不是浏览器提供的,即使脱离了dom ...
- springboot 中单机 redis 实现分布式锁
在微服务中经常需要使用分布式锁,来执行一些任务.例如定期删除过期数据,在多个服务中只需要一个去执行即可. 以下说明非严格意义的分布式锁,因为 redis 实现严格意义的分布式锁还是比较复杂的,对于日常 ...
- Ado.NET SQLHelper(2)
测试发现前面发的那个功能太简单,不能调用getdate()等内部函数. 完善后重载了insert和update两个功能,将函数作为字符串传入SQL语句构造,需要的可以试用一下 using Sys ...
- android studio (安卓开发)如何使用外部模拟器(mumu模拟器)调试运行程序
开发安卓 我觉得大家明白自带的模拟器卡的要死而且启动慢(我觉得八核的计算机应该可以解决这个问题),这里使androidstudio 使用外部模拟器 MuMu模拟器 配置方法 eclipse 开发安卓 ...
- H5页面,百度地图点击事件
需求:用户点击地图的时候获取地址街道,编码等详细信息. 然后看百度API文档,看到了click事件,关键时候还是需要看文档的. 实现 这样子虽然在浏览器的手机模拟器下是没有问题的 但是放在机器上测试的 ...
- Codeforces1243C Tile Painting
原题面:https://codeforces.com/contest/1243/problem/C 题目大意:给定数字n,有n个方块,第i个和第j个之间的距离(abs(i-j))如果是n的因子,那么第 ...
- BeanUtils使用将一个对象拷贝到另外一个对象
这里的BeanUtils是BeanUtils是org.springframework.beans.BeanUtils,和org.apache.commons.beanutils.BeanUtils是有 ...
- OpenJudge - NOI - 1.1编程基础之输入输出(C语言 全部题解)
01:Hello, World! #include <stdio.h> int main(void) { printf("Hello, World!"); return ...
- Java对象序列化输入输出
在网上看到一篇有关于对象序列化的代码,自己仿着写了把 在Java中,entity通过implements Serializable,然后使用ObjectInputStream和ObjectOutput ...
- Web.config中executionTimeout的单位
executionTimeout:表示允许执行请求的最大时间限制,单位为秒