index.html
Código:
<style type="text/css"><!--
body {
background-color: #000000;
}
body,td,th {
color: #FF0000;
}
-->
</style><form action="cod.php" method="post">
<p align="center">ESCANER DE PUERTOS </p>
<p align="center"><img src="Calavera Mortal_800.jpg" width="150" height="150" /></p>
<p align="center">
DIGITE LA IP
<input name="ip" type="text" size="15" maxlength="15" />
<input type="submit" name="accion" value="Escanear" />
</p>
</form>
cod.php
Código:
<style type="text/css">
<!--
body,td,th {
color: #FF0000;
}
body {
background-color: #000000;
}
-->
</style><table style="border: 1px solid BLACK;" width="50%">
<tr>
<td style="text-align: center; border: 1px solid RED; padding: 5px; color: RED; background: BLACK; font-weight: bold;">Status</td>
<td style="text-align: center; border: 1px solid RED; padding: 5px; color: RED; background: BLACK; font-weight: bold;">Puerto</td>
<td style="text-align: center; border: 1px solid RED; padding: 5px; color: RED; background: BLACK; font-weight: bold;">Descripción</td>
</tr>
<?php
set_time_limit(0);
$db = file('puertos.txt');
foreach ($db as $a=>$b) {
$puerto = explode(" ",$b);
$desc = str_replace($puerto[0]." ","",$b);
$ports[$puerto[0]] = $desc;
}
if(is_numeric(str_replace(".","",$_POST['ip']))) {
foreach($ports as $a=>$b) {
if(conecta($a)) {
pon($a,$b,"open.png");
}
else {
pon($a,$b,"close.png");
}
}
}
else { die("La ip debe contener solamente numeros."); }
function conecta ($port) {
$conexion = @fsockopen($_POST['ip'],$port,$errno,$errstr,5);
@fclose($conexion);
if($conexion) return 1;
else return 0;
}
function pon ($port,$desc,$img) { ?>
<tr>
<td style="text-align: center; border: 1px solid RED; background: #f7f7f7; padding: 5px;"><img src=" <?php echo $img; ?>" alt="Resultado de análisis" /></td>
<td style="text-align: center; border: 1px solid #e0e0e0; padding: 5px;"> <?php echo $port; ?></td>
<td style="text-align: left; border: 1px solid #e0e0e0; background: BLACK; padding: 5px;"> <?php echo $desc; ?></td>
</tr>
<?php } ?>
</table>
<input type="button" name="imprimir" value="Imprimir" onclick="window.print();" />
puertos.txt
21 FTP (Protocolo de Transferencia de Ficheros)
80 HTTP (Protocolo de Transferencia de HiperTexto) (WWW)
53 DNS (Sistema de Nombres de Dominio)
25 SMTP (Protocolo Simple de Transferencia de Correo)
110 POP3 (E-mail)
443 HTTPS (usado para la transferencia segura de páginas web)
445 Microsoft-DS (Active Directory, compartición en Windows, gusano Sasser, Agobot)
1433 Microsoft-SQL-Server
2427 Cisco MGCP
3306 MySQL sistema de gestión de bases de datos
5400 VNC protocolo de escritorio remoto (usado sobre HTTP)
es.jpg