En esta entrada les voy a platicar sobre como pasar o acreditar el examen de certificación de CertiProf, conocida como Ethical Hacking Professional Certification (CHPC), también cabe mencionar que estos tips o consejos se pueden usar para la certificación de la empresa CSASC Pentesting 101 Ethical Hacker LVL 1, al mismo tiempo me es indispensable comentarles que estas certificaciones son de opción múltiple ya que te enseñan conocimientos teóricos que un hacker ético tiene que tener en cuenta al adentrarse en el pentesting.
Conceptos a tener en cuenta para acreditar las certificaciones antes mencionadas:
- ¿Qué es el pentesting?
- Metodologías más comunes
- ¿Qué es un gusano?
- ¿Qué es un troyano?
- ¿Qué es un malware?
- Tipos de Hackers
- Tipos de Pentesting
- ¿Qué es la ingeniería social?
- Tipos de ingeniería social
- Fases de las pruebas de intrusión
- ¿Qué es una vulnerabilidad?
A continuación se definen los conceptos anteriores:
¿Qué es una vulnerabilidad?
Es cualquier debilidad o falla que puede convertirse en la puerta de entrada para ataques maliciosos. Se trata de errores en la configuración, fallos de diseño o procedimientos mal hechos que pueden comprometer la seguridad e integridad de los sistemas de una organización y tener consecuencias irreversibles para su negocio.
¿Qué es un malware?
El malware (contracción de “malicious software”, o “software malicioso”) hace referencia a cualquier tipo de software que realiza acciones dañinas en un sistema informático de forma intencionada y sin el conocimiento del usuario. El malware puede infectar computadoras y dispositivos de varias maneras y se presenta en diversas formas, algunas de las cuales incluyen virus, gusanos, troyanos, spyware y más.
¿Qué es un troyano?
Un troyano, también conocido como “caballo de Troya”, es un tipo de malware que se disfraza como software legítimo para infectar sistemas informáticos. Los troyanos se utilizan comúnmente para intentar acceder a los sistemas de los usuarios, generalmente a través de la ingeniería social, es decir, engañando a los usuarios para que carguen y ejecuten el malware en sus sistemas.
¿Qué es un gusano?
Es un tipo de malware diseñado para propagarse por diferentes dispositivos. Es capaz de permanecer activo sin que el usuario se dé cuenta, ya que es autónomo y no necesita ser activado a través de una acción humana. Las múltiples copias de su código malicioso entorpecen el correcto funcionamiento del equipo y ponen en riesgo tu privacidad.
¿Qué es el pentesting?
El pentesting, también es conocido como prueba de penetración, el cuál consiste en la simulación de un ataque a un sistema con el objetivo de encontrar vulnerabilidades y debilidades para prevenir ataques externos.
Por qué es importante el Pentesting:
- Nos permite identificar y solucionar las vulnerabilidades en su infraestructura informática antes de que sean explotadas por atacantes reales.
- Los expertos en seguridad informática simulan un taque real al sistema y prueban las medidas de seguridad existentes para evaluar su efectividad.
- Las empresas pueden mejorar su seguridad informática y proteger sus datos sensibles, sistemas y activos digitales contra posibles ataques
- Las pruebas de penetración no solo ayudan a prevenir posibles pérdidas financieras y reputacionales, sino que también ayudan a cumplir con los requisitos regulatorios y las normas de seguridad cibernética, lo que especialmente es importante para las empresas que manejan información confidencial de clientes o usuarios.
Cuales son los tipos de pruebas del Pentesting:
- Test de caja negra (también conocido como Black Box): Implican la realización de una evaluación de la seguridad y pruebas sin conocimiento previo de la infraestructura o de la infraestructura de red a probar. La prueba simula un ataque de un hacker malicioso fuera del perímetro de seguridad de la organización. El equipo de seguridad realiza la evaluación de la misma manera que un atacante externo, sin tener acceso a detalles de la arquitectura, el código fuente de la documentación.
- Test de caja gris (también conocido como Grey Hat): Implican la evaluación de la seguridad y pruebas internas. Las pruebas examinan el grado de acceso a información privilegiada dentro de la red. El propósito de esta prueba es para simular las formas más comunes de ataque, los que se inician desde dentro de la red. Es la simulación perfecta de un usuario final que intenta comprometer en el sistema sin tener un conocimiento completo del mismo.
- Test de caja blanca (también conocido como White Box): Implican la evaluación de la seguridad y las pruebas son con conocimiento completo de la infraestructura de red, en este caso se conoce como auditorías internas. El equipo tiene acceso a los detalles de la arquitectura, el código fuente, la documentación y otra información relevante del sistema o red que se esta evaluando.
Cuales son las fases del pentesting:
Cabe mencionar que para realizar una evaluación de seguridad, es necesario seguir una metodología. Las metodologías se manejan para que todos realicemos ciertos procesos y lleguemos a un mismo resultado o similar. Las pruebas de intrusión constan de 5 fases principales que permiten dar las pautas para que sea fluido, efectivo y permita obtener los mejores resultados, estos son:
- Reconocimiento.
- Análisis de vulnerabilidades.
- Explotación.
- Escalar privilegios o Post-Explotación.
- Informe.
A continuación se detallan cada una de las fases y herramientas más conocidas para cada una de ellas:
«Reconocimiento»
Es la primera fase del proceso y es esencial para el éxito de la prueba de intrusión. El objetivo de esta etapa es reunir tanta información como sea posible para poder identificar vulnerabilidades en el sistema, por ejemplo, su infraestructura de red, sistemas operativos, aplicaciones, componentes y servicios. Esto se logra mediante la recopilación de información a través de diversas técnicas, como búsquedas en bases de datos públicas, análisis de la infraestructura de red, exploración de servicios y aplicaciones, y el uso de herramientas de búsqueda de información y recolección de datos.
La fase de reconocimiento se puede dividir en 2 categorías:
- Reconocimiento Activo: Implica el uso de técnicas que requieren interacción con el sistema o red que se está probando. Estas técnicas pueden incluir escaneo de puertos, enumeración de servicios y aplicaciones, identificación de sistemas operativos, pruebas de credenciales, entre otros. El reconocimiento activo a menudo implica enviar tráfico al sistema o red, lo que puede ser detectado por los sistemas de seguridad y defensa. En la parte de reconocimiento activo se encuentran herramientas (al seleccionar cada nombre de la herramienta se le va a redirigir a contenido o documentación extra para que pueda ampliar el conocimiento y entender en detalle el funcionamiento) como Nmap y Zenmap, Nessus, Shodan.
- Reconocimiento Pasivo: Por otro lado, el reconocimiento pasivo implica recopilar información sin interactuar con el sistema o red que se está probando. Este tipo de reconocimiento generalmente se realiza utilizando técnicas de escucha, como el análisis de tráfico de red, escaneo de sitios web, revisión de información pública, entre otros. El reconocimiento pasivo es menos intrusivo y probable que sea detectado por los sistemas de seguridad y defensa. En la parte del reconocimiento pasivo se encuentra como herramienta Google Hacking, o también es conocido como Google Dorking, es recomendable darle una checada y realizar varias pruebas y actividades con la finalidad de entender el funcionamiento de esta herramienta, a continuación en este link te muestra una base de datos de todos los comandos de Google Hacking que se pueden usar: Google Hacking Database.
«Análisis de vulnerabilidades»
En esta etapa se analizara a detalle la información obtenida en la etapa anterior. Se analizará:
- – Puertos abiertos.
– Servicios detectados.
– Versiones de sistema operativo y servicios.
– Análisis de usuarios.
– Generar diccionarios a la medida.
– Detectar detalles de las soluciones tecnológicas implementadas.
– Análisis de vulnerabilidades.
«Explotación»
Esta etapa es una de las fases de mayor relevancia en las pruebas de intrusión y se enfoca en intentar explotar las vulnerabilidades que se hayan descubierto en las etapas anteriores. El objetivo de esta fase es lograr acceso no autorizado a los sistemas, aplicaciones o datos de la organización para demostrar que existen vulnerabilidades que pueden ser aprovechadas por usuarios malintencionados.
Esta fase incluye la siguientes actividades:
- Identificación de vulnerabilidades explotables: Se identifican las vulnerabilidades que se pueden explotar para obtener acceso no autorizado a los sistemas o aplicaciones.
- Selección de técnicas de explotación: Se seleccionan las técnicas y herramientas que se van a utilizar para intentar explotar las vulnerabilidades identificadas.
- Ejecución de técnicas de explotación: Se seleccionan las técnicas y herramientas que se van a utilizar para intentar explotar las vulnerabilidades identificadas.
- Ejecución de técnicas de explotación: Se lleva a cabo la explotación de las vulnerabilidades mediante la ejecución de las técnicas seleccionadas público.
- Obtención de acceso: Si la explotación tiene éxito, se obtiene acceso no autorizado a los sistemas o aplicaciones.
¿Qué es un exploit? es un programa o código especialmente diseñado para aprovechar una determinada vulnerabilidad y comprometer un recurso.
¿Qué es zero-day? se refiere al hecho de que el proveedor o desarrollador acaba de enterarse de la falla, lo que significa que no cuentan con una solución inmediata.
Los exploits están estrechamente relacionados con los payloads, ya que mientras un exploit es el código o la técnica que aprovecha una vulnerabilidad para permitir que el atacante realice una acción maliciosa, el payload es la carga útil que se entrega al sistema después de que se ha explotado la vulnerabilidad. En otras palabras, un exploit es el medio para lograr el acceso no autorizado a un sistema o software, mientras que el payload es lo que se entrega al sistema para lograr el objetivo del atacante. Por ejemplo, un exploit podrías ser utilizado para aprovechar una vulnerabilidad en un sistema operativo y permitir al atacante ejecutar código malicioso en el sistema, mientras que el payload podría ser un conjunto de instrucciones para que ese código malicioso robe información o cause daño al sistema.
«Post-Explotación»
Una vez que el atacante ha logrado comprometer un sistema, la post-explotación puede incluir acciones como la elevación de privilegios, la instalación de herramientas maliciosas, la creación de cuentas de usuario, la exfiltración de datos y la eliminación de registros. El objetivo final de las post-explotación es maximizar el tiempo que el atacante tiene acceso no autorizado al sistema sin ser detectado.
Es una fase crítica en la que el atacante utiliza diversas técnicas para evadir la detección, ganar mayor control sobre el sistema o red, extraer información adicional y establecer un punto de entrada permanente para futuras actividades maliciosas. También, permite evaluar la efectividad de las medidas de seguridad existentes y proponer mejoras para evitar futuros ataques.
«Informe»
El propósito completo de las pruebas de intrusión es identificar vulnerabilidades y problemas de seguridad que el cliente deba remediar, y estas se comunican a través del reporte, que es el único producto tangible de las pruebas. Un buen reporte proporciona un resumen ejecutivo de los hallazgos, resume las vulnerabilidades y su impacto en el negocio y proporciona recomendaciones para corregirlas. Los pentesters utilizan un enfoque metódico y documentan su metodología como parte del informe para brindar solidez a las pruebas.
En general, el informe se puede dividir en dos secciones principales para comunicar los objetivos, métodos y resultados de las pruebas realizadas a diferentes audiencias:
Resumen ejecutivo: La sección ejecutiva comunica al lector los objetivos específicos de las pruebas y los hallazgos de alto nivel del ejercicio. Esta sección está dirigida a aquellos que estén a cargo de la supervisión y la visión estratégica del programa de seguridad, así como cualquier miembro de la organización que pueda verse afectado por las amenazas identificadas.
Resumen técnico: La sección técnica comunica al lector los detalles técnicos de la prueba y todos los aspectos acordados dentro del ejercicio previo al compromiso. Esta sección describe en detalle el alcance, la información, los vectores de ataque, el impacto y las sugerencias de mitigación.
Tipos de hackers
- Hackers éticos: También conocidos como «sombreros blancos», son hackers que se dedican a probar la seguridad de los sistemas informáticos y redes de una empresa, con el objetivo de identificar vulnerabilidades y ayudar a mejorar la seguridad.
- Hackers maliciosos: También conocidos como «sombreros negros», son hackers que se dedican a violar la seguridad de los sistemas informáticos y redes con fines ilegales o maliciosos, como robo de información, fraude financiero, extorción, entre otros.
- Hacktivistas: Son hackers que se dedican a infiltrarse en sistemas informáticos y redes con fines políticos o sociales, como protesta o para difundir un mensaje.
- Script kiddies: Son hackers sin expertis que utilizan herramientas automatizadas para llevar a cabo ataques, sin tener un conocimiento profundo de cómo funcionan los sistemas informáticos y redes.
¿Qué es la ingeniería social?
Es el arte de convencer a las personas para que revelen información confidencial, los ingenieros sociales dependen del hecho de que las personas desconocen la información valiosa a la que tienen acceso y no se preocupen por protegerla.
Tipos de ingeniería social
- Spear Phishing: es un ataque de ingeniería social que se dirige a grandes empresas o individuos específicos.
- Whaling: es una forma específica de ciberataque de ingeniería social que se dirige a individuos de alto perfil en una organización, como ejecutivos de alto rango, directores, gerentes, y otras figuras importantes con acceso a información privilegiada y recurso críticos.
- Pretexting: es una técnica de ingeniería social en la que un estafador crea un escenario falso o una situación inventada para obtener información confidencial, datos personales o acceso a sistemas y cuentas de una persona u organización. Está técnica involucra la creación de una historia o pretexto para ganar la confianza de la victima y obtener la información deseada.
- Phishing: es una forma de ingeniería social en la que los atacantes engañan a las personas para que revelen información confidencial o instalen malware como ransomeware.
- Baiting: es una táctica de ingeniería social utilizada en ciberataques que implica el uso de señuelos o incentivos para engañar a las personas y obtener acceso no autorizado a sistemas informáticos, información confidencial o datos personales.
«PTES»
El estándar de Ejecución de Penetración (PTES, por sus siglas en inglés) consta de 7 secciones principales que cubren todo lo relacionado a una prueba de intrusión; desde la comunicación inicial y el razonamiento detrás de un Pentesting, seguido de la recopilación de inteligencia y las fases de modelado de amenazas donde los pentesters trabajan detrás de escena para obtener una mejor comprensión de la organización analizada a través de la investigación de vulnerabilidades, explotación y post-explotación. (Si gustas aprender más sobre esta metodologías da clic en el siguientes enlace PTES).
«OWASP»
OWASP (Open Web Application Security Project) es una comunidad internacional sin fines de lucro que se enfoca en mejorar la seguridad del software. Fundada en 2001, su objetivo principal es proporcionar recursos, herramientas, guías y conocimiento para ayudar a las organizaciones a desarrollar, adquirir y mantener aplicaciones web y software más seguros.
Las actividades de OWASP incluyen:
- Documentación y Guías: OWASP proporciona documentos detallados, guías y mejores prácticas para el desarrollo seguro de aplicaciones web y software. Estas guías abarcan una amplia gama de temas, desde principios de seguridad hasta detalles técnicos sobre cómo proteger aplicaciones contra diferentes tipos de ataques.
- Herramientas de Seguridad: La comunidad de OWASP desarrolla y mantiene una serie de herramientas de software de código abierto destinadas a ayudar a identificar y mitigar vulnerabilidades de seguridad en aplicaciones web y software.
- Proyectos de Investigación: OWASP patrocina y apoya proyectos de investigación enfocados en la seguridad del software. Estos proyectos pueden abordar temas específicos de seguridad, como pruebas de penetración, análisis de código, protección de datos, entre otros.
- Lista de las 10 Principales Vulnerabilidades: Uno de los proyectos más conocidos de OWASP es la publicación de la lista OWASP Top 10, que destaca las 10 vulnerabilidades más críticas y comunes que afectan a las aplicaciones web en un periodo de tiempo determinado. Esta lista se actualiza periódicamente para reflejar las tendenciales actuales en ciberseguridad.
«NIST»
- Identificar: La función de identificación ayuda a desarrollar una comprensión organizacional para administrar el riesgo de seguridad para los sistemas, personas, activos, datos y capacidades. Comprender el contexto comercial, los recursos que respaldan las funciones críticas y los riesgos de seguridad relacionados permite a una organización enfocar y priorizar sus esfuerzos, de acuerdo con su estrategia de gestión de riesgos y la necesidades comerciales. Como ejemplos dentro de esta función se encuentra:
- Identificar activos físicos y de software dentro de la organización para establecer la base de un programa de gestión de activos.
- Identificar el entorno empresarial que apoya la organización, incluido el papel de la organización en la cadena de suministro y el lugar de la organización en el sector de infraestructura crítica.
- Identificar las políticas de ciberseguridad establecidas dentro de la organización para definir el programa de Gobernanza, así como identificar los requisitos legales y reglamentarios con respecto a las capacidades de ciberseguridad de la organización.
- Proteger: La función de protección describe las medidas de seguridad adecuadas para garantizar la prestación de servicios de infraestructura crítica. Admite la capacidad de limitar o contener el impacto de un posible evento de ciberseguridad. Los ejemplos dentro de esta función incluyen:
- Protecciones para la gestión de identidades y el control de acceso dentro de la organización, incluido el acceso físico y remoto.
- Establecer una protección de seguridad de datos consistente con la estrategia de riesgo de la organización para proteger la confidencialidad, integridad y disponibilidad de la información.
- Detectar: La función de detección define las actividades apropiadas para identificar la ocurrencia de un evento de ciberseguridad. Permite el descubrimiento oportuno de eventos de ciberseguridad. Los ejemplos dentro de esta función incluyen:
- Garantizar que se detecten anomalías y eventos, y que se comprenda su impacto potencial.
- Implementar capacidades de monitoreo continuo de seguridad para monitorear eventos de ciberseguridad y verificar la efectividad de las medidas de protección, incluidas las actividades físicas y de red.
- Responder: La función de respuesta incluye actividades apropiadas para tomar medidas con respecto a un incidente de ciberseguridad detectado. Admite la capacidad de contener el impacto de un posible incidente de ciberseguridad. Los ejemplos de esta función son:
- Garantizar que el proceso de planificación de la respuesta se ejecute durante y después de un incidente.
- Gestión de las comunicaciones durante y después de un evento con las partes interesadas, las fuerzas del orden y las partes interesadas externas, según corresponda.
- Recuperar: La función de recuperación identifica las actividades apropiadas para mantener los planes de resiliencia y restaurar cualquier capacidad o servicio que se vio afectado debido a un incidente de ciberseguridad. Admite la recuperación oportuna de las operaciones normales para reducir el impacto de un incidente de ciberseguridad. Los ejemplos de esta función son:
- Garantizar que la organización implemente procesos y procedimientos de planificación de la recuperación para restaurar sistemas y/o activos afectados por incidentes de ciberseguridad.
- Implementación de mejoras basadas en lecciones aprendidas y revisiones de estrategias existentes.
«OSSTMM»
El OSSTMM proporciona una metodología para una exhaustiva prueba de seguridad, en este documento se referencia como una auditoría OSSTMM, la cual es una medición precisa de la seguridad a nivel operacional, lo cual evita suposiciones y evidencias anecdóticas.
Para organizar y estructurar su contenido, la metodología se subdivide en los aspectos más importantes de los sistemas de información. Se destacan los siguientes aspectos:
- Seguridad de la Información.
- Seguridad de los Procesos.
- Seguridad en las Tecnologías de Internet.
- Seguridad en las Comunicaciones.
- Seguridad Inalámbrica.
- Seguridad Física.
Estos son los conceptos a tener en cuenta para los exámenes de certificación antes mencionados, además de leer toda la documentación de los links de que se les proporciono, por que dentro del examen contiene términos que se encuentran dentro de la documentación oficial, también es importante comentar que se requiere conocimientos de la herramienta Metasploit framework.