视觉画布设计
canvas-design
基于设计原则创作静态视觉作品,用于海报与品牌图形。
re-doc-malware【文档与办公】恶意文档分析:PDF/Office 武器化、宏链、文档漏洞利用、载荷提取。 触发词:恶意文档、钓鱼文档、PDF恶意、宏文档、docm、文档漏洞、恶意附件。
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
apt install pdf-parser pdfid(Kali 常预装;Debian/Ubuntu 仓库同名包)或 GitHub DidierStevens/DidierStevensSuite 源码运行;macOS: brew install pdf-parser / pippdf-parser --version(无则 python3 pdf_parser.py --help);pdfid.py sample.pdf 能输出对象计数apt install qpdf;macOS: brew install qpdfqpdf --versionqpdf --qdf --object-streams=disable in.pdf out.pdf),配合 -d dump 对照pip install oletools(oletools 内含 olevba、rtfobj、oleobj、msodde、oleid、mraptor 等)olevba --help;rtfobj --helpDidierStevens/DidierStevensSuite 取 oledump.py,需 pip install olefile 依赖;python3 oledump.py -s <流号> <文件> 按流转储)pip install xlmdeobfuscatorxlmdeobfuscator --helpapt install libreoffice / dnf install libreoffice;macOS: brew install --cask libreoffice;Windows: 官方安装包libreoffice --versionapt install p7zip-full;macOS: brew install sevenzip;Windows: 官方安装包7z --help按顺序执行;每步产物存档(路径 + sha256,见 [[re-triage]])。
文档类型识别:
file sample.pdf sample.docm sample.rtf
%PDF 头;Office 旧格式:CFB(OLE 复合文档,D0 CF 11 E0);OOXML:zip(PK);RTF:{\rtfPDF 静态分析:
pdfid.py sample.pdf # 对象计数,恶意特征速览
pdf-parser -f sample.pdf | head -50 # 对象树遍历(-f 经过 filter 解压流)
pdf-parser -s /JS sample.pdf # JavaScript 动作
pdf-parser -s /OpenAction sample.pdf # 打开即执行动作
pdf-parser -O sample.pdf # 解析对象流(ObjStm)内的对象
/JS(JavaScript 动作)、/OpenAction(打开触发)、/AA(附加动作,页级/文档级)、/Launch(外部程序)、/EmbeddedFile(嵌入文件)、/RichMedia(Flash 遗留)/JBIG2Decode(JBIG2 漏洞)、/RichMedia 等 CVE 对应结构——按结构特征(非版本号)对照已知利用模式qpdf --qdf --object-streams=disable 展开再看Office 宏提取:
olevba -c sample.docm > macro.txt # 提取宏源码(-c 只输出源码)
olevba --decode -c sample.docm > macro_decoded.txt # 自动解常见字符串混淆(--decode 自 oletools 0.24 起;源码内解码串显示用 --reveal)
olevba --deobf -c sample.docm # 表达式级去混淆(0.46+)
strings sample.docm | grep -iE 'DDEAUTO|http|powershell' | head
Document_Open / AutoOpen / AutoExec;Excel Workbook_Open / Auto_Open;表单控件/快捷键/自定义按钮触发也不少见DDEAUTO,较新 Word 默认禁用——旧版仍触发)、外部链接(/hyperlink)、OLE 嵌入对象(oleobj 提取后逐个分析)、Excel 4.0 XLM 宏表(xlmdeobfuscator)VBA stomping 时注意:实际执行的是 P-code 而非提取出的源码(见坑 2)RTF 分析:
rtfobj sample.rtf # 列出嵌入 OLE 对象与 CLSID
\'XX 十六进制转义混淆——先还原转义再查关键字\objdata)提取后按 OLE/CFB 分支继续;漏洞文档常见 \pict 内嵌数据模板注入与关系文件(OOXML):
7z l sample.docx | head -40
7z x sample.docx -oext/
grep -r 'TargetMode="External"' ext/word/_rels/ 2>/dev/null
document.xml.rels 中 attachedTemplate / externalLink 外部目标 = 远程模板注入载荷提取:
动态验证(沙箱):
/JS;原因——对象在 FlateDecode 压缩流或 ObjStm 内;对策——-f 强制解压、-O 展开对象流再查--decode/--reveal/--deobf 逐层解,[[re-script-deob]] 去混淆链Unblock-File(PowerShell)或删 Zone.Identifier ADS 后再开;检测型文档见坑 6/word/_rels 远程模板;对策——解包后检查全部 rels 文件(步骤 5)