我们在影视作品中经常会看到一门功夫叫隐身术,是一种使身体隐形从而看不见的幻术。

你知道信息安全里面也有“隐身术”吗?没错,它就是隐写术!

隐写术是关于信息隐藏,即不让计划接收者之外的任何人知道信息的传递事件(而不只是信息的内容)的一门技能。

按照载体对象分类可以分为文本隐写术、图像隐写术、音频隐写术、视频隐写术,本文主要介绍的是图像隐写术,先详细分析JPEG文件格式,然后研究隐藏文件的方法及原理,文章阅读用时约5分钟。

基础知识

JPEG文件

JPEG是Joint Photographic Experts Group(联合图像专家小组)的缩写

JPEG本身只有描述如何将一个影像转换为字节的数据串流(streaming),但并没有说明这些字节如何在任何特定的储存媒体上被封存起来。

.jpeg/.jpg是最常用的图像文件格式,具有以下特点:

1、支持有陨压缩

2、不支持透明

3、不支持动画

4、非矢量

文件格式判断

针对这类文件格式我们不能仅仅看文件后缀名

以下两个文件后缀名不一样,但都是同一个文件

我们可以通过十六进制编辑器打开文件然后查看文件标志来判断

常见隐写方法

Exif信息

Exif文件是JPEG文件的一种,遵从JPEG标准,只是在文件头信息中增加了拍摄信息和索引图

储存在APP1(0xFFE1)数据区中

我们可以直接使用十六进制编辑器分析查看

也可以使用MagicEXIF软件,这款软件可以帮助我们快捷的修改查看Exif信息。

下载地址:http://www.magicexif.com/

图种

这个是先将torrent文件压缩为rar文件或者zip文件都行

然后打开命令行输入

copy/b 图片文件名称+压缩文件名称 生成的文件名称
例子:copy /b time.jpg+kanmengou.zip 3.jpg

生成的文件正确预览没任何问题,修改文件后缀为zip,或者rar就能看见隐藏的tor文件。

JSteg隐写算法

基于DCT系数的变换进行数字隐写,主要思想是将秘密消息嵌入在量化后的DCT系数的最低比特位上。但对原始值为O、1的DCT系数不进行嵌入。提取秘密消息时,只需将载密图像中不等于0、l的量化DCT系数的LSB取出即可。

JSteg隐写过程:

(1)部分解码JPEG图像,得到二进制存储的AC系数,判断该AC系数是否等于1或0,若等于则跳过该AC系数,否则,执行下一步。

(2)判断二进制存储的AC系数的LSB是否与要嵌入的秘密信息比特相同,若相同,则不对其进行修改,否则执行下一步。

(3)用秘密信息比特替换二进制存储的AC系数的LSB,将修改后的AC系数重新编码得到隐秘JPEG图像。

JSteg加密软件下载地址:

链接:https://pan.baidu.com/s/1FRXUuPgUPcEGR_mHc_cCkg 密码:2js5
使用说明如下:

其他

还要很多高级加密算法,比如JPHide、OutGuess、Invisible Secrets、F5、appendX、Camouflage,这里不再一一介绍。

检测

接下来我们将介绍如何去识别这些隐写术。

JPEGsnoop

JPEGsnoop是一个免费的,便携的详细图像解码器,负责审查任何文件类型的包含JPEG压缩图像。

下载地址:

https://www.impulseadventure.com/photo/jpeg-snoop.html

解析jpeg图片的EXIF信息

查看DQT的数据

分析起来很方便。

Stegdetect

Neils Provos开发的隐写工具Stegdetect,通过统计分析技术评估JPEG文件的DCT频率系数,它可以检测到通过JSteg、JPHide、OutGuess、Invisible Secrets、F5、appendX和Camouflage等这些隐写工具隐藏的信息,并且还具有基于字典暴力破解密码方法提取通过Jphide、outguess和jsteg-shell方式嵌入的隐藏信息。

项目地址:

https://github.com/abeluck/stegdetect

这是Linux环境下的项目,我们编译一下。

root@linux:~/tools/stegdetect# ./configure
root@linux:~/tools/stegdetect# make
使用说明:

./stegdetect -tj -s 10.0 hidetime.jpg
hidetime.jpg : jsteg
选项

-q 仅显示可能包含隐藏内容的图像。
-n 启用检查JPEG文件头功能,以降低误报率。如果启用,所有带有批注区域的文件将被视为没有被嵌入信息。如果JPEG文件的JFIF标识符中的版本号不是1.1,则禁用OutGuess检测。
-s 修改检测算法的敏感度,该值的默认值为1。检测结果的匹配度与检测算法的敏感度成正比,算法敏感度的值越大,检测出的可疑文件包含敏感信息的可能性越大。
-d 打印带行号的调试信息。
-t 设置要检测哪些隐写工具(默认检测jopi),可设置的选项如下:
j 检测图像中的信息是否是用jsteg嵌入的。
o 检测图像中的信息是否是用outguess嵌入的。
p 检测图像中的信息是否是用jphide嵌入的。
i 检测图像中的信息是否是用invisible secrets嵌入的。
-V 显示软件版本号。
以上是今天的全部内容,大家看懂了吗?

网络安全-江湖高手专用的“隐身术”:图片隐写技术相关推荐

  1. 推荐几篇图片隐写技术的文章

    这几天了解与学习图片隐写相关的技术点,在查找与阅读相关的文章后,选了三篇不错的文章推荐给大家. 说明:三篇文章是一个系列,专门讲图片隐写.内容全面,有原理介绍,还有实践操作指引,可所谓用心之作,很棒! ...

  2. javascript实现图片隐写

    什么是图片隐写? 发福利了,这是一张图片,这不仅仅是一张图片,如上图将一些信息隐藏在图片中的方式称之为图片隐写,但是有一点既然是隐写,那么肯定是悄悄的写, 图片还是原来的图片,只是里面隐藏了其他的信息 ...

  3. CTF学习之MISC之图片隐写与文档隐写

    CTF学习之MISC之图片隐写 隐写术概述 图片隐写技术 图片EXIF信息隐写 图片LSB低位隐写 隐写术(Stega) 隐写术(Steganography,简写Stega) 一门关于信息隐藏的技巧与 ...

  4. 【安全技术揭秘系列】探索图片隐写的奥秘

    什么是隐写?由于我们识别声音或图片的能力有限,因此稍微改动信息的某字节位的数据是不会影响我们识别声音或图片的.举个最通俗的例子,古人的藏头诗就是隐写的一种方式: 而CTF图片隐写术就是利用图片来隐藏一 ...

  5. 网络安全培训小白入门课,从buu到红帽的图片隐写

    图片隐写是MISC中的一部分,雨笋教育小编给小白从BUU中找到入门MISC之图片隐写,分享给大家 恢复黑白图片 buuoj 静静听这么好听的歌 由于网上wp只给了代码而且函数非常吓人,因此写了一个新手 ...

  6. 图片指定区域根据rgb值计算出对应的坐标地址_【水文】震惊!高考期间,这位学生居然能通过图片隐写实现文字通信!...

    图片隐写术,是一种将信息藏在图片中的技术.这个技术的前景非常广阔,在网络安全.神经网络对抗攻击等都有一定应用. 2020年7月10日,我开发出图片隐写工具--TPEncoder v1.0.2,可以将海 ...

  7. 【LSB】图片隐写文档大纲

    第一章 绪论 1.1研究背景 1.2研究意义 1.3主要工作 第二章 图片隐写和LSB算法 2.1关于图片隐写术 2.2LSB算法 第三章 系统设计与实现 3.1图像的加载 3.2文本的预编码 3.3 ...

  8. 图片隐写 放大放大再放大_放大结论

    图片隐写 放大放大再放大 重点 (Top highlight) A conversation about Zoom, security, and privacy in these times of s ...

  9. python图片隐写_Lsb图片隐写

    前言 在刚刚过去的网鼎杯第一场比赛中,做到了一道杂项题是关于lsb隐写的.LSB全称为 least significant bit,是最低有效位的意思.Lsb图片隐写是基于lsb算法的一种图片隐写术, ...

  10. linux隐写文件剥离,杂项的基本解题思路(1)——文件操作隐写、图片隐写

    文件操作隐写 图片隐写 压缩文件处理 流量取证技术 文章本来是分成4部分的,但是前两部分何在一起写了也就没有分开,所以干脆就只分了两部分 文件基本类型的识别 一.kail 下 file 文件名 原理就 ...

最新文章

  1. Python最会变魔术的魔术方法,我觉得是它
  2. 如何测试tomcat安装成功
  3. GO语言实现RSA 加密和解密的实现
  4. HTML5 audio 标签-在html中定义声音的标签
  5. html定义字体纵向对齐,HTML5 Canvas的文本如何实现垂直对齐
  6. 数据库实验三 SQL查询数据
  7. Error loading native library: libnjni9.so.的解决办法
  8. java线程唤醒与等待_Java线程的等待与唤醒
  9. 下载丨2020 PG亚洲大会(PPT汇总)
  10. 深入理解javascript作用域系列第三篇
  11. oracle备份恢复学习
  12. Strtus2标签s:url
  13. 鲁棒控制——线性矩阵不等式处理(俞立)(1)
  14. 【转载】扫描渗透等工具介绍
  15. 柔性制造物料抓取及加工系统设计
  16. 电脑通话有回音解决方案 使用电脑通话时有回音(可以听到对方电脑中自己说话的声音)电脑通话回音解决方案【以Thinkpad Win10系统为例】
  17. 学习Linux内核内存管理要看的布局图
  18. OpenCV中Viz模块的安装(VS2015)
  19. a16z合伙人Chris Dixon:DeFi和NFT之后的下一波区块链应用浪潮可能是这些
  20. 归并排序---------数构

热门文章

  1. i排版html居中,i排版-i排版官网:微信公众号文章编辑软件-禾坡网
  2. python自动排版_你熟悉Python的代码规范吗?如何一键实现代码排版
  3. 许小年:企业家精神的衰落与重振
  4. 清除dell服务器面板告警信息,DELL面板告警日志
  5. 数字中国城市巡礼之枣庄:大数据时代的微缩盛宴!
  6. wps excel 表格给一列数据添加相同的内容的方法
  7. LaTeX调整页眉宽度适应文本
  8. PostgreSQL DBA(63) - Extension(pg_stat_statements)
  9. 上交计算机就业报告,上海交通大学计算机研究生去向及就业情况分析
  10. 了解Maven的<relativePath/>标签