如何在图像文件中找到隐藏文件(Jpg/Gif/Png)

Jay*_*son 7 python java image-processing hidden-files jmagick

我找到了一个链接,显示如何隐藏图像文件中的文件数量:http://lifehacker.com/282119/hide-files-inside-of-jpeg-images更多关于检测的讨论:http:// ask .metafilter.com/119943 /如何对检测-RARsEXEs隐藏式,JPG图片

我试图找出什么是以编程方式检测图像文件是否隐藏在其中的其他文件的好方法?我应该尝试解压缩文件,看看是否有其他文件出来?

我没有以编程方式绑定,但在JVM上运行良好的东西会很棒.

更新

一种方法:

会不会像这样的工作(由metafilter上的某人建议)

$ cat orig.jpg test.zip > stacked.jpg
$ file stacked.jpg 
stacked.jpg: JPEG image data, JFIF standard 1.01
$ convert stacked.jpg stripped.jpg  # this is an ImageMagick command
$ ls -l
 11483 orig.jpg
322399 stacked.jpg
 11484 stripped.jpg
310916 test.zip
Run Code Online (Sandbox Code Playgroud)

我可以使用JMagick这种方法.

Mar*_*som 0

要查看文件中是否附加了任何元数据或其他信息,您可以对图像进行解码并重新编码,以查看大小是否显着减小。对于 JPEG 文件,您可能需要执行无损旋转之类的操作来保留原始 DCT 数据,否则文件大小可能会因编码差异而发生变化。

较小的结果并不能证明隐藏数据,但它表明您需要仔细查看。

您从未透露过提出这个问题的动机,但我猜测这是关于将图像下载到公共网站。在这种情况下,您确实不应该关心提交的图像是否包含无关数据,您应该只清理输入。解码/重新编码过程对此来说是完美的。

  • @mmgp,我在问题中没有看到任何需要破译隐藏内容的内容。这只是确定伪装成有效图像文件的文件中是否存在隐藏内容的问题。创建一个“不是”有效图像的文件也超出了问题的范围。你对这个问题的误解近乎恶搞。 (3认同)