Add Android forensics, IOC threat-intel DB, Compose companion; scrub secrets from configs
This commit is contained in:
@@ -1,39 +1,41 @@
|
||||
{% extends "base.html" %}
|
||||
{% block title %}Dashboard - AUTARCH{% endblock %}
|
||||
{% block title %}Command Overview — AUTARCH{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<div class="page-header">
|
||||
<h1>Dashboard</h1>
|
||||
<h1>Command Overview</h1>
|
||||
<div class="subtitle">{{ system.hostname }} · {{ system.platform }} · {{ system.arch }}</div>
|
||||
</div>
|
||||
|
||||
<div class="stats-grid">
|
||||
<div class="stat-card">
|
||||
<div class="stat-label">Modules</div>
|
||||
<div class="stat-value">{{ modules.get('total', 0) }}</div>
|
||||
<div class="kpis">
|
||||
<div class="kpi">
|
||||
<div class="l">Modules</div>
|
||||
<div class="n">{{ modules.get('total', 0) }}</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-label">LLM Backend</div>
|
||||
<div class="stat-value small">{{ llm_backend }}</div>
|
||||
<div class="kpi">
|
||||
<div class="l">LLM Backend</div>
|
||||
<div class="n" style="font-size:18px">{{ llm_backend|upper }}</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-label">Hostname</div>
|
||||
<div class="stat-value small">{{ system.hostname }}</div>
|
||||
<div class="kpi {% if not upnp_enabled %}warn{% endif %}">
|
||||
<div class="l">UPnP</div>
|
||||
<div class="n" style="font-size:18px">{{ 'ON' if upnp_enabled else 'OFF' }}</div>
|
||||
</div>
|
||||
<div class="stat-card">
|
||||
<div class="stat-label">Uptime</div>
|
||||
<div class="stat-value small">{{ system.uptime }}</div>
|
||||
<div class="kpi">
|
||||
<div class="l">Uptime</div>
|
||||
<div class="n" style="font-size:18px">{{ system.uptime }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sec">Categories · Quick Launch</div>
|
||||
<div class="category-grid">
|
||||
<a href="{{ url_for('defense.index') }}" class="category-card cat-defense">
|
||||
<h3>Defense</h3>
|
||||
<p>System hardening, audits, monitoring</p>
|
||||
<p>Hardening, audits, monitoring</p>
|
||||
<span class="badge">{{ modules.get('defense', 0) }} modules</span>
|
||||
</a>
|
||||
<a href="{{ url_for('offense.index') }}" class="category-card cat-offense">
|
||||
<h3>Offense</h3>
|
||||
<p>Penetration testing, Metasploit</p>
|
||||
<p>Pentesting, Metasploit</p>
|
||||
<span class="badge">{{ modules.get('offense', 0) }} modules</span>
|
||||
</a>
|
||||
<a href="{{ url_for('counter.index') }}" class="category-card cat-counter">
|
||||
@@ -43,12 +45,12 @@
|
||||
</a>
|
||||
<a href="{{ url_for('analyze.index') }}" class="category-card cat-analyze">
|
||||
<h3>Analyze</h3>
|
||||
<p>Forensics, file analysis</p>
|
||||
<p>Forensics, hex, hashes</p>
|
||||
<span class="badge">{{ modules.get('analyze', 0) }} modules</span>
|
||||
</a>
|
||||
<a href="{{ url_for('osint.index') }}" class="category-card cat-osint">
|
||||
<h3>OSINT</h3>
|
||||
<p>Reconnaissance, username search</p>
|
||||
<p>25,475 indexed sites</p>
|
||||
<span class="badge">{{ modules.get('osint', 0) }} modules</span>
|
||||
</a>
|
||||
<a href="{{ url_for('simulate.index') }}" class="category-card cat-simulate">
|
||||
@@ -58,36 +60,61 @@
|
||||
</a>
|
||||
<a href="{{ url_for('hardware.index') }}" class="category-card cat-hardware">
|
||||
<h3>Hardware</h3>
|
||||
<p>ADB, Fastboot, ESP32 flashing</p>
|
||||
<p>ADB, Fastboot, ESP32</p>
|
||||
<span class="badge">{{ modules.get('hardware', 0) }} modules</span>
|
||||
</a>
|
||||
<a href="{{ url_for('android_forensics.index') }}" class="category-card cat-counter">
|
||||
<h3>Android Forensics</h3>
|
||||
<p>Acquisition · IOC scanning</p>
|
||||
<span class="badge">new</span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="section">
|
||||
<h2>System Tools</h2>
|
||||
<table class="data-table">
|
||||
<thead><tr><th>Tool</th><th>Status</th></tr></thead>
|
||||
<tbody>
|
||||
<div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin-top:22px">
|
||||
<div>
|
||||
<div class="sec">Traffic 24h<span class="live"><span class="pulse"></span>Idle</span></div>
|
||||
<div class="spark" id="aos-dash-spark"></div>
|
||||
<div class="insight">
|
||||
<div class="ih"><span class="pulse"></span>AI Synthesis</div>
|
||||
HAL standing by. {{ modules.get('total', 0) }} modules loaded across
|
||||
{{ modules.keys()|length - 1 }} categories. Ask HAL for a sweep, threat triage,
|
||||
or to walk a specific scan.
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="sec">System Info</div>
|
||||
<table class="data-table">
|
||||
<tbody>
|
||||
<tr><td>Platform</td><td>{{ system.platform }}</td></tr>
|
||||
<tr><td>Architecture</td><td>{{ system.arch }}</td></tr>
|
||||
<tr><td>Python</td><td>{{ system.python }}</td></tr>
|
||||
<tr><td>IP</td><td>{{ system.ip }}</td></tr>
|
||||
<tr><td>UPnP</td><td><span class="status-dot {{ 'active' if upnp_enabled else 'inactive' }}"></span>{{ 'Enabled' if upnp_enabled else 'Disabled' }}</td></tr>
|
||||
{% if llm_model %}<tr><td>LLM Model</td><td style="font-size:10.5px">{{ llm_model.split('/')[-1] if '/' in llm_model else llm_model }}</td></tr>{% endif %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sec" style="margin-top:22px">System Tools</div>
|
||||
<table class="data-table">
|
||||
<thead><tr><th>Tool</th><th>Status</th></tr></thead>
|
||||
<tbody>
|
||||
{% for tool, available in tools.items() %}
|
||||
<tr>
|
||||
<td>{{ tool }}</td>
|
||||
<td><span class="status-dot {{ 'active' if available else 'inactive' }}"></span>{{ 'Available' if available else 'Not found' }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="section">
|
||||
<h2>System Info</h2>
|
||||
<table class="data-table">
|
||||
<tbody>
|
||||
<tr><td>Platform</td><td>{{ system.platform }}</td></tr>
|
||||
<tr><td>Architecture</td><td>{{ system.arch }}</td></tr>
|
||||
<tr><td>Python</td><td>{{ system.python }}</td></tr>
|
||||
<tr><td>IP</td><td>{{ system.ip }}</td></tr>
|
||||
<tr><td>UPnP</td><td><span class="status-dot {{ 'active' if upnp_enabled else 'inactive' }}"></span>{{ 'Enabled' if upnp_enabled else 'Disabled' }}</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<script>
|
||||
window.addEventListener('DOMContentLoaded', function () {
|
||||
if (window.aosRenderSpark) {
|
||||
window.aosRenderSpark(document.getElementById('aos-dash-spark'), 40, [12, 15]);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user