JPEG 图片篡改检测

voidshine · 2024-10-17 17:02:48 · 433 次点击
我写一个简单的 JPEG 图片防篡改工具. 希望大家帮我看看有没有漏洞可以钻.

主要思路是对 JPEG 图片进行签名并将签名信息写入 EOI 文件尾, 若签名后的图片内容有任何的改动(不包括修改文件名), 则无法通过验证, 以此来检测该图片相较于签名前的图片是否有改动过.

项目已上传至[GitHub]( https://github.com/happy-shine/pixelguard)

```
$ pixelguard sign -i official.jpg  -o output_official.jpg                # 将签名信息写入图片尾部
JPEG file signature successful!

$ pixelguard verify output_official.jpg                        # 图片未被修改
This JPEG file has not been tampered with.

$ exiftool -Artist="happy-shine" output_official.jpg        # 修改 EXIF 信息(或修改像素点之类的操作)
    1 image files updated

$ pixelguard verify output_official.jpg                # 再次验证, 检测到图片内容被修改
Warning: This JPEG file has been tampered with!
```
举报· 433 次点击
登录 注册 站外分享
23 条回复  
vus520 初学 2024-10-17 17:30:10
截屏缩放裁剪呢?
hatw 小成 2024-10-17 17:36:39
比较 MD5 啥的不也一样?
alexsz 小成 2024-10-17 17:46:47
一时想不出有哪些应用场景
NoOneNoBody 小成 2024-10-17 17:55:23
EOI 就是 ffd9 之后吧,这些截了也不影响图片显示,不少图片存储的服务器是直接截了的,避免借传图片之名传不当信息
如果截了之后,如何自举?
iqoo 小成 2024-10-17 18:04:04
还以为利用水印信息存储签名呢
ltyj2003 小成 2024-10-17 18:06:08
人家篡改完重新生成个签名信息替换,阁下当如何应对?
yhnbgfd 初学 2024-10-17 18:11:00
一直在想有什么场景,
比如, 以后手机截图自带签名功能, 以后各种屏幕截图拿去验签一下就知道是真截的还是 p 的? 额, 如果我直接截屏 P 的图片阁下..额
Afcar 初学 2024-10-17 18:20:32
@ltyj2003 你说到点子上了
Yukineko 小成 2024-10-17 18:31:29
@voidshine #13 意识是只有在特定机器上校验才能通过?换一个机器就校验不了了?
123下一页
返回顶部