{% extends "base.html" %} {% block title %}Legion{% endblock %} {% block content %}
{% set credential_capture = snapshot.get('credential_capture', {}) %}

Project

{{ snapshot.project.name }}

Type: {{ "temporary" if snapshot.project.is_temporary else "saved" }} Scheduler: {{ snapshot.scheduler.mode }} Engagement: {{ snapshot.scheduler.engagement_policy.preset_label if snapshot.scheduler.engagement_policy else snapshot.scheduler.goal_profile }} Preapproved Families: {{ snapshot.scheduler.preapproved_families_count }}

{{ snapshot.project.output_folder }}

{{ snapshot.project.running_folder }}

Action status: Idle

Workspace status: Idle

Decision Rationale

{{ snapshot.scheduler_rationale_feed | length }} recent items

{% if snapshot.scheduler_rationale_feed %} {% for entry in snapshot.scheduler_rationale_feed %}

{{ entry.host_ip if entry.host_ip else "Project-wide" }}{% if entry.port %}:{{ entry.port }}{% endif %}{% if entry.protocol %}/{{ entry.protocol }}{% endif %}

{{ entry.headline }}
{{ entry.timestamp }}
{% if entry.tags %} {% endif %}

{{ entry.summary }}

{% if entry.details %}
{% for detail in entry.details %}
{{ detail }}
{% endfor %}
{% endif %}
{% endfor %} {% else %}

Scheduler rationale will appear here as tools are ranked, suppressed, and executed.

{% endif %}
Hosts {{ snapshot.summary.hosts }}
Open Ports {{ snapshot.summary.open_ports }}
Services {{ snapshot.summary.services }}
Running Jobs {{ snapshot.summary.running_processes }}
Finished Jobs {{ snapshot.summary.finished_processes }}
Processes {{ snapshot.processes | length }}
ID Name Target Status % ETA Actions

Credential Capture

{{ credential_capture.get('capture_count', 0) }} captures | {{ credential_capture.get('unique_hash_count', 0) }} unique hashes

Responder

{{ credential_capture.get('responder', {}).get('session', {}).get('status', 'Idle') }}

Interface: {{ credential_capture.get('responder', {}).get('config', {}).get('interface_name', '') or 'not configured' }}

ntlmrelayx

{{ credential_capture.get('ntlmrelayx', {}).get('session', {}).get('status', 'Idle') }}

Target: {{ credential_capture.get('ntlmrelayx', {}).get('config', {}).get('target', '') or credential_capture.get('ntlmrelayx', {}).get('config', {}).get('targets_file', '') or 'not configured' }}

Recent Captures

Latest observed hashes and credentials.

{% if credential_capture.get('recent_captures') %} {% for capture in credential_capture.get('recent_captures', []) %}
{{ capture.get('username', '') or 'unknown-user' }} {{ capture.get('source', '') or capture.get('tool', '') }} {{ capture.get('capturedAt', '') }}
{% endfor %} {% else %}

No captured credentials yet.

{% endif %}

Graph Workspace

0 nodes shown | 0 edges shown

Graph status: Idle

Hosts

{{ snapshot.hosts | length }}

IP Hostname Status OS Categories Open Ports

Services

all hosts

{{ snapshot.services | length }}

Host Detail

Port Protocol State Service Product Banner Screenshot
Script DB ID Script ID Output Action
CVE ID Name Severity Product URL Action

Device Categories

0

Technologies

0

Name Version CPE Evidence

Findings

0

Severity Title CVE CVSS Evidence

Manual Tests

0

Why Command Scope Note

Analysis Status

Screenshots

0

Dangerous Action Approvals

{{ snapshot.scheduler_approvals | length }}

ID Target Action Risk & Policy Planner Actions
{% endblock %}