Está en la página 1de 27

LABORATORIO 1 SEGURIDAD INFORMATICA

ALUMNO
JOSE MIGUEL AGUILAR LUQUEZ

DOCENTE
NEHEMIAS SARABIA

UNIVERSIDAD POPULAR DEL CESAR


VALLEDUPAR
2019
1. ¿En qué consiste hacking ético?

Hacking ético es una forma de referirse al acto de una persona, o mejor conocido
como hacker, que utiliza sus conocimientos de informática y seguridad para encontrar
vulnerabilidades o fallas de seguridad en el sistema, con el objetivo de reportarlas en
la organización para que se tomen todas las medidas necesarias que posibilite prevenir
una catástrofe cibernética, como el robo de información.

Un hacking ético se define a través de lo que hacen los profesionales que se dedican
a ello, es decir, los piratas informáticos éticos. Estas personas son contratadas para
hacker un sistema e identificar y reparar posibles vulnerabilidades, lo que previene
eficazmente la explotación por hackers maliciosos. Son expertos que se especializan
en las pruebas de penetración de sistemas informáticos y de software con el fin de
evaluar, fortalecer y mejorar la seguridad.

Este tipo de pirata informático a menudo se denomina como hacker de sombrero


blanco (White hat), con el fin de diferenciarlos de los piratas informáticos criminales,
que se conocen como hackers de sombrero negro.

Una de las armas más poderosas en la lucha contra los ciberdelincuentes ha sido la de
los piratas informáticos. Los profesionales con un profundo conocimiento de cómo
penetrar en la seguridad de una infraestructura en línea se implementan comúnmente
para encontrar vulnerabilidades que aquellos del otro lado del espectro de piratería
moral buscarían explotar.

El hacking ético nace como medida para combatir a los piratas informáticos con malas
intenciones. Las empresas contratan a estos profesionales porque necesitan probar su
seguridad. Al otorgar su permiso, efectivamente cubren sus ojos y oídos corporativos
mientras se llevan a cabo estas pruebas.

Al final, el hacker ético presenta un informe bien pulido que señala las debilidades y
las recomendaciones asociadas. Por el camino, es muy probable que se hayan roto
leyes que el pirata de sombrero blanco no sepa (o no le interese). Es un tema
condenado a generar controversia.
2. ¿Qué es y cómo funciona el protocolo HTTP?

El http (del inglés HyperText Transfer Protocol o Protocolo de Transferencia de Híper


Textos) es el protocolo de transmisión de información de la World Wide Web, es
decir, el código que se establece para que el computador solicitante y el que contiene
la información solicitada puedan “hablar” un mismo idioma a la hora de transmitir
información por la red.

Con el http se establecen criterios de sintaxis y semántica informática (forma y


significado) para el establecimiento de la comunicación entre los diferentes elementos
que constituyen la arquitectura web: servidores, clientes, proxy. Fue creado en 1999
por el World Wide Web Consortium en colaboración con la Internet Engineering
Task Forcé.

Se trata de un protocolo “sin estado”, vale decir, que no lleva registro de visitas
anteriores, sino que siempre empieza de nuevo. La información relativa a visitas
previas se almacena en estos sistemas en las llamadas “cookies”, almacenadas en el
sistema cliente.

El http ha pasado por numerosas versiones hasta alcanzar la actual a principios del
siglo XXI, llamada HTTP/2. Sus primeros intentos se produjeron en 1991 y arrojaron
versiones parciales en 1996, 1999, 2000 y, finalmente, la vigente en 2015.

El funcionamiento del http se basa en un esquema de petición-respuesta entre el


servidor web y el “agente usuario” (del inglés user agent) o cliente que realiza la
solicitud de transmisión de datos. Un cliente puede ser un explorador determinado,
cuando intentamos abrir una página web, o los rastreadores web (webcrawlers o
arañas web) que las inspeccionan.

A ellos el servidor brinda una respuesta estructurada de modo puntual y dotada de


una serie de metadatos, que establecen las pautas para el inicio, desarrollo y cierre de
la transmisión de la información. Estos son los “métodos de petición”, es decir, los
comandos que disparan la ejecución de recursos determinados, cuyos archivos
residen en el servidor.

Por ejemplo: Al abrir una página web específica, el intercambio informativo entre
nuestro explorador web y el servidor donde reside la información establecerá de qué
manera debe transmitirse la información, en qué lugar están las imágenes y en qué
orden se me mostrarán, etc. Este intercambio de comandos de solicitud y códigos de
respuesta da como resultado la representación en mi computador de la misma
información contenida originalmente en el servidor, que puede estar a miles de
kilómetros de distancia.
3. ¿Qué es y cómo funciona el protocolo TLS?
TLS significa Transport Layer Security (seguridad en la capa de transporte) y
garantiza la privacidad de los datos de la misma manera que SSL. Dado que SSL ya
no se usa, este es el término correcto que la gente debería comenzar a usar.

Protocolo TLS (Transport Layer Security. Es un protocolo mediante el cual se


establece una conexión segura por medio de un canal cifrado entre el cliente y
servidor. Así el intercambio de información se realiza en un entorno seguro y libre de
ataques. La última propuesta de estándar está documentada en la referencia RFC
2246.

Normalmente el servidor es el único que es autenticado, garantizando así su identidad,


pero el cliente se mantiene sin autenticar, ya que para la autenticación mutua se
necesita una infraestructura de claves públicas (o PKI) para los clientes. Estos
protocolos permiten prevenir escuchas (eavesdropping), evitar la falsificación de la
identidad del remitente y mantener la integridad del mensaje en una aplicación
cliente-servidor.

Funcionamiento del Protocolo


TLS gestiona esquemáticamente cada transmisión de datos como comunicación entre
el emisor y el receptor, por ejemplo, entre el cliente y el servidor. El protocolo TLS
se utiliza en un punto específico de la arquitectura de la tecnología de la información,
que también se denomina modelo OSI o modelo de referencia TCP/IP. TLS opera en
la capa de transporte, donde se gestionan los flujos de datos de la comunicación
digital. Esta capa forma parte del sistema de transporte, que se separa de la capa de
aplicación y, por tanto, del usuario. Esto significa que los usuarios no tienen que
preocuparse por las características del sistema que se utiliza para la transmisión de
datos, y también pueden utilizar el sistema sin el conocimiento de la red.

La capa de transporte permite el cifrado de extremo a extremo, por lo que la capa de


aplicación es siempre una implementación del protocolo estándar superior TLS.

TLS tiene tres objetivos, independientemente de su uso práctico:


Encriptación: Cualquier mensaje o información que se transmita está protegida contra
el acceso de terceros mediante algoritmos de cifrado.

Autenticación: Cualquier comunicación entre el emisor y el receptor requiere un


mecanismo para verificar estas identidades en la red.
Integridad: Ningún mensaje o información puede ser manipulado o falsificado
posteriormente.

Certificado digital o certificado TLS


Un certificado TLS es un certificado digital de seguridad que se utiliza por el
protocolo TLS (antes SSL). Este certificado es otorgado por una agencia
independiente debidamente autorizada y es enviado por el servidor de la página web
segura. De esta forma se valida que una página web es realmente la que dice ser, sin
tener redirecciones o páginas personificando a otras (conocidas como páginas no
seguras).

El navegador de internet recibe e interpreta el contenido de dicho certificado y, al


verificar su autenticidad, indica que se está realizando una conexión segura; cada
navegador de internet tiene diferentes formas de indicarlo, por ejemplo, un candado
cerrado.

Los navegadores te dan facilidades para que puedes ver los certificados y, sobre todo,
si están debidamente verificados; por ejemplo, aquí puedes ver cómo conocer
información en Firefox.

4. En que consiste la autentificación web


La autenticación Web es una comunicación entre el explorador y el servidor Web donde
participan un pequeño número de encabezados del Protocolo de transferencia de
hipertexto (HTTP, Hypertext Transfer Protocol) y mensajes de error.
El flujo de comunicación es el siguiente:
A. El explorador Web hace una solicitud, por ejemplo, HTTP-GET.
B. El servidor Web realiza una comprobación de autenticación. Si no es correcta
porque se requiere autenticación, responde con un mensaje de error similar al
siguiente:
 No está autorizado a ver esta página
 No tiene permiso para ver este directorio o página con las credenciales
proporcionadas.
 El explorador Web puede utilizar la información incluida en este mensaje para
volver a enviar la solicitud como una solicitud autenticada.
C. El explorador Web utiliza la respuesta del servidor para crear una nueva solicitud
que contiene información de autenticación.
D. El servidor Web realiza una comprobación de autenticación. Si la comprobación
es correcta, devuelve al explorador Web los datos solicitados inicialmente.

5. Qué diferencia existe entre los esquemas STRIDE y DREAD

STRIDE es un sistema de clasificación de amenazas, el cual consiste en un acrónimo


que representa el espectro de amenazas de seguridad que pueden afectar a un sistema.
Las seis categorías de amenazas detalladas a continuación pueden ayudar a
identificar los vectores de vulnerabilidades y posibles ataques a una aplicación:

1. Suplantación de identidad
Suplantar quiere decir adoptar la personalidad de otra persona en un equipo. Un
ejemplo de suplantación de identidad es el acceso ilegal a la información de
autenticación de otro usuario y el posterior uso de la misma, como el nombre de
usuario y la contraseña.

2. Manipular datos
La manipulación de datos implica la modificación malintencionada de éstos.
Algunos ejemplos son la modificación no autorizada de datos persistentes, como los
que se mantienen en una base de datos, o la modificación de datos durante su
transferencia entre equipos en una red abierta como, por ejemplo, Internet.

3. Repudio
Las amenazas de repudio son aquellas en las que los usuarios niegan la autoría de
una acción sin que otras partes puedan probar lo contrario. Por ejemplo, un usuario
realiza una operación ilegal en un sistema sin que exista la posibilidad de realizar un
seguimiento de la misma. De igual forma, el no rechazo se refiere a la posibilidad de
un sistema de contrarrestar las amenazas de repudio. Por ejemplo, un usuario que
adquiere un artículo tiene que firmar un recibo al entregarse dicho artículo. De esta
forma, el proveedor puede utilizar el recibo firmado como prueba de la entrega del
paquete.

4. Divulgación de información
Las amenazas de divulgación de información suponen la revelación de información
a individuos que no deben tener acceso a la misma. Por ejemplo, la posibilidad de
que los usuarios lean un archivo al que no se les ha proporcionado acceso, o la
posibilidad de un intruso de leer datos que se están transfiriendo entre dos equipos.

5. Denegación de servicio
Los ataques por denegación de servicio (DoS) ocasionan la pérdida de servicio a los
usuarios válidos, por ejemplo, deshabilitando temporalmente un servidor Web. Debe
protegerse contra determinados tipos de amenazas Dos a fin de mejorar la
disponibilidad y fiabilidad del sistema.

6. Elevación de privilegios
En este tipo de amenaza, un usuario sin privilegios obtiene acceso con privilegios y,
por tanto, la capacidad de poner en peligro o destruir todo el sistema. Un tipo de
amenaza de elevación de privilegios es la situación en la que un agresor burla todas
las defensas del sistema con éxito y se integra en la parte del sistema de confianza.

Esto permite efectuar un mayor análisis que a su vez promueve la reutilización de la


información y una comunicación más eficaz.

DREAD es un esquema de clasificación para cuantificar, comparar y dar prioridad a la


cantidad de riesgo que presenta una amenaza específica.
El algoritmo de cálculo de riesgo DREAD se fija en base a un promedio de las cinco
categorías contempladas:

Tabla de Calificación de Amenazas


6. Que tipos de ataques existen en la web y en qué consisten
Ataque Por Injection
Los ataques de inyección, más específicamente sqli (Structured Query Language
Injection) es una técnica para modificar una cadena de consulta de base de datos
mediante la inyección de código en la consulta. El SQLI explota una posible
vulnerabilidad donde las consultas se pueden ejecutar con los datos validados.
SQLI siguen siendo una de las técnicas de sitios web más usadas y se pueden utilizar
para obtener acceso a las tablas de bases de datos, incluyendo información del usuario
y la contraseña. Este tipo de ataques son particularmente comunes en los sitios de
empresas y de comercio electrónico donde los hackers esperan grandes bases de datos
para luego extraer la información sensible. Los ataques sqli también se encuentran
entre los ataques más fáciles de ejecutar, que no requiere más que un solo PC y una
pequeña cantidad de conocimientos de base de datos.
Fuerza Bruta
Estos básicamente intentan “romper” todas las combinaciones posibles de nombre de
usuario y contraseña en una página web. Los ataques de fuerza bruta buscan
contraseñas débiles para ser descifradas y tener acceso de forma fácil. Los atacantes
cuentan con buen tiempo, así que el truco es hacer que tus contraseñas sean lo bastante
seguras y así el atacante se cansaría antes de descifrar tu contraseña. Mientras que las
computadoras se vuelven más y más poderosa la necesidad de contraseñas más fuertes
se vuelve cada vez más importante. El caso más reciente de esta vulnerabilidad, se ha
visto en cuanto a la vulneración de cuentas de algunos famosos alojados en iCloud.
Solicitud de falsificación entre sitios (CSRF)
La falsificación de solicitudes entre sitios (CSRF) es un ataque que obliga a un
usuario final a ejecutar acciones no deseadas en una aplicación web en la que están
autenticados actualmente. Los ataques CSRF se dirigen específicamente a las
solicitudes de cambio de estado, no al robo de datos, ya que el atacante no tiene forma
de ver la respuesta a la solicitud falsificada. Con un poco de ayuda de ingeniería social
(como enviar un enlace por correo electrónico o chat), un atacante puede engañar a
los usuarios de una aplicación web para que ejecuten las acciones que elija el atacante.
Si la víctima es un usuario normal, un ataque CSRF exitoso puede obligar al usuario
a realizar solicitudes de cambio de estado, como transferir fondos, cambiar su
dirección de correo electrónico, etc. Si la víctima es una cuenta administrativa, CSRF
puede comprometer toda la aplicación web.
Ataques de phishing
El phishing es una técnica de engaño que utilizan los piratas informáticos para robar
nuestros datos personales y bancarios a través de la página web falsa de alguna
institución oficial como la Agencia Tributaria, nuestro banco o cualquier empresa o
tienda que consideraríamos de total confianza.
¿En qué consiste?
En primer lugar, nos llega un mail, SMS, WhatsApp o similar con una excusa “x”
(hemos ganado un concurso, nos han obsequiado con cupones de descuento en una
tienda o supermercado, tenemos que confirmar nuestra cuenta bancaria porque ha
habido problemas con una transferencia o pago...) y que contiene un enlace que
redirige a una página web falsa que simula ser la oficial.
Una vez allí, nos piden que introduzcamos nuestros datos de acceso (usuario y
contraseña) y es entonces cuando ya nos tienen pillados porque han conseguido la
información que necesitan para cometer el robo.
Buffer Overflow
El desbordamiento de búfer, es una anomalía en la que un proceso almacena datos en
un búfer fuera de la memoria que el programador reservó para ello. Los datos
adicionales sobrescriben la memoria adyacente, que puede contener otros datos,
incluidas variables de programa y datos de control de flujo del programa. Esto puede
provocar errores de acceso a la memoria, resultados incorrectos, finalización del
programa o una violación de la seguridad del sistema. Esta vulnerabilidad es
completamente un error del Programador.
Defectos de inyección
Las fallas de inyección permiten a los atacantes retransmitir código malicioso a través
de una aplicación web a otro sistema. Estos ataques incluyen llamadas al sistema
operativo a través de llamadas al sistema, el uso de programas externos a través de
comandos del Shell, así como llamadas a bases de datos de backend a través de SQL
(es decir, inyección de SQL). Los scripts completos escritos en Perl, Python y otros
lenguajes pueden ser inyectados en aplicaciones web mal diseñadas y ejecutado. Cada
vez que una aplicación web utiliza un intérprete de cualquier tipo, existe el peligro de
un ataque de inyección. Cada vez que una aplicación web utiliza un intérprete de
cualquier tipo, existe el peligro de un ataque de inyección.

Web Defacement
La desfiguración del sitio web es un ataque a un sitio web que cambia la apariencia
visual del sitio. Estos son típicamente el trabajo de los crackers del sistema, que entran
en un servidor web y reemplazan el sitio web alojado con uno propio. Lo más
probable es que este tipo de ataques se hagan intencionalmente para arruinar la
reputación de la compañía que ha alojado este sitio web.
REFERENCIAS

https://concepto.de/http/#ixzz5pGfQaS60

https://concepto.de/http/#ixzz5pGejUayr

https://www.iniseg.es/blog/ciberseguridad/que-es-el-hacking-etico/

https://ticnegocios.camaravalencia.com/servicios/tendencias/que-es-el-hacking-
etico/

https://www.redalia.es/ssl/protocolo-ssl/

https://www.ibm.com/support/knowledgecenter/es/SSFKSJ_9.0.0/com.ibm.mq.sec.
doc/q009910_.htm

https://www.ocu.org/tecnologia/internet-telefonia/consejos/evitar-ataque-phishing
https://ciberseguridad.blog/25-tipos-de-ataques-informaticos-y-como-prevenirlos/
Preparación de kali Linux en virtual box
1. Descargamos Virtual Box y lo ejecutamos. Una vez instalado, que viene a ser dar a
Siguiente, saldrá la siguiente pantalla. Damos al botón Nueva.

2. Le ponemos un nombre reconocible por si instalamos varias máquinas virtuales, en


tipo le ponemos Linux, y en Versión ponemos Debían, que es en la distro en la que
está basada Kali Linux. Damos a Next.

3. Le ponemos la memoria RAM que queramos. Por defecto vendrá 512 Mb que es lo
recomendado para las distros de Debían, ponemos 1 Gb o más, dependerá de la
memoria RAM que tengas en tu equipo anfitrión y del número de máquinas que
quieras ejecutar al mismo tiempo.
4. Creamos un nuevo disco virtual.

5. Para usar el Virtual Box y evitar problemas, siempre seleccionamos VDI, que es el
formato que usa por defecto esta aplicación para la generación de discos virtuales.

6. Dejamos que el disco reserve dinámicamente el espacio usado, en base a las


necesidades que vayamos teniendo, así no ocupará tanto en nuestro equipo anfitrión.
7. Al instalarse el Kali, ocupa más de 8 Gb de espacio, así que conviene aumentar los
8 Gb que pone por defecto, 20 Gb está bien, pero si se pueden poner 40 ó 50 aún
mejor, ya que es la distro que más usaré para las prácticas e instalaremos cosillas.

8. Ya creada, la marcamos con el ratón y damos a Configuración.

En la sección Almacenamiento, sobre el controlador IDE, damos al CD con el signo más.


INSTALACION DE KALI LINUX
1. Comenzamos la instalación de kali Linux, escogemos la opción de graphical
install.

2. Escogemos el idioma español y pulsamos continuar.

3. Escogemos el país Colombia y pulsamos continuar.


4. El idioma del teclado escogemos latinoamericano y pulsamos continuar.

5. Le asignamos un nombre de la maquina joseAguilar y pulsamos continuar.

6. Asignamos una contraseña: piloto y pulsamos continuar.


7. Para la partición de disco, escogemos el método de partición seleccionamos la
opción guiado – utilizar todo el disco y pulsamos continuar.

8. pulsamos continuar.
9. Escogemos todos los ficheros en una partición y pulsamos continuar.

10. Escogemos la opcion finalizar el particionado y escribir cambios en el disco y


pulsamos continuar.

11. Escribimos los cambios en el disco seleccionamos la opción si y continuar.


12. Seleccionamos la opción si para utilizar una réplica en red y pulsamos
continuar.

13. Esperamos a que cargue.

14. Seleccionamos si y continuar.


15. Escogemos la segunda opción y pulsamos continuar.

16. Esperamos a que finalice la instalación.

17. Podemos ver que se ha instalado correctamente y pulsamos continuar.


18. Ahora si podemos iniciar ingresamos el usuario y contraseña e iniciamos
sesión.

INSTALACION DEL DVWA


1. Descargamos desde en la página oficial el instalador dvwa.
2. Nos dirigimos a descargas y descomprimimos el archivo DVWA-master.zip

3. Movemos la carpeta descomprimida dvwa al siguiente directorio /var/www/html

4. Ingresamos la terminal que es nuestra consola de comando.

5. Ahora le damos permisos a la carpeta dvwa con el comando chmod

6. El siguiente paso es iniciar apache2.


7. Visualizamos si se inicializo correctamente apache2 con el siguiente comando.

8. Ahora iniciaremos Mysql y visualizamos que este activo.

9. Cambiamos EXTENCION dist y dejamos config.inc.php


10. Ingresamos al navegador 127.0.0.1/dvwa/setup.php

11. Nos pide crear una base datos la creamos desde la consola terminal.
12. Creamos la base data bases de nombre dvwa y la observamos con el comando
show databases;

13. Creamos el usuario con su contraseña y asignamos privilegios.

14. Vamos a la carpeta config.inc.php y modificamos el nombre de la base de datos,


usuario y la contraseña por los cuales creamos en la terminal.
15. Ingresamos a la carpeta php.ini y cambiamos el off por on en allow_url_include=
On

16. Instalamos los paquetes de php-gd


17. Comprobamos que todo este correcto.

18. Ingresamos a la aplicación con el usuario admin y la contraseña password.

También podría gustarte