80 lines
3.1 KiB
HTML
80 lines
3.1 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>DNS Reconnaissance Tool</title>
|
|
<link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
|
|
</head>
|
|
<body>
|
|
<div class="container">
|
|
<header>
|
|
<h1>🔍 DNS Reconnaissance Tool</h1>
|
|
<p>Comprehensive domain and IP intelligence gathering</p>
|
|
</header>
|
|
|
|
<div class="scan-form" id="scanForm">
|
|
<h2>Start New Scan</h2>
|
|
|
|
<div class="form-group">
|
|
<label for="target">Target (domain.com or hostname):</label>
|
|
<input type="text" id="target" placeholder="example.com or example" required>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="maxDepth">Max Recursion Depth:</label>
|
|
<select id="maxDepth">
|
|
<option value="1">1</option>
|
|
<option value="2" selected>2</option>
|
|
<option value="3">3</option>
|
|
<option value="4">4</option>
|
|
<option value="5">5</option>
|
|
</select>
|
|
</div>
|
|
|
|
<div class="api-keys">
|
|
<h3>Optional API Keys</h3>
|
|
<div class="form-group">
|
|
<label for="shodanKey">Shodan API Key:</label>
|
|
<input type="password" id="shodanKey" placeholder="Optional - for port scanning data">
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="virustotalKey">VirusTotal API Key:</label>
|
|
<input type="password" id="virustotalKey" placeholder="Optional - for security analysis">
|
|
</div>
|
|
</div>
|
|
|
|
<button id="startScan" class="btn-primary">Start Reconnaissance</button>
|
|
</div>
|
|
|
|
<div class="progress-section" id="progressSection" style="display: none;">
|
|
<h2>Scan Progress</h2>
|
|
<div class="progress-bar">
|
|
<div class="progress-fill" id="progressFill"></div>
|
|
</div>
|
|
<p id="progressMessage">Initializing...</p>
|
|
<div class="scan-controls">
|
|
<button id="newScan" class="btn-secondary">New Scan</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="results-section" id="resultsSection" style="display: none;">
|
|
<h2>Reconnaissance Results</h2>
|
|
|
|
<div class="results-controls">
|
|
<button id="showJson" class="btn-secondary">Show JSON</button>
|
|
<button id="showText" class="btn-secondary active">Show Text Report</button>
|
|
<button id="downloadJson" class="btn-secondary">Download JSON</button>
|
|
<button id="downloadText" class="btn-secondary">Download Text</button>
|
|
</div>
|
|
|
|
<div class="report-container">
|
|
<pre id="reportContent"></pre>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script src="{{ url_for('static', filename='script.js') }}"></script>
|
|
</body>
|
|
</html> |