Agent skill

Analyzing Malicious PDF With Peepdf

by mukul975 in mukul975/Anthropic-Cybersecurity-Skills

Perform static analysis of malicious PDF documents using peepdf, pdfid, and pdf-parser to extract embedded JavaScript, shellcode, and suspicious objects.

Apache-2.0Auto-check passedDocuments & Office

Install Analyzing Malicious PDF With Peepdf

skills CLI
$ npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill analyzing-malicious-pdf-with-peepdf -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mukul975/Anthropic-Cybersecurity-Skills analyzing-malicious-pdf-with-peepdf --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mukul975/Anthropic-Cybersecurity-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/analyzing-malicious-pdf-with-peepdf .claude/skills/analyzing-malicious-pdf-with-peepdf && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
analyzing-malicious-pdf-with-peepdf
GitHub stars
34k
Token cost
~799 tokens
SKILL.md length
255 words
Files
4 (incl. scripts, references)
Skills in repo
644
Repo updated
First seen
Licence
Apache-2.0

At a glance

Perform static analysis of malicious PDF documents using peepdf, pdfid, and pdf-parser to extract embedded JavaScript, shellcode, and suspicious objects.

  • Works in 7 steps: Triage with pdfid: Scan PDF for… → Interactive Analysis: Open PDF in peepdf… → Identify Suspicious Objects: Locate… → …
  • Triaging a suspicious PDF attachment from a phishing email
  • SKILL.md covers When to Use, Prerequisites, Workflow and Key Concepts, plus 2 more sections
  • Runs Python scripts from its folder

What it does

Analyzing Malicious PDF With Peepdf is an agent skill from mukul975/Anthropic-Cybersecurity-Skills. Perform static analysis of malicious PDF documents using peepdf, pdfid, and pdf-parser to extract embedded JavaScript, shellcode, and suspicious objects. Use when triaging a suspicious PDF attachment from a phishing email, analyzing a PDF-based exploit document, or building detection signatures for weaponized PDF threats.

Its SKILL.md is about 800 tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts and reference files (for example `references/api-reference.md` and `scripts/agent.py`).

It sits in Documents & Office, covering PDF and Static analysis and SAST. It works with JavaScript. The repository describes itself as: 817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF & MITRE F3 (Fight Fraud) · agentskills.io…. The licence is Apache-2.0.

When your agent uses it

  • Triaging a suspicious PDF attachment from a phishing email
  • Analyzing a PDF-based exploit document
  • Building detection signatures for weaponized PDF threats

Example prompts

  • “/analyzing-malicious-pdf-with-peepdf”

Requirements

  • Python 3

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. Triage with pdfid: Scan PDF for suspicious keywords (/JS, /JavaScript, /OpenAction, /Launch, /EmbeddedFile).
  2. Interactive Analysis: Open PDF in peepdf interactive mode to explore object structure.
  3. Identify Suspicious Objects: Locate objects containing JavaScript, streams, or encoded data.
  4. Extract Content: Dump suspicious streams and decode filters (FlateDecode, ASCIIHexDecode).
  5. Deobfuscate JavaScript: Analyze extracted JS for shellcode, heap sprays, or exploit code.
  6. Check VirusTotal: Use peepdf vtcheck to cross-reference file hash with AV detections.
  7. Generate IOCs: Extract URLs, domains, hashes, and shellcode signatures.

What it can do on your machine

Read from SKILL.md and the folder at commit 54a7988. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Analyzing Malicious PDF With Peepdf loads about 799 tokens when it runs, and up to ~1.6k if it reads all its reference files. Until then it costs about 90 tokens; SKILL.md has 255 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~90
When it runs · the whole SKILL.md, loaded when a task matches
~799
With references · SKILL.md plus every file in references/, read only if the agent opens them
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from mukul975/Anthropic-Cybersecurity-Skills at commit 54a7988, republished under its Apache-2.0 licence (© mukul975). 255 words, ~799 tokens.

Download SKILL.mdSave it as .claude/skills/analyzing-malicious-pdf-with-peepdf/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
analyzing-malicious-pdf-with-peepdf
description
Perform static analysis of malicious PDF documents using peepdf, pdfid, and pdf-parser to extract embedded JavaScript, shellcode, and suspicious objects. Use when triaging a suspicious PDF attachment from a phishing email, analyzing a PDF-based exploit document, or building detection signatures for weaponized PDF threats.
domain
cybersecurity
subdomain
malware-analysis
tags
malware-analysis, pdf, peepdf, pdfid, pdf-parser, static-analysis, reverse-engineering, dfir
version
1.0
author
mahipal
license
Apache-2.0
nist_csf
DE.AE-02, RS.AN-03, ID.RA-01, DE.CM-01
mitre_attack
T1204.002, T1059.007, T1027, T1106

Analyzing Malicious PDF with peepdf

When to Use

  • When triaging suspicious PDF attachments from phishing emails
  • During malware analysis of PDF-based exploit documents
  • When extracting embedded JavaScript, shellcode, or executables from PDFs
  • For forensic examination of weaponized document artifacts
  • When building detection signatures for PDF-based threats

Prerequisites

  • Python 3.8+ with peepdf-3 installed (pip install peepdf-3)
  • pdfid.py and pdf-parser.py from Didier Stevens suite
  • Isolated analysis environment (VM or sandbox)
  • Optional: PyV8 for JavaScript emulation within peepdf
  • Optional: Pylibemu for shellcode analysis

Workflow

  1. Triage with pdfid: Scan PDF for suspicious keywords (/JS, /JavaScript, /OpenAction, /Launch, /EmbeddedFile).
  2. Interactive Analysis: Open PDF in peepdf interactive mode to explore object structure.
  3. Identify Suspicious Objects: Locate objects containing JavaScript, streams, or encoded data.
  4. Extract Content: Dump suspicious streams and decode filters (FlateDecode, ASCIIHexDecode).
  5. Deobfuscate JavaScript: Analyze extracted JS for shellcode, heap sprays, or exploit code.
  6. Check VirusTotal: Use peepdf vtcheck to cross-reference file hash with AV detections.
  7. Generate IOCs: Extract URLs, domains, hashes, and shellcode signatures.

Key Concepts

ConceptDescription
/OpenActionAutomatic action executed when PDF is opened
/JavaScript /JSEmbedded JavaScript code in PDF objects
/LaunchAction that launches external applications
/EmbeddedFileFile embedded within the PDF structure
FlateDecodezlib compression filter used to hide content
Object StreamsPDF objects stored in compressed streams

Tools & Systems

ToolPurpose
peepdf / peepdf-3Interactive PDF analysis with JS emulation
pdfid.pyQuick triage scanning for suspicious keywords
pdf-parser.pyDeep object-level PDF parsing
VirusTotalHash lookup and AV detection cross-reference
CyberChefDecode and transform extracted payloads

Output Format

Analysis Report: PDF-MAL-[DATE]-[SEQ]
File: [filename.pdf]
SHA-256: [hash]
Suspicious Keywords: [/JS, /OpenAction, etc.]
Objects with JavaScript: [Object IDs]
Extracted URLs: [List]
Shellcode Detected: [Yes/No]
Embedded Files: [Count and types]
VirusTotal Detections: [X/Y engines]
Risk Level: [Critical/High/Medium/Low]

© mukul975, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts, references) in skills/analyzing-malicious-pdf-with-peepdf of mukul975/Anthropic-Cybersecurity-Skills.

  • SKILL.md
  • LICENSE
  • references/api-reference.md
  • scripts/agent.py

Open the folder on GitHubat commit 54a7988

Compare with similar skills

Analyzing Malicious PDF With Peepdf next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Analyzing Malicious PDF With Peepdf compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Analyzing Malicious PDF With Peepdf this skillmukul975/Anthropic-Cybersecurity-Skills34k—~799Automated safety check: PassApache-2.0
PDF Toolkitborghei/Claude-Skills891—~1.4kAutomated safety check: PassMIT
Jev SEOAgriciDaniel/jev-seo543—~2.5kAutomated safety check: NotesMIT
PDF Extraction Fallback 80956bHKUDS/OpenSpace7.8k—~1.8kAutomated safety check: PassMIT
PDF Extraction FallbacksHKUDS/OpenSpace7.8k—~1.8kAutomated safety check: PassMIT
PDF Extraction Fallbacks 7d54a9HKUDS/OpenSpace7.8k—~2kAutomated safety check: PassMIT

Similar skills

  • PDF Toolkit

    borghei/Claude-Skills

    Audit PDF files for metadata leakage, page count, encryption, JavaScript, embedded files, and version.

    891 GitHub stars~1.4k tokensUpdated 3 days ago
    Documents & OfficeAuto-check passed
  • Jev SEO

    AgriciDaniel/jev-seo

    Full live SEO audit of any website from its homepage URL, powered by Jev (TypeSafe's System One model).

    543 GitHub stars~2.5k tokensUpdated 19 days ago
    Documents & OfficeAuto-check: notes
  • Multi-fallback PDF download and text extraction with early failure detection

    7.8k GitHub stars~1.8k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check passed
  • Multi-fallback PDF/text extraction with early failure detection and sequential tool fallbacks

    7.8k GitHub stars~1.8k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check passed
  • Multi-fallback PDF extraction with sequential approaches and early failure detection

    7.8k GitHub stars~2k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check passed
  • Edit PDF

    SimplePDF/simplepdf-embed

    Edit and fill PDF documents. An agent skill from SimplePDF/simplepdf-embed.

    407 GitHub stars~1.5k tokensUpdated yesterday
    Documents & OfficeAuto-check passed

More from mukul975/Anthropic-Cybersecurity-Skills

All 644 skills in this repo
  • Campaign Attribution Evidence Analysis

    mukul975/Anthropic-Cybersecurity-Skills

    Weighs infrastructure, TTP, malware code and timing evidence with the Diamond Model and competing hypotheses to reach a confidence-rated attribution.

    34k GitHub stars~2.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Go Malware Analysis in Ghidra

    mukul975/Anthropic-Cybersecurity-Skills

    Walks through reverse engineering Go-compiled malware in Ghidra: parsing buildinfo and pclntab, recovering stripped function names and extracting dependencies.

    34k GitHub stars~2.8k tokensUpdated 1 mo ago
    Auto-check passed
  • LNK and Jump List Forensics

    mukul975/Anthropic-Cybersecurity-Skills

    Guides forensic analysis of Windows LNK shortcut files and Jump Lists with LECmd, JLECmd and manual parsing to show file access and program execution.

    34k GitHub stars~2.8k tokensUpdated 1 mo ago
    Auto-check passed
  • Malware Persistence Analysis with Autoruns

    mukul975/Anthropic-Cybersecurity-Skills

    Hunts Windows malware persistence with Sysinternals Autoruns, covering run keys, services, scheduled tasks and drivers, with baseline comparison.

    34k GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • NTFS MFT Deleted File Recovery

    mukul975/Anthropic-Cybersecurity-Skills

    Guides a Windows forensic examination of the NTFS Master File Table to recover deleted-file evidence, build timelines and spot timestomping.

    34k GitHub stars~2.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Network Covert Channel Analysis

    mukul975/Anthropic-Cybersecurity-Skills

    Detects DNS tunneling, ICMP exfiltration and HTTP-based covert channels in packet captures and DNS logs when hunting for hidden command-and-control traffic.

    34k GitHub stars~2k tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Analyzing Malicious PDF With Peepdf

What does Analyzing Malicious PDF With Peepdf do?

Perform static analysis of malicious PDF documents using peepdf, pdfid, and pdf-parser to extract embedded JavaScript, shellcode, and suspicious objects. Analyzing Malicious PDF With Peepdf is an agent skill from mukul975/Anthropic-Cybersecurity-Skills. Perform static analysis of malicious PDF documents using peepdf, pdfid, and pdf-parser to extract embedded JavaScript, shellcode, and suspicious objects.

When should I use Analyzing Malicious PDF With Peepdf?

Analyzing Malicious PDF With Peepdf fits situations like: triaging a suspicious PDF attachment from a phishing email; analyzing a PDF-based exploit document; building detection signatures for weaponized PDF threats.

How do I install Analyzing Malicious PDF With Peepdf in Claude Code?

Run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill analyzing-malicious-pdf-with-peepdf -a claude-code`. Or copy the skill folder (skills/analyzing-malicious-pdf-with-peepdf in mukul975/Anthropic-Cybersecurity-Skills) into .claude/skills/analyzing-malicious-pdf-with-peepdf in your project. Claude Code loads it when a task matches its description.

How do I install Analyzing Malicious PDF With Peepdf in Codex?

Run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill analyzing-malicious-pdf-with-peepdf -a codex`. Or copy the skill folder (skills/analyzing-malicious-pdf-with-peepdf in mukul975/Anthropic-Cybersecurity-Skills) into .agents/skills/analyzing-malicious-pdf-with-peepdf in your project. Codex loads it when a task matches its description.

Can I use Analyzing Malicious PDF With Peepdf in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill analyzing-malicious-pdf-with-peepdf -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/analyzing-malicious-pdf-with-peepdf, .gemini/skills/analyzing-malicious-pdf-with-peepdf, .github/skills/analyzing-malicious-pdf-with-peepdf and .opencode/skills/analyzing-malicious-pdf-with-peepdf in your project.

What does Analyzing Malicious PDF With Peepdf need to run?

Going by SKILL.md and its folder, Analyzing Malicious PDF With Peepdf needs Python for the scripts in its folder. Our summary lists: Python 3.

Does Analyzing Malicious PDF With Peepdf access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Analyzing Malicious PDF With Peepdf safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Analyzing Malicious PDF With Peepdf use?

Analyzing Malicious PDF With Peepdf is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Analyzing Malicious PDF With Peepdf use?

About 799 tokens (SKILL.md is roughly 3.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 830 tokens, read only when the agent opens those files.

What are the alternatives to Analyzing Malicious PDF With Peepdf?

Skills that share tags, products or a category with Analyzing Malicious PDF With Peepdf: PDF Toolkit (borghei/Claude-Skills, 891 stars), Jev SEO (AgriciDaniel/jev-seo, 543 stars), PDF Extraction Fallback 80956b (HKUDS/OpenSpace, 7.8k stars) and PDF Extraction Fallbacks (HKUDS/OpenSpace, 7.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Analyzing Malicious PDF With Peepdf?

mukul975 (a GitHub user) maintains it in mukul975/Anthropic-Cybersecurity-Skills, which has 34,116 GitHub stars. The repository holds 644 skills in this directory. The repository was last updated on August 31, 2026.

Source: mukul975/Anthropic-Cybersecurity-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.