前言
GetPDF-Malware Analysis的闯关过程(有什么不同的思路也可以分享和交流)
准备工具
GetPDF:Malicious-Portable.zip - 蓝奏云
涉及工具:wireshark,PDF-TOOL,scdbg,PDFStreamDumper
解题思路
1、How many URL path are involved in this incident?
如题,通过统计-->HTTP-->请求,来筛选How many URL path
可以看出有7个URL,但是不对(注意:虽然总数是7个,但是有两个是一样的,算一个)
2、What is the URL which contains the JS code?
先筛选http协议,再通过追踪流-->HTTP流,来查看请求内容
依题:contains the JS code:
3、What is the URL hidden in the JS code?
如上图,已经确认js code,可以通过浏览器进行调试
注意:复制<script>内的js code
4、What is the MD5 hash of the PDF file contained in the packet?
上题可知URL是getpdf.php,通过HTTP数据流可知,访问getpdf.php-->302-->fcexploit.pdf,然后下载了一个PDF文件
注意:不要直接复制数据流里面的字段,和真实的有差距
方法一:可以通过WireShark的导出,路径:File-->Export Objects-->HTTP,直接save,就是原文件
Linux环境直接通过:md5sum获取MD5值
Windows可以通过VirusTotal 来识别文件信息
方法二:使用NetworkMiner导入pcap包
5、How many object are contained inside the PDF file?
依题可知:需要统计PDF文件中的某些关键字, 可以用两种工具:(pdfid.py (PDF-tools))(PDFStreamDumper)
方法一:使用pdfid.py
方法二: 使用pdfstreamdumper工具
6、How many filtering schemes are used for the object streams?
依题可知:需要filer scheme,可以用两种工具:(pdf-parser.py (PDF-tools))(PDFStreamDumper)
方法一:使用pdf-parser.py
方法二:使用pdfstreamdumper工具
7、What is the number of the 'object stream' that might contain malicious JS code?
依题可知:找哪个object stream中有contain js code,
方法一:使用pdf-parser.py(命令:python pdf-parser.py fcexploit.pdf)
方法二:使用pdfstreamdumper工具
注意:这里展示了js code,但是指向的是5并不是4本身
8、Analyzing the PDF file. What 'object-streams' contain the JS code responsible for executing the shellcodes? The JS code is divided into two streams. Format: two numbers separated with ','. Put the numbers in ascending order
依题可知:需要找到JS code中executing the shellcodes的object-streams,由6问可知有4个object-streams,通过pdf-parser.py导出js code
注意:使用python3会报错,如下:
使用python2进行导出,其余的是一样的(注意在虚拟机环境并关闭防护)
通过查看ojb5中的js code,可以发现替换U_155bf62c9aU_7917ab39为空,而字段存在于ojb10中,替换后输出如下图:
如图,同样的方式替换ojb7和ojb9
把这两个文档拼接起来然后HEX输出(注意题目给出flag的顺序要求)
9、The JS code responsible for executing the exploit contains shellcodes that drop malicious executable files. What is the full path of malicious executable files after being dropped by the malware on the victim machine?
如上图可知,使用scdbg工具对shellcode analysis
注意:这一问我卡了一天,回过头才发现是个很简单的问题(第一次做,可能是比较菜)
如果出现(4010e8 opcode 62 not supported,401071 error accessing 0x00000000 not mapped)可以留言
10、The PDF file contains another exploit related to CVE-2010-0188. What is the URL of the malicious executable that the shellcode associated with this exploit drop?
回到wireshark,可以看到PDF下面malicious executable
11、How many CVEs are included in the PDF file?
结合9和10题就可知
总结
1.这个PCAP分析还是有很多有意义的地方,一环套一环
2.收到任何可以的邮件/文件都不要随便去点击,验清来源