MacroHard WeakEdge is a forensics puzzle worth 60 points.
The description is as follows:
I've hidden a flag in this file. Can you find it? Forensics is fun.pptm
Provided is a PowerPoint file Forensics is fun.pptm:
% file Forensics\ is\ fun.pptm Forensics is fun.pptm: Microsoft PowerPoint 2007+
First, I tried to dump macros out of this using olevba
PS C:\> olevba 'Forensics is fun.pptm'
olevba 0.60 on Python 3.9.6 - http://decalage.info/python/oletools
===============================================================================
FILE: Forensics is fun.pptm
Type: OpenXML
WARNING For now, VBA stomping cannot be detected for files in memory
-------------------------------------------------------------------------------
VBA MACRO Module1.bas
in file: ppt/vbaProject.bin - OLE stream: 'VBA/Module1'
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sub not_flag()
Dim not_flag As String
not_flag = "sorry_but_this_isn't_it"
End Sub
No suspicious keyword or IOC found.
Hrm.. Its probably elsewhere in the file. I blew this PowerPoint file apart with unzip and noticed this file:
inflating: ppt/slideMasters/hidden
The contents of this file appears to be base64 encoded:
% cat ppt/slideMasters/hidden Z m x h Z z o g c G l j b 0 N U R n t E M W R f d V 9 r b j B 3 X 3 B w d H N f c l 9 6 M X A 1 f Q
Decoding this in the terminal was easy:
echo "Z m x h Z z o g c G l j b 0 N U R n t E M W R f d V 9 r b j B 3 X 3 B w d H N f c l 9 6 M X A 1 f Q" |tr -d ' ' |base64 -d
The command above yielded the flag.
Pingback: picoCTF Writeups – DMFR SECURITY