NOISE
04
REVISTA DE CIBERSEGURIDAD
Aspectos a tomar en cuenta antes de un PenTest
Equipo Rojo vs Equipo Azul y el equipo purpura. Pentester vs Herramientas
Explotando vulnerabilidad smb_ms17_10 con EternalBlue
CONTENIDO Aspectos a tomar en cuenta antes de un PenTest
04
Pentest vs Herramientas
08
Equipo rojo vs equipo azul y el equipo purpura
11
Ataques Web ¿Debo preocuparme?
14
Explotando vulnerabilidad smb_ms17_10 con EternalBlue
18
NOISE
REVISTA DE CIBERSEGURIDAD
EDITORIAL En la actualidad los controles blandos o
Seguridad o Ciberseguridad implementados,
suaves como se conocen en auditoria son
identificando amenazas, las cuales podrían
aquellos propios de la empresa, y cuya base es
convertirse en incidentes o brechas, por lo
la confianza, que se considera un valor
tanto, será necesario establecer un plan de
importante, sin embargo, en términos de
acción con el fin de mitigarlas, minimizando la
Seguridad Informática o de Información, se
probabilidad
recomienda ser evitados. Por el contrario los
amenaza.
controles fuertes aunque su palabra infiera
Dos aspectos relevantes al momento de
fortaleza, son tan frágiles como los suaves.
contratar a la empresa que realizará el Pentest,
Las auditorías internas suelen emitir informes
es que debe contar con la experiencia
de cumplimiento, brechas, hallazgos y demás
adecuada
que solo son útiles para demostrar que existen
intachable. De fallar alguno, puede resultar en
debilidades de control interno, que son
consecuencias negativas para el contratante,
necesario subsanar, mediante un plan de
máxime, si se trata de cumplir con una
acción
regulación o norma específica.
No obstante lo anterior, en los últimos meses
En este número abordaremos como el PenTest
se ha demostrado que ni controles fuertes, ni
debe incorporarse a la estrategia corporativa
auditorias son suficiente para verificar que se
de Ciberseguridad, convirtiéndose en un
está realizando adecuadamente el trabajo,
mecanismo
sobre todo cuando hablamos de seguridad de
confianza a las partes interesadas (Stake
la información. Ejemplo de ello, son, casos
Holders).
y
de
materialización
con
o
una
ética
herramienta
como la reciente brecha de seguridad ocurrida
de
la
profesional
que
brinda
Por Nelson Chacon @noise503
en Equifax, y deloitte, donde, las amenazas haberse
mitigado
siguiendo
Director General
aspectos de control como: mantener un
Nelson Chacón Reyes, CDFE
inventario
Asesor en Gobierno de TI
actualizado
de
Activos
de
Información, mantener una adecuada gestión de vulnerabilidades, sistema
de
Mg. Leonardo Castillo, CISA
y acompañarlo de un
monitoreo
y
respuesta
a
Asesor en Auditoria de TI
incidentes, asi como también, implementando
Héctor Jiménez,CSX
medidas de seguridad en el endpoint, a fin de
Cuerpo Técnico
minimizar
Daniel Benavides
la
probabilidad
de
fuga
de
información. Todo lo anterior, puede ser reforzado por las empresas, al contar con un plan anual de seguridad de la información, que entre otras actividades, incluya trabajos de Penetration Test, PenTest , cuya finalidad es obtener una opinión “imparcial” y “objetiva” de la efectividad del esquema de controles de
Arte y Diseño Milagro Jiménez
NOISE REVISTA DE CIBERSEGURIDAD
pudieron
Aspectos a tomar en cuenta antes de un PenTest Mucho se ha escrito acerca de empresas o PenTester al momento de OFRECER sus servicios, es decir, se ha tratado el tema de la ética, profesionalismo, metodologías, etc. pero…pongámonos del lado de la empresa que SOLICITA el servicio, del personal de IT que necesita auditar sus sistemas/aplicaciones/redes perimetrales/etc, que necesita certificar una Norma, un requerimiento de un ente regulador o simplemente establecer fehacientemente que sus sistemas están debidamente protegidos, para ello nos hacemos la siguiente pregunta: ¿qué aspectos se deben tener en cuenta una vez seleccionado el proveedor?. Muchas veces hay una connotación negativa asociada con la preparación de PenTest; que es una tarea agonizante,
irritante y lenta. Sin embargo, este no tiene que ser el caso. Para encontrar y solucionar efectivamente los problemas de seguridad de las aplicaciones, es necesario que haya colaboración y comunicación entre los equipos de seguridad, desarrollo y el negocio. Las organizaciones pueden usar estas pruebas de pentest como un gran ciclo de conversación, y le da a los desarrolladores la oportunidad de comprender las implicaciones del mundo real de escribir código inseguro. Por lo general, las empresas u organizaciones demandantes de servicios de PenTest no suelen tener claro los puntos que se deben tratar con la empresa/PenTester contratada/o para que la evaluación sea exitosa y que en el proceso no exista fuga
04
NOISE REVISTA DE CIBERSEGURIDAD
Por Nelson Chacon @noise503
2- Definir responsables
de información, malos entendidos o incumplimiento de alguna de las partes, sobre todo si es la primera vez que se realiza, y no se cuenta con un área responsable de la seguridad en la empresa.
Probablemente tanto la empresa contratante como la proveedora contarán con un número de personas relacionadas con el área de IT. Sin embargo, no es recomendable tratar temas relacionados con el trabajo de PenTesting con más de dos personas por lado, igualmente, se debe definir UNA persona responsable por cada empresa para una comunicación ordenada y para ser referentes en caso de incidencias. Cada una de estas personas responsables deben ser fácilmente ubicables (mediante cualquier medio que se defina, pero por lo general el teléfono) durante todo el proceso de testeo.
1- Firma de NDA Si bien este es un punto que está más relacionado con cuestiones legales las cuales deben ser consultadas con el abogado de la empresa, no es un detalle que se deba dejar de lado en absoluto. Hay que tener en cuenta que se le confiará al proveedor datos muy sensibles como usuarios y contraseñas, accesos a entornos de pruebas (pre-producción), etc como así también, una vez concluido el trabajo, el PenTester tendrá en su poder, además de lo ya mencionado, datos detallados de como explotar posibles vulnerabilidades encontradas, como obtener datos sensibles, como escalar privilegios, etc. Un NDA debe abarcar estos aspectos y solicitar al proveedor su absoluta reserva para con los datos otorgados, también debe quedar establecido el futuro de esa información una vez concluido el período de testing (almacenamiento seguro, destrucción completa, etc). Usualmente se coloca un tiempo prudencial de vigencia, de acuerdo a nuestras políticas internas, podría ser de uno a dos años, donde el proveedor se compromete a no divulgar ningún aspecto del proceso de la prueba. De nuevo reitero que este documento debe ser redactado por un abogado y no por alguna persona de IT.
Este es un punto controversial, dado que se necesita determinar correctamente lo que se quiere evaluar y hasta qué punto se le permitirá al PenTester proveedor “explotar” las posibles vulnerabilidades encontradas sin causar un daño a servicios activos. Por ejemplo, en entornos críticos de producción donde una Denegación de Servicio (D.o.S.) o un eventual cambio en archivos de configuración pueden incurrir en posibles pérdidas en producción /ganancias/etc. Es por eso que este punto debe ser acordado detalladamente entre las partes y está en la habilidad del Pentester la diferencia de notar errores/ vulnerabilidades y lograr la prueba de concepto (P.o.C) sin causar daño alguno.
Del Ingles Non Disclosure Agreement, o acuerdo de no divulgación o confidencialidad.
05
NOISE REVISTA DE CIBERSEGURIDAD
3- Definir el alcance de la prueba
4- Definir claramente el ámbito ó entorno a testear
(en caso de que éste se realice por fuera de la red del cliente, es decir, externamente) , de manera que el cliente puede identificar claramente de donde provienen los paquetes IP que intentan manipulación de aplicaciones, escaneo de puertos, etc. Este punto debe estar claro desde el inicio, dado que tiene dos finalidades fundamentales: *El cliente guarda en los logs toda la actividad realizada por el PenTester, teniendo así una prueba concreta en caso que éste realice una actividad no autorizada. * Identificar los rangos IP declarados por el PenTester en posibles sistemas IDS y/o firewalls que la empresa auditada pueda poseer.
Una vez definido el alcance a evaluar, se tiene que transmitir al PenTester de manera clara y doblemente revisada para evitar confusiones. Es muy común equivocar tan solo un número en un rango IP o una letra en una URL, por lo que también es una buena práctica corroborar mediante WHOIS que se estableció el ámbito adecuado. Al equivocar el objetivo (target), la posibilidad de problemas está presente, ya que se estarían testeando sistemas/aplicaciones que podrían no pertenecer a la propia empresa cliente, generando problemas en la credibilidad del trabajo, pérdida de tiempo y cuestiones de índole legal.
5- Definir tiempos (fechas, ventana horaria para testeo, duración del trabajo, etc).
Todo intercambio de datos entre cliente-proveedor, tanto la información básica al inicio del trabajo (que por lo general incluye información sensible, como credenciales de acceso de aplicaciones, direcciones IP con sistemas en desarrollo y poco protegidos, etc) como así también el informe o reporte final, el cual contiene información detallada de posibles vulnerabilidades, pruebas de concepto y pasos para la explotación, debe ser manipulado con especial cuidado entre las personas responsables definidas (como se trató anteriormente) y mediante canales de comunicación seguros.
Dependiendo del tipo de análisis que se lleve a cabo, el proceso de PenTesting puede generar algunos inconvenientes en los sistemas objetivos, desde caída de performance hasta una involuntaria denegación de servicio. Es por eso que, teniendo en cuenta la criticidad del entorno (por ejemplo, si se está auditando un sistema en producción), es conveniente coordinar con el PenTester contratado las ventanas horarias para el proceso de evaluación, evitando los inconvenientes mencionados en horarios pico. Dicha ventana horaria deberá ser respetada por el PenTester.
Al cierre Recuerde entregar las buenas noticias sobre módulos de construcción segura, etc., esto crea un refuerzo positivo y un agradable clima de trabajo.Si preparas a los equipos y los alineas con lo que se probará. Puede facilitar una línea de comunicación más abierta y positiva entre ellos.Espero que estos consejos ofrezcan una guía para preparar su programa de PenTest.
6- Identificación de tráfico Es responsabilidad del PenTester declarar desde que rangos de IP realizará el Test
06
NOISE REVISTA DE CIBERSEGURIDAD
7- Método de intercambio de información
SABÍAS QUE... Los
delitos informáticos son conductas en que él o los delincuentes se valen de programas informáticos para cometer
delitos como:
*Implantación de virus, *Suplantación de sitios *Web, estafas, *Violación de derechos de autor,
www.noise-sv.com
NOISE REVISTA DE CIBERSEGURIDAD
*Piratería, etc.
Pentester vs Herramientas El test de penetración y el escaneo de vulnerabilidades usualmente se confunden, y esto se debe a que los proveedores de servicios los ofrecen como parte una verificación de seguridad exponiéndolos como una actividad específica, lo que impacta en las organizaciones al seleccionar un tipo de servicio cuando en realidad necesitaban otro. Un análisis de vulnerabilidad es la tercera fase de un ciclo de Ethical Hacking o Pentesting, se encarga de realizar un examen automatizado de alto nivel que identifica el nivel de exposición de un equipo o sistema informático ante amenazas conocidas o reportadas por los proveedores de Software, es la última fase o etapa que ejecuta un Ethical Hacker. Una prueba de penetración permite un nivel más a profundidad y escala un
peldaño adicional al análisis de vulnerabilidades, llegando hasta verificar si la amenaza detectada en el análisis de vulnerabilidades puede ser “Explotada” por un atacante (hacker). Generalmente se realiza sobre equipos y sistemas en producción y es ejecutada por un profesional que posee el conocimiento técnico necesario para llevar acabo las pruebas, obteniendo evidencia del éxito, escalando privilegios, eliminando “huellas” y finalizando en abandonar el sistema “atacado”(explotado).
08
NOISE REVISTA DE CIBERSEGURIDAD
Por Nelson Chacon @noise503
exigencias de controles referidos a estándares internacionales como ISO27002 (control 12.6 Gestión de las vulnerabilidades técnicas). Para garantizar el éxito de un escaneo y análisis de vulnerabilidades, se deben identificar los equipos y sistemas que procesan información crítica del negocio, así también, deben ser ejecutados, por personal capacitado y con experiencia para ello.
Los escaneos de vulnerabilidades de alta calidad pueden buscar más de 50,000 vulnerabilidades y se requieren según los requisitos de PCI DSS , FFIEC y GLBA . Como se explicó en el párrafo anterior, estos escaneos pueden ser automáticos o manuales y dependerá de la complejidad de su configuración, para obtener sus resultados, es decir, podríamos obtenerlos en minutos o en horas..
Una prueba de penetración simula a un pirata informático que intenta introducirse en un sistema empresarial mediante la explotación de vulnerabilidades. Los analistas reales, a menudo llamados PenTester, intentan probar que las vulnerabilidades pueden ser explotadas. Usando métodos como el descifrado de contraseñas, el desbordamiento de búfer y la inyección de SQL, es decir, buscan evidenciar que la amenaza identificada, puede llegar a ser utilizada por un atacante malicioso y comprometer el activo de información más valioso para el negocio: La Información. Las pruebas de penetración son un enfoque extremadamente agresivo para encontrar y eliminar vulnerabilidades. El aspecto principal que diferencia las pruebas de penetración del análisis de vulnerabilidad es el elemento humano en vivo, un pestest, no puede ejecutarse exitosamente sin la interacción humana, el pentest automático, simplemente no existe. Todas las pruebas de penetración son completadas por seres humanos muy experimentados y muy técnicos, que
El análisis de las vulnerabilidades, que se realiza dentro de un contexto de mejora continua (Planear – Ejecutar – Verificar – Actuar), permite un trabajo en conjunto, entre, los responsables de la Seguridad Informática o de la Información, con el administrador de Infraestructura y/o sistemas del área de Tecnología. Tiene como objetivo primordial, descartar “falsos/positivos” y elaborar planes de remediación a fin de superar las debilidades identificadas por la herramienta. Todo lo descrito, se conoce como Gestión de vulnerabilidades y se encuentra muy asociado al análisis de riesgo. Asimismo, al ejecutarlo, cumplimos con 09
NOISE REVISTA DE CIBERSEGURIDAD
Los análisis de vulnerabilidad, en ocasiones, pueden ser ejecutados de manera “manual”, es decir, no seleccionando las opciones que de fabrica vienen pre-configuradas vienen en las herramientas. Lo anterior, permite, además de la interacción humana, utilizar la experiencia del especialista en seguridad para obtener mejores resultados durante la ejecución de esta tarea o actividad.
El PenTester es un profesional que dentro de su perfil técnico posee conocimientos sobre: • Metodologías de ataque de sombrero negro (por ejemplo, ataques de acceso remoto, inyección de SQL) • Pruebas internas y externas (es decir, perspectiva de alguien dentro de la red, perspectiva del pirata informático a través de Internet) • Tecnologías de front-end web (p. Ej., Javascript, HTML) • Lenguajes de programación de aplicaciones web (por ejemplo, Python, PHP) • API web (por ejemplo, restful, SOAP) • Tecnologías de red (por ejemplo, firewalls, IDS) • Protocolos de red (por ejemplo, TCP / UDP, SSL) • Sistemas operativos (por ejemplo, Linux, Windows) • Lenguajes de scripting (por ejemplo, python, pearl) • Herramientas de prueba (por ejemplo, Nessus, Metasploit.
¿Ahora bien, Que tan frecuente necesito un Test de penetración?, dependerá de normas de cumplimiento (PCI DSS), normas de certificación (ISO 27001), o normas de entes reguladores, generalmente, por mejor práctica, se aconseja realizarlo al menos una vez al año, analizar los resultados, planificar la remediación de los hallazgos, elaborar controles para mitigar los riesgos que surjan.
En resumen, el Pentesting, proporciona una mirada más profunda a la seguridad con que hemos protegido los datos de una organización.
1 Payment Card Industry Data Security Standard, estándar de seguridad de tarjetas de crédito 2 Federal Financial Institutions Examination Council, Consejo de instituciones financieras. 3 Gramm-Leach-Bliley Act, Ley de protección de consumidores de servicios financieras.
10
NOISE REVISTA DE CIBERSEGURIDAD
Ambas pruebas son importantes, juntas fomentan la seguridad de red e infraestructura. Los escaneos de vulnerabilidad ofrecen una gran información semanal, mensual o trimestral sobre la seguridad de su red, mientras que las pruebas de penetración son una forma muy completa de examinar en profundidad la seguridad. Las pruebas de penetración representan un costo adicional a las organizaciones, no obstante, el retorno de dicha inversión, está respaldado por la identificación proactiva de amenazas que expongan la información que se pretende proteger. Además, se debe considerar que es ejecutada por profesionales que simulan ataques en tiempo real a nuestros sistemas (de manera autorizada), examinando cada rincón del negocio, con el objetivo primordial de encontrar una posibilidad de compromiso.
podrán poner a prueba las reglas de negocio, cosa que jamás podrá ser realizado por una herramienta. Un aspecto sumamente importante del Pentesting, es que, siempre debe ser ejecutado por un Proveedor o Tercero, con credenciales adecuadas, nunca, debe ejecutarse por personal interno, ya que pierde objetividad total en la consecución de resultados esperados.
Equipo Rojo vs Equipo Azul y el equipo purpura. deberán monitorear los servicios expuestos en la red, identificar posi bles incidentes de seguridad, establecer contramedidas y evitar a toda costa que los del equipo rojo puedan explotar cualquier posible vulnerabilidad. En este ejercicio el equipo Rojo podrá ejecutar no solo ataques propios de tecnología, sino que deberán probar todos los controles fuertes PPT (People, Process and Technology), incluso usar ataques de phising, ingeniería social, algunas veces hasta denegación de servicios, caídas de sistemas completos, todo con el objetivo de poner a prueba la resiliencia de la infraestructura y el equipo azul.
El PenTest se ha vuelto una necesidad dentro de la estrategia corporativa, sin embargo en los últimos años la modalidad ha cambiado un poco desde el tradicional Sombrero Blanco, el cual promete realizar una prueba ética, es decir si encuentra debilidades nunca la usara o revelara a terceros para beneficios propio. Una nueva práctica para el PenTest es la de equipo rojo y equipo azul, Jerga militar que utilizada para identificar un ejercicio táctico. Esta modalidad va más allá del PenTest tradicional, donde un equipo de profesionales realiza actividades propias de un atacante, sin ser detectados por el equipo azul, quienes son los profesionales que 11
NOISE REVISTA DE CIBERSEGURIDAD
Por Nelson Chacon @noise503
Si se usan equipos internos, un ejercicio interesante en este modelo, es el intercambiar los papeles, de esta manera de fortalecen las competencias de cada uno de ellos, de esta manera se pueden crear antagonismos o competencias innecesarias entre ambos equipos. Grandes compañías ya usan este modelo y con gran éxito, y se está volviendo una práctica común, sin embargo en Latinoamérica todavía no ha llegado, probablemente porque la seguridad de la información la siguen viendo como un producto y no como un proceso.
El final del ejercicio debe traer conocimiento y experiencia para los dos equipos, el benchmarking o compartir los resultados de ambos equipos deberá de dar fortaleza a la empresa, ya que cualquier grieta encontrada en la seguridad podrá ser mitigada y fortalecida, y técnicas de ataque ayudaran al equipo azul a ver la perspectiva del atacante. Este conocimiento es trans
1 Inicio
3
2 Equipo Rojo
Equipo Azul
Practica sus Tácticas, Técnicas y Procedimientos (TTP) para identificar y explotar vulnerabilidadess.
Practica sus Tácticas, Técnicas y Procedimientos (TTP) en contra del atacante para evaluar la detección y respuesta.
12
4 Equipo purpura Evalúa el trabajo realizado por ambos equipos para fomentar y ayudar a madurar e incrementar la capacidad.
NOISE REVISTA DE CIBERSEGURIDAD
ferido mediante el equipo purpura, o el orquestador de ambos equipos donde su objetivo principal es recolectar, mediar y analizar las conductas de ambos equipos, mejorar controles, proponer cambios y estrategias corporativas. Ambos equipos pueden ser internos o externos, utilizando compañías especializadas en estos servicios, o profesionales de la misma empresa que deberán ser seleccionados con mucho cuidado por sus habilidades técnicas, compromiso, ética y responsabilidad. Ambos modelos tienen sus ventajas y desventajas que deberán ser evaluados según la necesidad de cada empresa.
El equipo azul por su lado deberá hacer uso de toda su artillería pesada TTP (Tactics, Techniques, Procedures), estrategia de respuesta, eso va desde el SOC, herramientas de análisis de tráfico de red, SIEM, etc. Acá la clave del éxito es que el equipo azul deberá ser capaz de utilizar su experiencia, intuición, y confiar solo en las herramientas automatizadas de monitoreo, ya que actualmente las amenazas utilizan los canales válidos para inyectar los ataques. El éxito de esta estrategia de defensa, es que pone a prueba no solo a la parte tecnológica de la empresa, sino a todos los empleados, reglas de negocio, políticas y procedimientos, tal cual en la guerra real, es válido todo. Sin embargo se deberá tener reglas de combate (rules of engagement) delimitar las bajas aceptables, es decir las pruebas de concepto no deberán comprometer o dañar los activos reales.
Ataques Web, ¿Debo preocuparme? ¿Qué tan importante es el sitio web de mi empresa?
información que se comparte debe estar en base de necesidad de conocer y bajo su control. Lo que no quieres hacer es dejar la ventana abierta para que cualquier transeúnte pueda alcanzar y tomar lo que quiera de forma gratuita, y lo ideal es que te asegures de que si alguien arroja un ladrillo, la ventana no se rompa. Desafortunadamente, los servidores web son programas complejos y, como tales, tienen una alta probabilidad de contener una cantidad de errores, y estos son explotados por los miembros menos escrupulosos de la sociedad para tener acceso a datos que no deberían estar viendo. También existen riesgos asociados con el lado del
Muchas empresas, organizaciones e individuos tienen colecciones de páginas alojadas en servidores que entregan una gran cantidad de información al mundo en general. Las organizaciones lo utilizan para publicidad y para comunicarse con sus clientes fácilmente y al tener una presencia en la web, ¡expandes tu mercado significativamente! Entonces, ¿por qué no nos preocupamos por la seguridad web? Su sitio web es como un escaparate de una empresa que utiliza para publicidad y exhibe información relacionada con su negocio principalmente. Pero toda la 14
NOISE REVISTA DE CIBERSEGURIDAD
Por Yubiny Villalta
cliente de la ecuación, como su navegador. Hay una serie de vulnerabilidades que se han descubierto que permiten que un sitio web malicioso comprometa la seguridad de una máquina cliente que hace una conexión con ellos. Si lo vemos en términos de números, un sitio web de una empresa pequeña podría costar aproximadamente unos tres mil dólares al año, mantenimiento, alojamiento, etc. Para una empresa más grande podríamos hablar de cientos de miles de dólares, entre licencias, ancho de banda, infraestructura y demás.
Los PenTest o pruebas de penetración, sirven exactamente para ese fin, hoy nos enfocaremos en uno de los ataques más explotados, la falta de validación de datos.
¿Qué es la validación de datos?
Por ejemplo, Imagine el campo de tarjeta de crédito para el carrito de compras de una aplicación. En primer lugar, el número de tarjeta de crédito solo constará de dígitos. Además, la mayoría de los números de tarjetas de crédito tienen solo 16 dígitos, pero existen algunos que serán menos. Entonces, la primera rutina de validación será una verificación de longitud. ¿La entrada contiene de 14 a 16 caracteres? El segundo control será por contenido. ¿La entrada contiene algún carácter que no sea un número? Podríamos agregar otro cheque al sistema que determine si los datos representan un número de tarjeta de crédito razonable o no. El valor "0000111122223333" definitivamente no es un número de tarjeta de crédito, pero ¿qué pasa con "4435786912639983"? Una función simple puede determinar si un valor de
Pero qué pasa si mi sitio web es vulnerado, ¿cuánto cuesta recuperarme? Pues depende, si es un sitio meramente informativo quizá un par de horas o días, claro si tienes respaldo de tu sitio, pero si te dedicas el Comercio Electrónico, o brindar servicios entonces las cosas cambian radicalmente, a tus costos de recuperación deberás incluir: 1. Pérdida de credibilidad. 2. Fuga de clientes. 3. Multas de entes reguladores. Si hacemos la suma podrían ser cientos de miles a millones, o incluso hasta la quiebra de tu empresa, entonces surge la siguiente pregunta ¿puedo prevenir un ataque web?, la respuesta aunque suene tajante y negativa es “NO”. Pero si puedo minimizar el impacto.
15
NOISE REVISTA DE CIBERSEGURIDAD
Los ataques de validación de datos intentan enviar datos que la aplicación no desea recibir. Normalmente, una aplicación realizará algún tipo de control en la entrada del usuario. Esta comprobación intenta garantizar que los datos sean los que se desean recibir.
16 caracteres satisface la suma de com-
Juguemos al PenTest, que comienze la diversión.
probación requerida de los números de tarjeta de crédito válidos. Las rutinas disponibles públicamente pueden determinar la validez y el tipo de tarjeta de un número de tarjeta de crédito de 15 caracteres que comienza con un 3 y donde el segundo dígito es un 4 o un 7.
Buffer Overflow Para ejecutar un ataque de desbordamiento de búfer, simplemente vuelca la mayor cantidad de datos posible en un campo de entrada. Este es el ataque más brumoso y poco elegante, pero útil cuando devuelve un error de aplicación. Perl es muy adecuado para esta tarea. Una instrucción creará la longitud necesaria para lanzar el ataque: $ perl -e ‘print „a” x 500’ Este comando enviara el carácter a 500 veces Ahora se lo podemos inyectar a nuestra víctima y ver qué sucede:
Para evitar estos ataques, debemos garantizar que nuestras aplicaciones consideren lo siguiente:
1. Entradas no esperadas. Acá se engloban los caracteres especiales que pueden terminar en un sql injection, Cross-Site Scripting, o que devuelvan errores crudos de la plataforma de tecnología usada, lenguaje de programación, motor de base de datos, versión de servidor de aplicaciones.
$ curl https://www.victim.com/login.php?user=`perl –e ‘print „a” x 500’`
En algunos casos este tipo de ataque permite inyectar nuevos comandos, es difícil de producir, pero fácil de recrear una vez que se ha expuesto.
2. Ejecución de comandos. 3. Buffer Overflows
Este es el mas común de acuerdo al OWASP top 10, y es que nuestros campos textos no validan los caracteres especiales utilizados para concatenar una instrucción sql, en nuestro bloq elaboramos una pequeña prueba para validar si su sitio es vulnerable. http://www.noise-sv.com/como-saber-si-mi-pagina-es-vulnerable-a-sql-injection/
1 desbordamiento de búfer
16
NOISE REVISTA DE CIBERSEGURIDAD
SQl Inyection
NOISE CIBERSEGURIDAD
¿Qué es un delito informático? Un delito informático es un acto dirigido contra la confidencialidad, la integridad y la disponibilidad de los sistemas informáticos, redes y datos informáticos, así como el abuso de dichos sistemas, redes y datos.
Tipos de delitos informáticos Delitos contra la confidencialidad la integridad y la disponibilidad de los datos y sistemas informáticos. Acceso ilícito a sistemas informáticos. Interceptación ilícita de datos informáticos. Interferencia en el funcionamiento de un sistema informático. Abuso de dispositivos que faciliten la comisión de delitos. Delitos Informáticos. Falsificación informática mediante la introducción, borrado o supresión de datos informáticos. Fraude informático mediante la introducción, alteración o borrado de datos infomáticos, o la interferencia en sistemas informáticos.
Delitos relacionados con el contenido Producción, oferta, difusión, adquisición de contenidos de pornografía infantil por medio de un sistema informático o posesión de dichos contenidos en un sistema informático o medio de almacenamiento de datos.
Delitos relacionados con infracciones de propiedad intelectual y derechos afines Un ejemplo de este grupo de delitos es la copia y distribución de programas informáticos o piratería informática.
Tutorial Explotando vulnerabilidad smb_ms17_10 con EternalBlue Por Daniel Benavides
asimismo como explotarla, se trata de la vulnerabilidad del boletín de microsoft del servicio SMB ms17_010.
El análisis de vulnerabilidades es una de las fases más importantes en un test de penetración, pero es importante mencionar que no solamente se trata de ejecutar una herramienta y sacar un listado con las posibles vulnerabilidades de un sistema o una red entera, si no también se trata de validar por nuestra cuenta si eso es totalmente verídico, eso hace que un test de penetración sea efectivo y demostrable, y no solo de palabra como muchos piensan y hacen afuera. A continuación haremos una demostración del reconocimiento de una vulnerabilidad que afectó a miles de equipos y servidores a nivel mundial, y
IP atacante -----> 192.168.1.8 (Kali Linux)
18
NOISE REVISTA DE CIBERSEGURIDAD
IP atacado ------> 192.168.1.3 (Windows 7)
En el lado del atacante, primero debemos actualizar la base de msfvenom para poder contar con el reconocimiento de la vulnerabilidad en los equipos (o toda una red). Como especificamos, nuestro conejillo de indias tiene la ip 192.168.1.3 entonces ejecutamos el comando rhosts + la ip de nuestra víctima y luego iniciamos el escaneo (exploit). En efecto, nuestro host de prueba posee la vulnerabilidad Una vez actualizada la base, iniciamos la consola de msfvenom utilizando el comando msfconsole. Iniciado la sesión, ejecutamos el comando use auxiliary/scanner/smb/ y tabulamos dos veces para ver las opciones, luego seleccionamos el que nos interesa,
MS17-010
Ahora nos queda indicar que iniciaremos una sesión en reversa utilizando el script eternalblue. Hacemos referencia a el, use exploit/windows/smb/ms17_010_eternalblue. Para ver más opciones, de igual forma utlizamos
smb_ms17_010.
Indicamos que el host a explotar es el que tiene la ip de nuestra víctima, a diferencia del escaneo que era rhosts, para utilizar eternalblue únicamente es rhost (en singular) porque la explotación se lleva a cabo de uno en uno, solo el reconocimiento si puede incluir el barrido de toda una red.
Utilizamos el comando show options para listar las opciones con las que contamos, para esta prueba únicamente utlizaremos el comando RHOSTS (Que está en plural porque podemos escanear ya sea un equipo en específico o toda una red, por ejemplo el de una empresa).
19
NOISE REVISTA DE CIBERSEGURIDAD
show options.
En el ambiente del atacante, ya es posible navegar entre directorios con la sesión de CMD establecida, ubicamos la carpeta que hemos creado y listamos el contenido. Observe que son los mismos que listamos en el paso anterior.
Ahora si, viene la magia, intentamos crear la sesión con el comando EXPLOIT. Observe que empiezan a aparecer en pantalla los detalles de la conexión
Dejaremos un pequeño regalito a nuestra víctima, un simple archivo de texto indicandole que ha sido hackeada, echo “YOU HAVE BEEN HACKED” > Prueba-Hacking.txt y procedemos.
Esperemos unos segundos y ¡BINGO! Aparece en pantalla una sesión del CMD. Verificamos la IP con el comando ipconfig y en efecto se trata de nuestra víctima.
Nos ubicamos del lado del atacado y el archivo se crea justo con el contenido que hemos indicado.
20
NOISE REVISTA DE CIBERSEGURIDAD
Para esta demostración, todo se está manejando en un ambiente controlado, por lo que del lado de la víctima se creó una carpeta que recibe el nombre de PRUEBA-NOISE, y contiene una serie de documentos random.
Hemos observado como tomar el control total de un host utilizando la vulnerabilidad smb_ms17_010, asimismo hemos dejado un pequeño “regalo” que ha sido un archivo de texto, pero pudo haber sido peor, inyectar wannacry por ejemplo o cualquier otro tipo de malware que pueda causar estragos. La moraleja de esta demostración hace referencia a la importancia de tener nuestros equipos actualizados (tanto parches de sistemas operativos como firmas de antivirus) si este equipo hubiese tenido la actualización que cubre la vulnerabilidad de smb_ms17_010 o un buen antivirus, no hubiese sido posible establecer la conexión maliciosa. NOISE Ciberseguridad se pone a tu disposición para validar que tan vulnerable es tu red y asimismo para cubrir cualquier falla de seguridad para evitar un desastre.
Si quieres
ser encontrado Publícate AQUÍ
Contáctanos: informacion@noise-sv.com 79302011 / 72355175
Este contenido es sólo para fines educativos. Cualquier acción o actividad relacionada con el material contenido en esta revista es de su exclusiva responsabilidad. El mal uso de la información en esta revista puede resultar en cargos criminales contra las personas en cuestión. Los autores y NOISE Ciberseguridad no serán responsables en caso de que se presenten cargos penales contra cualquier persona que abuse de la información de esta revista para violar la ley.
21
NOISE REVISTA DE CIBERSEGURIDAD
Escribenos a: informacion@noise-sv.com Tel. 7930-2011 / 7235-5175
Disclaimer:
NOISE CIBERSEGURIDAD
SERVICIOS LEGALES. Creación o adecuación de contratos laborales y de proveedores asegurando la protección de datos y seguridad de la información
Asesoría y representación legal frente a delitos informáticos de forma judicial y extrajudicial.
Asesoría en privacidad y protección de datos. Repercusiones legales.
Capacitaciones en protección de datos y delitos informáticos en la empresa.
Firma Electrónica.
Peritaje Informático.
Creación del Manual legal de negocios y cumplimiento del marco legal.
www.noise-sv.com informacion@noise-sv.com Teléfonos: 25572078 / 79302011
ESPERA NUESTRA Quinta EDICIÓN http://www.noise-sv.com/ Teléfonos : 7930-2011/ 7235-5175