insecure-deserialization

Tests applications for insecure deserialization vulnerabilities across Java, PHP, .NET, Python, and other languages.

Updated Jun 26, 2026
One-click install
npx skills add https://github.com/brukal001/brukal --skill insecure-deserialization-brukal001
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: insecure-deserialization
Source: https://github.com/brukal001/brukal/tree/main/skills/claude-red/web/offensive-deserialization
Command: npx skills add https://github.com/brukal001/brukal --skill insecure-deserialization-brukal001

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Security testers need a structured methodology to find and exploit insecure deserialization flaws, which are easy to miss because serialized data hides in cookies, headers, message queues, and file uploads across many language-specific formats. ## Core Features & Use Cases - Multi-Language Sink Identification: Recognize serialized data signatures for PHP, Java, .NET, Python, Node.js, Golang, Ruby, and Rust, including magic bytes like rO0 and ac ed 00 05. - Exploitation Guidance: Apply gadget chain tools such as ysoserial, phpggc, and ysoserial.net, plus magic method and type confusion abuse techniques. - Modern Attack Surface Coverage: Test deserialization in Kubernetes admission webhooks, Kafka/RabbitMQ consumers, serverless functions, and CI/CD pipelines. - Use Case: During a web application pentest you intercept a Base64 cookie starting with rO0; use this checklist to confirm Java serialization, generate a ysoserial payload, and verify impact non-destructively. ## Quick Start Use the insecure deserialization skill to analyze this intercepted request for serialized objects and suggest safe verification steps.

Frequently Asked Questions about insecure-deserialization

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I identify insecure deserialization vulnerabilities in an application?▼

Look for serialized data signatures in user-controlled input: Base64 blobs starting with rO0 or hex ac ed 00 05 for Java, O:<len>:"Class" for PHP, AAEAAAD for .NET, and pickle opcodes for Python. Check cookies, headers, file uploads, and message queues.

What tools are used for Java deserialization exploitation?▼

ysoserial generates payloads for over 30 Java gadget chains including Apache Commons Collections and Spring. marshalsec and Burp Deserialization Scanner also help detect and exploit vulnerable ObjectInputStream.readObject sinks.

Can deserialization attacks affect message queues and serverless functions?▼

Yes. Kafka, RabbitMQ, and Redis consumers that call pickle.loads or equivalent on queue messages are exploitable if an attacker gains producer access. AWS Lambda and Cloud Functions deserializing S3 or SQS event payloads face similar risks.

How do I prevent insecure deserialization vulnerabilities?▼

Avoid deserializing untrusted input and prefer JSON with strict schemas. Verify integrity with HMAC before deserializing, disable polymorphic typing, use allowlists like Java's ObjectInputFilter, and replace pickle with yaml.safe_load in Python.

Why do deserialization exploits run before application validation?▼

Magic methods and constructors such as __reduce__, readObject, and unserialize handlers execute during the deserialization process itself, before the application's business logic or validation code runs. This makes pre-validation integrity checks essential.