You are on page 1of 7

Título del Control

Proyecto Final

Nombre Alumno

Alexis Jeria G.

Nombre Asignatura

Introducción a Programación

Instituto IACC

Fecha

26/12/2017
Desarrollo

Usted trabaja para una agencia gubernamental de seguridad y ha notado ataques informáticos a
sus servidores. El archivo de logs de su cortafuego tiene líneas de este estilo:

Desde 111.222.333.444 – Conexión hacia 1.1.1.1-Web


Desde 123.123.123.123 – Conexión hacia 2.2.2.2-FTP
Desde 5.111.123.11 – Conexión hacia 1.2.1.2-SSH
Usted desea saber quiénes y a que maquinas están atacando. Para ello se le solicita que desarrolle
los siguientes pasos
Ya tiene desarrollada su función la función que le permite identificar, dada una línea del archivo
de logs, la IP desde donde le están haciendo el ataque, la cual puede ver a continuación:

<? php
function conocerIPorigenataque ($cadena)
{
$iporigen='';
$primerblanco = stripos ($cadena,'');
$primerGuion = stripos($cadena,'');
$iporigen = substr($cadena, $primerblanco, ($primerGuion - $primerblanco));
echo 'La IP desde donde se hace el ataque es: ‘. $iporigen. <br>';
}
?>
conocerIPorigenataque("desde 5.111.123.11 - conexión hacia 1.2.1.2 - SSH");
y se obtiene el siguiente resultado:
La IP desde donde se hace el ataque es: 5.111.123.11
Función que identifique la IP que recibe el ataque
<? php
function IpReceptoraAtaque($cadena)
{
$ipReceptora = '';
$primeraIp = stripos($cadena,'');
$primerGuion = stripos($cadena,'-');
$ipReceptora = substr($cadena, $primeraIp, ($primerGuion - $primeraIp));
echo 'La IP Atacada es:' . $ipReceptora . '<br>';
}
IpReceptoraAtaque('123.123.123.123-Conexión hacia 2.2.2.2-FTP');

Función que devuelva el servicio que está siendo atacado.


<?php
function servicioAtacado($serv)
{
if($serv =='111.222.333.44') {
echo 'La IP es:'. $serv;
echo ' El Servicio Atacado es: WEB';
}
if($serv =='123.123.123.123') {
echo 'La IP es:'. $serv;
echo 'El Servicio Atacado es: FTP';
}
if($serv =='5.111.123.11') {
echo 'La IP es:'. $serv;
echo 'El Servicio Atacado es: SHH';
return $serv;
}
}
servicioAtacado('123.123.123.123');
Explique brevemente las instrucciones necesarias para trabajar con el archivo que
guarda la información de ataques informáticos
Método constructor: Funciones de una clase que utiliza para invocar a la función en
forma automática cuando se crea una nueva instancia de una clase con new.
Método Publico: El atributo o método precedido de público podrá ser leído o llamado
en cualquier parte del código, sea desde la misma clase o desde fuera de ella, esto
significa que también podrá ser alterado sin restricciones, por eso se aconseja que los
atributos se declaren privados salvo casos excepcionales
Método protegido: Se utiliza para acceder desde la misma desde la misma o de clases
heredadas
Declaración Variable: Se declara variable donde se encuentra los datos que serán
mostrados
Definición de las variables: se declara la o las variables con las que se trabajaran.
En este caso se utilizó un arreglo que incluye sentencias condicionales con if, que
como objetivo conocer las IP atacadas en los servidores.
<?php
$ip = array( );
$ip[0]= '111.222.333.444';
$ip[1]= '123.123.123.123';
$ip[2]= '5.111.123.11';
for ($i=0; $i<1; $i++) {
if ($ip[0]=='111.222.333.444') {
echo 'La IP: ' . $ip[0] . ' ,ha Realizado 13 Ataques' . '<br/>';
}
if ($ip[1]=='123.123.123.123') {
echo 'La IP: ' . $ip[1] . ' ,ha Realizado 8 Ataques' . '<br/>';
}
if ($ip[2]=='5.111.123.11') {
echo 'La IP: ' . $ip[2] . ' ,ha Realizado 5 Ataques' . '<br/>';
}
}
?>

$Ip = new Ip();


$Servicio = new Servicio ();
$Ataque = new Ataque ();
Explique brevemente las instrucciones necesarias para trabajar con el archivo que guarda
la información de ataques informáticos
Este seudocódigo se componente
Clase llamada“IP” la cual heredara dos subclases llamada “ Servicio y Ataque”
Además, declara varias variables que realizan las operaciones declarada como “Var”
Luego se crea un constructor en cada clase, esta no es más que una función que será llamada
cuando se crea una instancia de una clase con “new”.
Tiene un método modificador “set” en cada clase, el que asignará un nuevo valor al atributo
Tiene un método de acceso “get” en cada clase, el que solo devolverá el valor del atributo.
Se crean las clases heredadas de la clase madre, estas son la clase “Servicio” y la clase “Ataque”,
a las cuales se les agrega la palabra clave extends, para hacer que la clase sea extendida, ya que
una clase es siempre dependiente de una clase madre, y la herencia múltiple no está soportada.
Por último, se crea el operador “new” para retornar la referencia automáticamente
Bibliografía

Contenidos de la semana 1 al 8 IACC

Departamento de desarrollo UDP

You might also like