|
|
<!DOCTYPE html> |
|
|
<html lang="en"> |
|
|
<head> |
|
|
<meta charset="UTF-8"> |
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|
|
<title>Port Scanner - Network Security Tool</title> |
|
|
<link rel="stylesheet" href="styles.css"> |
|
|
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css" rel="stylesheet"> |
|
|
</head> |
|
|
<body> |
|
|
<div class="container"> |
|
|
<header class="header"> |
|
|
<div class="header-content"> |
|
|
<h1><i class="fas fa-network-wired"></i> Port Scanner</h1> |
|
|
<p>Professional network port scanning tool</p> |
|
|
</div> |
|
|
</header> |
|
|
|
|
|
<main class="main-content"> |
|
|
<div class="scanner-form"> |
|
|
<div class="form-group"> |
|
|
<label for="target-ip"> |
|
|
<i class="fas fa-globe"></i> Target IP Address |
|
|
</label> |
|
|
<input type="text" id="target-ip" placeholder="e.g., 192.168.1.1 or 8.8.8.8" required> |
|
|
<button id="ping-btn" class="ping-btn" title="Test connectivity"> |
|
|
<i class="fas fa-satellite-dish"></i> Ping |
|
|
</button> |
|
|
</div> |
|
|
|
|
|
<div class="form-row"> |
|
|
<div class="form-group"> |
|
|
<label for="start-port"> |
|
|
<i class="fas fa-play"></i> Start Port |
|
|
</label> |
|
|
<input type="number" id="start-port" value="1" min="1" max="65535"> |
|
|
</div> |
|
|
<div class="form-group"> |
|
|
<label for="end-port"> |
|
|
<i class="fas fa-stop"></i> End Port |
|
|
</label> |
|
|
<input type="number" id="end-port" value="1000" min="1" max="65535"> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="form-row"> |
|
|
<div class="form-group"> |
|
|
<label for="timeout"> |
|
|
<i class="fas fa-clock"></i> Timeout (seconds) |
|
|
</label> |
|
|
<input type="number" id="timeout" value="1" min="0.1" max="10" step="0.1"> |
|
|
</div> |
|
|
<div class="form-group"> |
|
|
<label for="threads"> |
|
|
<i class="fas fa-layer-group"></i> Threads |
|
|
</label> |
|
|
<input type="number" id="threads" value="100" min="1" max="500"> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="preset-ports"> |
|
|
<label>Quick Presets:</label> |
|
|
<div class="preset-buttons"> |
|
|
<button class="preset-btn" data-start="1" data-end="1000">Common (1-1000)</button> |
|
|
<button class="preset-btn" data-start="1" data-end="65535">All Ports</button> |
|
|
<button class="preset-btn" data-start="80" data-end="443">Web (80-443)</button> |
|
|
<button class="preset-btn" data-start="20" data-end="25">FTP/SSH (20-25)</button> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<button id="scan-btn" class="scan-btn"> |
|
|
<i class="fas fa-search"></i> Start Scan |
|
|
</button> |
|
|
</div> |
|
|
|
|
|
<div class="progress-section" id="progress-section" style="display: none;"> |
|
|
<div class="progress-bar"> |
|
|
<div class="progress-fill" id="progress-fill"></div> |
|
|
</div> |
|
|
<div class="progress-text" id="progress-text">Preparing scan...</div> |
|
|
</div> |
|
|
|
|
|
<div class="results-section" id="results-section" style="display: none;"> |
|
|
<div class="results-header"> |
|
|
<h2><i class="fas fa-list-ul"></i> Scan Results</h2> |
|
|
<div class="results-summary" id="results-summary"></div> |
|
|
</div> |
|
|
|
|
|
<div class="results-actions"> |
|
|
<button id="export-btn" class="export-btn"> |
|
|
<i class="fas fa-download"></i> Export Results |
|
|
</button> |
|
|
<button id="clear-btn" class="clear-btn"> |
|
|
<i class="fas fa-trash"></i> Clear Results |
|
|
</button> |
|
|
</div> |
|
|
|
|
|
<div class="results-table-container"> |
|
|
<table class="results-table" id="results-table"> |
|
|
<thead> |
|
|
<tr> |
|
|
<th>Port</th> |
|
|
<th>Status</th> |
|
|
<th>Service</th> |
|
|
<th>Protocol</th> |
|
|
</tr> |
|
|
</thead> |
|
|
<tbody id="results-tbody"> |
|
|
</tbody> |
|
|
</table> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="info-section"> |
|
|
<div class="info-card"> |
|
|
<h3><i class="fas fa-info-circle"></i> About Port Scanning</h3> |
|
|
<p>Port scanning is a method for determining which ports on a network are open and could be receiving or sending data. This tool uses TCP connect scanning to test connectivity to specific ports on target systems.</p> |
|
|
|
|
|
<div class="common-ports"> |
|
|
<h4>Common Ports:</h4> |
|
|
<div class="port-list"> |
|
|
<span class="port-item">22 (SSH)</span> |
|
|
<span class="port-item">23 (Telnet)</span> |
|
|
<span class="port-item">25 (SMTP)</span> |
|
|
<span class="port-item">53 (DNS)</span> |
|
|
<span class="port-item">80 (HTTP)</span> |
|
|
<span class="port-item">110 (POP3)</span> |
|
|
<span class="port-item">143 (IMAP)</span> |
|
|
<span class="port-item">443 (HTTPS)</span> |
|
|
<span class="port-item">993 (IMAPS)</span> |
|
|
<span class="port-item">995 (POP3S)</span> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</main> |
|
|
|
|
|
<footer class="footer"> |
|
|
<p>© 2024 Port Scanner Tool. Use responsibly and only on networks you own or have permission to test.</p> |
|
|
</footer> |
|
|
</div> |
|
|
|
|
|
<div id="notification" class="notification"></div> |
|
|
|
|
|
<script src="script.js"></script> |
|
|
</body> |
|
|
</html> |
|
|
|
|
|
|