Skip to main content
ClaudeWave
Skill15.5k repo starsupdated 11d ago

analyzing-kubernetes-audit-logs

This skill provides Python code to parse Kubernetes API server audit logs in JSON lines format and detect security incidents including unauthorized pod access, secret enumeration, privilege escalation through role bindings, and privileged container creation. Use it when investigating suspected Kubernetes security breaches, building threat detection rules, or validating security monitoring coverage for container environments.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/mukul975/Anthropic-Cybersecurity-Skills /tmp/analyzing-kubernetes-audit-logs && cp -r /tmp/analyzing-kubernetes-audit-logs/skills/analyzing-kubernetes-audit-logs ~/.claude/skills/analyzing-kubernetes-audit-logs
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Analyzing Kubernetes Audit Logs


## When to Use

- When investigating security incidents that require analyzing kubernetes audit logs
- When building detection rules or threat hunting queries for this domain
- When SOC analysts need structured procedures for this analysis type
- When validating security monitoring coverage for related attack techniques

## Prerequisites

- Familiarity with container security concepts and tools
- Access to a test or lab environment for safe execution
- Python 3.8+ with required dependencies installed
- Appropriate authorization for any testing activities

## Instructions

Parse Kubernetes audit log files (JSON lines format) to detect security-relevant
events including unauthorized access, privilege escalation, and data exfiltration.

```python
import json

with open("/var/log/kubernetes/audit.log") as f:
    for line in f:
        event = json.loads(line)
        verb = event.get("verb")
        resource = event.get("objectRef", {}).get("resource")
        user = event.get("user", {}).get("username")
        if verb == "create" and resource == "pods/exec":
            print(f"Pod exec by {user}")
```

Key events to detect:
1. pods/exec and pods/attach (shell into containers)
2. secrets access (get/list/watch)
3. clusterrolebindings creation (RBAC escalation)
4. Privileged pod creation
5. Anonymous or system:unauthenticated access

## Examples

```python
# Detect secret enumeration
if verb in ("get", "list") and resource == "secrets":
    print(f"Secret access: {user} -> {event['objectRef'].get('name')}")
```