Professional Documents
Culture Documents
Clase Exploit
Código
class Exploit
{
//Definimos las variables o atributos
String Autor;
String Vulnerabilidad;
String Lenguaje;
//Métodos
String getAutor()
{
return Autor; //Devuelve autor
}
String getVulnerabilidad()
{
return Vulnerabilidad;
}
String getLenguaje()
{
return Lenguaje;
}
int setOffset(String o)
{
//Se implementa el parámetro offset en la función que se quiera
System.out.println("\n\n[*] Implementando la direccion offset " + o + "
en el exploit...\n");
return (0);
Clase WinExploit
Código
class WinExploit extends Exploit
{
//Además de disponer de los atributos heredados de la clase padre...
//Definimos las nuevas variables o atributos a añadir
String CodigoMS;
Clase app
Código
class app
{
public static void main (String[] args)
{
//Creamos dos objetos-Exploit llamando al Constructor
Exploit e1 = new Exploit ("Lion", "Serv-U FTPD SITE CHMOD
Command Stack Buffer Overflow", "C");
System.out.println("\nInfo de e1\n");
System.out.println("\tAutor: " + e1.getAutor());
System.out.println("\tVulnerabilidad: " + e1.getVulnerabilidad());
System.out.println("\tLenguaje: " + e1.getLenguaje());
System.out.println("\n\nInfo de e2\n");
System.out.println(e2.getInfoComun());
System.out.println("\nInfo de w1\n");
System.out.println("\tAutor: " + w1.getAutor());
System.out.println("\tVulnerabilidad: " + w1.getVulnerabilidad());
System.out.println("\tLenguaje: " + w1.getLenguaje());
System.out.println("\tCodigo MS: " + w1.getCodigoMS());
System.out.println("\n\nInfo de w2\n");
System.out.println(w2.getInfoWin());
}
else
{
System.out.println("[!] Error durante la implementacion de la
direccion offset\n");
}
}
EJEMPLO 2.
Operador instanceof
El operador instanceof sirve para consultar si un objeto es una instancia de una clase
determinada, o de su padre. Pareciera absurdo tratar de conocer cuál es la clase que
da lugar a una instancia específica, sin embargo es de mucha utilidad cuando se
trabaja con interfaces y herencia a la vez. Veamos un ejemplo:
if (esPrimo(p)){
System.out.println("ES INSTANCIA DE PRIMO");
}
}
public static boolean esPrimo(primo p) {
return (p instanceof primo);
}
}
public:
/* OTROS MÉTODOS */
virtual unsigned int sueldo() = 0;
};
public:
/* OTROS MÉTODOS */
unsigned int sueldo() { return SUELDO_BASE + ventas_realizadas*60; }
};
public:
/* OTROS MÉTODOS */
unsigned int sueldo() {
if (jornada_completa) return SUELDO_BASE/2;
else return SUELDO_BASE/4;
}
};
cout << "Este mes vamos a gastar " << sueldo << " dinero en sueldos" << endl;
}