Hackig Ético

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 10

¿Qué es y qué hace un Hacker ético?

Es un profesional dotado de habilidades para encontrar vulnerabilidades en los sistemas


informáticos utilizando las mismas herramientas, metodologías y técnicas que un hacker
malicioso. El objetivo del Hacker Ético es ayudar a la entidad (entendamos entidad
como toda colectividad que puede considerarse como una unidad) a tomar medidas
contra ataques maliciosos atacando al sistema mismo; todo dentro de límites legales.

Según lo anterior podemos entender que el objetivo fundamental del Hacking ético es
encontrar las vulnerabilidades existentes en el sistema de “interés” (para el caso de un
contrato, sería la entidad que nos a contactado) valiéndose de un test de intrusión, que
verifican y evalúan la seguridad física y lógica de los sistemas de información, redes de
computadoras, aplicaciones web, bases de datos, servidores, etc. Con la intención de
ganar acceso y “demostrar” que un sistema es vulnerable, los datos que nosotros
obtengamos sobre la seguridad de la entidad, en todos sus aspectos, nos puede dar una
guía y las bases para ofrecer las medidas pertinentes que tiene que tomar.

Podemos concluir que el fin del Ethical Hacking consiste en la simulación de un modelo
que reproduce intentos de acceso de un potencial intruso de manera controlada.

¿Cuáles son los beneficios de un Ethical hacking?

El beneficio de un Ethical hacking es que al terminar su ejecución se entrega al contratante


(o al contratista, según como se haya acordado) un reporte especificando los resultados
que se obtuvieron, una lista detallada de las vulnerabilidades encontradas y verificadas.
También dentro del reporte el hacker ético agrega un conjunto de recomendaciones y
acciones a tomar para que los responsables de la seguridad apliquen con el fin de corregir
los fallos.

Debemos que tener en cuenta (nosotros como profesionales en pentesting) lo rápido que
avanzan las IT( o TICs) por ello los beneficios que obtiene una entidad al contratar un
hacker ético son muchas y muy provechosas: Cuando la entidad toma la decisión de
adoptar las nuevas tecnologías (que son muy necesarias ) como la computación en la nube,
la virtualización, o la externalización de TI, se enfrenta a amenazas inminentes y deben
ajustar sus procesos de seguridad, políticas y arquitecturas de forma consecuente.
El gran reto para las empresas es implementar de forma correcta políticas de seguridad
que logren afrontar las cambiantes tácticas de piratería y las innumerables
vulnerabilidades. Tales desafíos deben ser abordados por profesionales con amplia
experiencia en análisis de vulnerabilidades e implementación de políticas en una
organización.

TRIADA C.I.A:

 Confidentiality (confidencialidad): entendamos confidencialidad como la


característica que asegura que los usuarios no tengan acceso a la información a
menos que estén autorizados para ello.
 Integrity (integridad): esta característica nos señala que toda la modificación de
la información es hecha por usuarios autorizados, por medio y en un lapso
autorizado.
 Availability (disponibilidad): garantiza que los recursos del sistema y la
información estén disponibles solo para usuarios autorizados y en el momento
que lo necesiten.

(Pero también encontramos otros conceptos asociados a esta triada como son la
identificación, autenticación y autorización)

¿Quiénes son los Ethical Hackers?

Por hacker ético podemos entender rápidamente a “hacker de sombrero blanco” o “White
hat hacker” (este término proviene de la típica denominación del color blanco y negro
junto con la unión con las antiguas películas del viejo oeste, en donde el “bueno” siempre
llevaba un sombrero blanco y el “malo” un sombrero negro, black hat hacker), también
conocidos como Pen-Tester, como su nombre lo indica, realizan “Pruebas de
Penetración”, es un experto en las TICs o IT, su función es atacar los sistemas de
seguridad en nombre de sus dueños con el fin de encontrar sus debilidades y protegerlas
de un potencial hacker malicioso. Una de las certificaciones más comunes que avalan este
tipo de conocimientos es CEH (Certified Ethical Hacker).
Fases que sigue un Ethical Hacker al hacer un pentest:

1. Pre-contrato
2. Recolección de información
3. Modelado de amenazas
4. Análisis de vulnerabilidades
5. Explotación
6. Post-explotación
7. Reporte

TIPOS DE PENTESTING

 Pruebas de penetración con objetivo: se buscan las vulnerabilidades en partes


específicas de los sistemas informáticos críticos de la organización.
 Pruebas de penetración sin objetivo: consisten en examinar la totalidad de los
componentes de los sistemas informáticos pertenecientes a la organización. Este
tipo de pruebas suelen ser las más laboriosas pero la más realista.
 Pruebas de penetración a ciegas: en estas pruebas sólo se emplea la
información pública disponible sobre la organización (también se puede
considerar Trashing “nada se destruya, se transforma”).
 Pruebas de penetración informadas: aquí se utiliza la información privada,
otorgada por la organización acerca de sus sistemas informáticos. En este tipo de
pruebas se trata de simular ataques realizados por individuos internos de la
organización que tienen determinado acceso a información privilegiada.
 Pruebas de penetración externas: son realizas desde lugares externos a las
instalaciones de la organización. Su objetivo es evaluar los mecanismos
perimetrales de seguridad informática de la organización (La seguridad
perimetral corresponde a la integración de elementos y sistemas, tanto
electrónicos como mecánicos, para la protección de perímetros físicos, detección
de tentativas de intrusión y/o disuasión de intrusos en instalaciones
especialmente sensibles).
 Pruebas de penetración internas: son realizadas dentro de las instalaciones de
la organización con el objetivo de evaluar las políticas y mecanismos internos de
seguridad de la organización.
Aprende lo más importante de Linux

La línea de comandos de Linux nos da acceso a un procesador de comandos llamado Bash


que permite controlar el sistema mediante la introducción de instrucciones basadas en
texto. Al abrir la línea de comandos veremos root@kali:~#. Root es el súper usuario en
los sistemas Linux, y tiene el control completo de Kali, Para realizar operaciones en Linux
introducimos comandos junto con sus opciones pertinentes. Por ejemplo si queremos
listar archivos y directorios que se encuentran en la carpeta root ejecutamos el
comando ls (list directory)

Como podemos ver solo se encuentran dos carpetas en el directorio root.

El sistema de archivos Linux

En el mundo Linux, todo es un archivo: teclados, impresoras, dispositivos de red, todo.


Todos los archivos se pueden ver, editar, eliminar, crear y mover.El sistema de archivos
de Linux se compone de una seria de directorios que se ramifican desde la raiz del sistema
de archivos (/). Para ver el directorio actual en que nos encontramos ejecutamos en la
terminal pwd.

Cambio de directorios

Para movernos de un directorio a otro, escribimos en nuestra terminal cd seguido de el


nombre de la carpeta Desktop/ y ya estamos dentro de /root/Desktop. Si lo que queremos
es irnos al directorio anterior ejecutamos cd .. y nos devolvemos a la carpeta /root (Un
consejo a la hora de escribir los archivos o directorios en Linux es escribir las primeras
letras del mismo, seguido espichamos la tecla "Tab" y se escribirá automáticamente).

Aprendiendo más sobre los comandos

Para aprender mas sobre los comandos sus opciones y argumentos, escribimos man
seguido del comando deseado, por ejemplo ls
La opción man nos da información útil sobre el comando ls incluyendo su uso, la
descripción y las opciones disponibles. Como se puede ver en la sección de descripción
el comando ls lista todos los archivos en el directorio de trabajo actual de forma
predeterminada, pero también se puede usar este comando para obtener información
acerca de un archivo en particular. Por ejemplo, de acuerdo con la pagina del manual se
puede utilizar la opción -a con ls para mostrar todos los archivos, incluidos los
directorio ocultos.

Privilegios de usuario

Las cuentas de usuario de Linux ofrecen recursos a un individuo o servicio en


particular. Un usuario puede iniciar sesión con una contraseña y se ofrecen ciertos
recursos del sistema Linux, tales como la capacidad de escribir archivos y navegar por
Internet. La mejor practica en los sistemas Linux es ejecutar los comandos diarios en un
usuario sin privilegios, esto evitaría dañar inadvertidamente nuestra sistema o la
concesión de privilegios excesivos a los comandos y aplicaciones que se ejecutan.

Añadiendo un usuario

Por defecto Kali nos ofrece solo el usuario con privilegios root. Aunque muchas
herramientas de seguridad requieren de privilegios de root para funcionar, es
recomendable agregar otra cuenta sin privilegios para reducir la posibilidad de daños en
nuestra sistema, la cuenta de root puede hacer cualquier cosa en el sistema, incluyendo
la corrupción de todos sus archivos.
Como vemos en la imagen ejecutamos el comando adduser para agregar nuestro nuevo
usuario, seguido del nombre que le queramos dar, luego nos pide una contraseña y su
confirmación, seguido podemos llenar la información que nos pide o simplemente
dejarlo en blanco, confirmamos los datos y queda creado.

Cuando necesitamos hacer algo que necesite privilegios root, usamos el comando sudo
seguido del comando que queremos ejecutar como root y luego escribimos nuestra
contraseña. Para que nuestro nuevo usuario exploiter pueda correr con privilegios root,
necesitamos añadirla a la carpeta sudo.

Para cambiar de usuario en nuestra terminal solo ejecutamos el comando su seguido del
nombre de usuario al cual nos queremos cambiar.

Cambiamos de usuario a exploiter, luego intentamos crear un nuevo usuario desde


exploiter y vemos que nos da un error esto debido a que no tenemos privilegios, luego
ejecutamos el comando su y volvemos a ser el usuario root.

Creando un archivo o directorio

Para crear un nuevo archivo llamado exploits, utilizamos el comando touch.

Ahora si queremos crear un nuevo directorio ejecutamos el comando mkdir seguido del
nombre.
Usamos el comando ls para comprobar que el directorio se ha creado y luego entramos
al directorio con el comando cd.

Copiando, moviendo y eliminando archivos

Para copiar un archivo usamos el comando cp

Usando el comando cp el archivo original queda en su lugar y se crea una copia que queda
en la carpeta de destino. Similarmente podemos mover un archivo de un lugar a otro
usando el comando mv. La sintaxis es idéntica a la de cp, pero esta ves el archivo será
removido de su lugar original. Tambien podemos remover cualquier archivo del sistema
utilizando el comando rm -r seguido de su nombre.

Añadiendo texto a un archivo

El comando echo es una de las instrucciones mas simples en la terminal de linux, se


encarga de desplegar o repetir en la salida estándar cualquier argumento que se indique.

Parar guardar el texto que escribimos en un archivo, podemos redirigir su entrada a una
archivo en lugar de la terminal con el simbolo > seguido del nombre del archivo. Luego
ejecutamos el comando cat seguido del nombre del archivo para comprar que el texto que
habíamos escrito quedo guardado.

Permisos de archivos

Si ejecutamos el comando ls -l seguido del nombre de un archivo, podremos ver los


permisos que este contiene.

De izquierda a derecha se ve el tipo de archivo y los permisos (-rw-r--r--). el numero de


enlaces al archivo (1), el usuario y grupo que posee el archivo (root), el tamaño del archivo
(0 bytes), la ultima vez que el archivo se ha editado (Agosto 27, 04:13) y por ultimo el
nombre del archivo.

Los archivos de Linux tienen permisos de lectura(r), escritura(w) y ejecución (x) y tres
conjuntos de permisos: permisos para el propietario, el grupo y todos los usuarios. Las
tres primeras letras indican los permisos para el propietario, las tres siguientes indican los
permisos para el grupo y las tres finales denotan los permisos para todos los usuarios.
Desde que creamos el directorio 0day/ de la cuenta root, el archivo es propiedad del
usuario root y grupo root, como se puede ver en la imagen con root root. El usuario root
tiene permisos para lectura y escritura para el archivo (rw). Otros usuarios del grupo, si
los hay, pueden leer el archivo (r), pero no pueden ejecutarlo. La ultima r muestra que
todos los usuarios del sistema pueden leer el archivo.

Para cambiar los permisos de los archivos utilizamos el comando chmod. Nosotros
podemos utilizar chmod para especificar permisos para el propietario, el grupo y el mundo.
Cuando especificamos los permisos usamos los números del 0 al 7.

Al introducir nuevos permisos para los archivos, utilizamos un dígito para el propietario,
otro para el grupo y otro para el mundo. Por ejemplo para dar permisos completos al
propietario, pero que para el grupo y el mundo no hayan permisos para leer, escribir o
ejecutar un archivo, utilizamos chmod 700.

Ahora cuando corremos el comando ls -l en el archivo stuxnet, podemos ver que root
tiene permisos para lee, escribir y ejecutar (rwx) y los otros están en blanco. Si intentamos
acceder al archivo con otro usuario diferente a root, tendremos un error de permisos.

Editando archivos

Una vez ejecutamos el comando nano podemos comenzar a agregar texto a un archivo
llamado hacking.txt. Al abrir nano, deberíamos ver un archivo en blanco con información
de ayudo en la parte inferior de nuestra terminal.
También podemos buscar texto en un archivo, usamos ctrl+w y luego escribimos el texto
que queremos buscar. Para guardar cualquier cambio simplemente usamos ctrl+x,
ponemos la letra 'y' y damos enter.

Gestión de paquetes instalados

En las distribuciones de Linux basadas en Debian como Kali, podemos utilizar el


Advanced Packaging Tool (APT) para gestionar paquetes. Para instalar un paquete
escribimos apt-get install paquete. Por ejemplo si queremos instalar el administrador
gráfico de Metasploit llamado Armitage, usamos: apt-get install armitage. Para recibir las
ultimas actualizaciones de los paquetes instalados usamos: apt-get upgrade. Para agregar
nuevos repositorios editamos el archivo etc/apt/sources.list y luego ejecutamos el
comando apt-get update para actualizar la base de datos y incluir los nuevos repositorios.

Procesos y servicios

En Kali podemos iniciar, parar o reiniciar servicios usando el comando del servicio. Por
ejemplo para inicar el Apache web server simplemente usamos service apache2 start.

Al igual si queremos parar el servidor de base de datos MySQL usamos service mysql
stop.

Gestión de redes

Podemos utilizar el comando ifconfig que nos sirve para configurar o ver varios
parametros de las interfaces de redes activas, como la dirección IP, la mascara de red,
dirección MAC o el trafico que ha circulado en las mismas hasta el momento.
En la imagen podemos ver bastante información sobre los estados de nuestros sistemas
de red. La interface de la red se llama eth0. La dirección IPv4 (inet addr) que Kali utiliza
para hablar sobre la red es 192.168.1.6, Y la dirección IP es una etiqueta de 32 bits
asignado a los dispositivos de una red. La dirección IP es el nombre de 4 octetos o partes
de 8 bits. La mascara de red o netmask (Mask) identifica que partes de la dirección IP son
parte de la red y qué partes pertenecen al host. En este caso la Mask 255.255.255.0 le dice
a la red es los primeros tres octetos, 192.168.1.

También podría gustarte