Skip to content

create honeypot #113

@dogancanbakir

Description

@dogancanbakir

Summary

Add honeypot functionality to vt that captures and logs all interactions with vulnerable environments for analysis and research purposes.

Motivation

Security researchers and educators often want to:

  • Study attacker behavior and techniques
  • Collect attack samples and payloads
  • Understand exploitation patterns
  • Generate threat intelligence data

Proposed Features

1. Logging Infrastructure

Log Type Description
HTTP Requests Full request/response logging (headers, body, params)
Network Traffic TCP/UDP connection logs, payload capture
Command Execution Shell commands attempted via RCE vulnerabilities
File Access File read/write attempts, uploads
Authentication Login attempts, credentials used

2. CLI Interface

# Start a template in honeypot mode
vt start --id vt-dvwa --honeypot

# Start with custom log directory
vt start --id vt-dvwa --honeypot --log-dir /var/log/vt-honeypot

# View honeypot logs
vt logs --id vt-dvwa

# Export logs in various formats
vt logs --id vt-dvwa --format json > attacks.json
vt logs --id vt-dvwa --format csv > attacks.csv

3. Log Storage Options

  • File-based: JSON/CSV files per session
  • SQLite: Local database for querying
  • Syslog: Forward to external SIEM systems

4. Log Format (JSON)

{
  "timestamp": "2025-01-06T10:30:00Z",
  "template_id": "vt-dvwa",
  "session_id": "abc123",
  "event_type": "http_request",
  "source_ip": "192.168.1.100",
  "data": {
    "method": "POST",
    "path": "/vulnerabilities/sqli/",
    "headers": {...},
    "body": "id=1' OR '1'='1",
    "response_code": 200
  }
}

5. Template Configuration

Add optional honeypot config to index.yaml:

honeypot:
  enabled: true
  log_level: detailed  # minimal, standard, detailed
  capture:
    - http
    - network
    - commands
  alerts:
    - type: slack
      webhook: ${SLACK_WEBHOOK}

Implementation Considerations

  • Privacy: Add warnings about legal implications of running honeypots
  • Performance: Logging should be non-blocking
  • Storage: Implement log rotation and size limits
  • Security: Ensure honeypot isolation from host system

Use Cases

  1. Education: Students can see their own attack attempts logged
  2. Research: Collect real-world attack patterns
  3. CTF: Track participant progress and techniques
  4. Threat Intel: Generate IOCs from captured payloads

Related

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions