WebPass / webpass /templates /network.html
ag235772's picture
Initial Release: WebPass V2 with Steganography, Crypto Vault, and Cloud Toggle
136c0f7
{% extends "base.html" %}
{% block title %}Network Monitor{% endblock %}
{% block page_title %}Network Traffic Analysis{% endblock %}
{% block content %}
<div class="row g-4 mt-2">
<div class="col-md-3 fade-in-up">
<div class="cyber-card p-3 text-center border-primary">
<h6 class="text-muted text-uppercase">Total Packets</h6>
<h2 class="text-white display-6 fw-bold" id="count-All">0</h2>
</div>
</div>
<div class="col-md-3 fade-in-up" style="animation-delay: 0.1s;">
<div class="cyber-card p-3 text-center border-info">
<h6 class="text-muted text-uppercase">TCP Traffic</h6>
<h2 class="text-info display-6 fw-bold" id="count-TCP">0</h2>
</div>
</div>
<div class="col-md-3 fade-in-up" style="animation-delay: 0.2s;">
<div class="cyber-card p-3 text-center border-warning">
<h6 class="text-muted text-uppercase">UDP Traffic</h6>
<h2 class="text-warning display-6 fw-bold" id="count-UDP">0</h2>
</div>
</div>
<div class="col-md-3 fade-in-up" style="animation-delay: 0.3s;">
<div class="cyber-card p-3 text-center border-danger">
<h6 class="text-muted text-uppercase">DNS Queries</h6>
<h2 class="text-danger display-6 fw-bold" id="count-DNS">0</h2>
</div>
</div>
</div>
<div class="row g-4 mt-3">
<div class="col-lg-4 fade-in-up" style="animation-delay: 0.4s;">
<div class="cyber-card p-4 h-100">
<h5 class="mb-4 text-accent">Protocol Distribution</h5>
<div style="height: 300px;">
<canvas id="protocolChart"></canvas>
</div>
<div class="mt-4">
<h6 class="text-muted mb-3">Top Talkers (Source IP)</h6>
<ul class="list-group list-group-flush" id="top-sources">
<li class="list-group-item bg-transparent text-muted">Listening...</li>
</ul>
</div>
</div>
</div>
<div class="col-lg-8 fade-in-up" style="animation-delay: 0.5s;">
<div class="cyber-card p-4 h-100">
<div class="d-flex justify-content-between align-items-center mb-3">
<h5 class="text-white"><i class="bi bi-list-columns-reverse me-2"></i>Live Packet Feed</h5>
<button class="btn btn-sm btn-outline-success" id="download-btn">
<i class="bi bi-download me-1"></i> Export Log
</button>
</div>
<div class="table-responsive">
<table id="packet-table" class="table table-dark table-hover table-sm w-100" style="font-size: 0.9rem;">
<thead>
<tr class="text-accent">
<th>Time</th>
<th>Source</th>
<th>Destination</th>
<th>Protocol</th>
<th>Length</th>
</tr>
</thead>
<tbody class="font-monospace">
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="modal fade" id="packetDetailModal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered">
<div class="cyber-card modal-content bg-dark text-white">
<div class="modal-header border-bottom border-secondary">
<h5 class="modal-title">Packet Inspection</h5>
<button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal"></button>
</div>
<div class="modal-body" id="packet-detail-body">
</div>
</div>
</div>
</div>
{% endblock %}
{% block scripts %}
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="https://cdn.datatables.net/1.13.6/js/jquery.dataTables.min.js"></script>
<script src="https://cdn.datatables.net/1.13.6/js/dataTables.bootstrap5.min.js"></script>
<script src="https://cdn.sheetjs.com/xlsx-latest/package/dist/xlsx.full.min.js"></script>
<script src="{{ url_for('static', filename='js/network.js') }}"></script>
{% endblock %}