首页 > 其他分享 >stegsolve与zsteg的使用

stegsolve与zsteg的使用

时间:2023-03-06 17:45:14浏览次数:52  
标签:Blue stegsolve LSB zsteg plane 使用 lsb Red

zsteg

介绍:用来检测PNG和BMP中隐藏数据的工具,可以快速提取隐藏信息

使用环境:kali

kali自带zsteg,可以用这个指令使用
gem install zsteg

下载完之后查看使用方法
sudo zsteg -h

列出常用的命令
zsteg xxx.bmp
zsteg xxx.png
zsteg -a (文件名) #查看各个通道的lsb

检测zlib,注意:-b的位数是从1开始的
zsteg zlib.bmp -b 1 -o xy -v

提取该通道图片
zsteg -e b8,a,lsb,xy 文件.png -> out.png

stegsolve

第一部分

RGB:R为Red,G为Green,B为Blue

在做Misc题的时候,更多用到是Red plane 0,Blue plane 0,Green plane 0,LSB隐写
image

但并不是无厘头的,在把PNG向左或向右点,可以看到Red plane 0,Blue plane 0,Green plane 0,与其他的不相同,八成是LSB隐写
比如:
Alpha plane 7到0几乎一样,都是空白(点击下边的>,是向右)
image

image

Red plane 7到1几乎一样
image

Red plane 0的左上边有黑点点
image

再向右看,Blue,Green与之一样
所以这就有了选择RGB的red、green和blue的最低位0的道理了

第二部分

1).Extra By(额外的):分为row(行)和column(纵)
每个像素用R,G,B三个分量表示,那么一张图片就像一个矩阵,矩阵的每个单位就是(0255,0255,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为第三层。
image
LSB隐写就是修改RGB颜色分量的最低二进制位也就是最低有效位(LSB),而人类的眼睛不会注意到这前后的变化,(人类的眼睛只能识别一部分颜色的变化)
image

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

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

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

stegsolve具体用法可以参照:https://blog.csdn.net/qq_34398519/article/details/115400535

总结

但多数时候,我们最好使用 zsteg -a 一把梭,可以帮助我们更快找到隐藏信息

标签:Blue,stegsolve,LSB,zsteg,plane,使用,lsb,Red
From: https://www.cnblogs.com/Zer0o/p/17184673.html

相关文章

  • SpringBoot+Vue中使用AES进行加解密(加密模式等对照关系)
    场景若依前后端分离版本地搭建开发环境并运行项目的教程:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/108465662在上面搭建起来前后端架构之后,在前后端......
  • 安卓NDK本地开发中使用logcat打印日志
    配置在需要打印日志的文件中添加以下头文件和宏定义#include<android/log.h>#defineLOGD(...)__android_log_print(ANDROID_LOG_INFO,"LOG_TAG",__VA_ARGS__)#de......
  • Docker使用socks5代理
    Docker网络Http代理设置背景在一些实验室环境,服务器没有直接连接外网的权限,需要通过网络代理。我们通常会将网络代理直接配置在/etc/environment、/etc/profile之类的配......
  • ASP.NET Core 使用app.UseStaticFiles配置静态文件中间件,达到类似IIS中虚拟目录的效果
    1、项目中静态文件存放在wwwroot文件夹之下,如下:要访问nihao.jpg这个文件夹,url路径可以这样写:<imgsrc="~/images/inhao.jpg"alt="pic"/>wwwrootcssimagesnihao.jpgjs那......
  • Linux中v4l2-utils 工具的使用
    v4l2-utils工具的使用一、安装v4l2-utilssudoapt-getinstallv4l-utils二、工具的使用2.1列出相关的camera设备v4l2-ctl--list-devices2.2列出某个camera的......
  • JUnit4基本使用
    JUnit4的配置和基本使用配置1.从网上下载jar包,导入Eclipse中从maven仓库中下载,官网https://mvnrepository.com/artifact/junit/junit导入Eclipse中,导入流程右键项目......
  • # JUnit4的配置和基本使用
     ##配置###1.从网上下载jar包,导入Eclipse中-从maven仓库中下载,官网https://mvnrepository.com/artifact/junit/junit-导入Eclipse中,导入流程右键项目-----BuildPa......
  • c++ 模板的简单使用
    c++函数模板的两种用法,第二种是可变参数个数的使用方法,其中sizeof...()函数可以获取输入可变参数的数量#include<iostream>template<typenameT>TAddMyNum(const......
  • Oracle使用MyBatis插入一条数据自动递增主键并返回主键值
    前期准备--创建t_table表createtablet_user(idnumber(10)primarykey,namevarchar2(20),agenumber(3));commentontablet_useris'用户信息表';......
  • 使用IntelliJ IDEA操作Hive时,执行查询语句报错
    问题描述:同样的查询语句在Hive客户端中能够顺利执行,而通过JDBC查询时报如下错误:org.apache.hadoop.security.AccessControlException:Permissiondenied:user=root,ac......