Add deaddeck: real interactive SSH entry-point machine

Introduces the 'real_ssh' service plugin backed by a genuine OpenSSH
server (not cowrie), and the 'deaddeck' archetype that uses it. The
container ships with a lived-in Linux environment and a deliberately
weak root:admin credential to invite exploitation.

- templates/real_ssh/: Dockerfile + entrypoint (configurable via env)
- decnet/services/real_ssh.py: BaseService plugin, service_cfg supports
  password and hostname overrides
- decnet/archetypes.py: deaddeck archetype added
- tests/test_real_ssh.py: 17 tests covering registration, compose
  fragment structure, overrides, and archetype

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-04 13:42:19 -03:00
parent 9219bf432b
commit 7aff040579
5 changed files with 269 additions and 0 deletions

View File

@@ -144,6 +144,14 @@ ARCHETYPES: dict[str, Archetype] = {
preferred_distros=["ubuntu22", "debian"],
nmap_os="linux",
),
"deaddeck": Archetype(
slug="deaddeck",
display_name="Deaddeck (Entry Point)",
description="Internet-facing entry point with real interactive SSH — no honeypot emulation",
services=["real_ssh"],
preferred_distros=["debian", "ubuntu22"],
nmap_os="linux",
),
}