Archive for Seguridad Informática

enero 5th 2018

Microprocesadores vulnerables: ¿qué son Meltdown y Spectre?

Número de lecturas: 1082
{lang: 'es-419'}

La innovación en microprocesadores está en la base del progreso tecnológico: una industria que demanda velocidades de ejecución cada vez mayores, y que ha generado un progreso enorme a lo largo de las últimas décadas. Por eso, las nuevas vulnerabilidades descubiertas en los microprocesadores de todos nuestros dispositivos modernos y comunicadas de manera general ayer, Meltdown y Spectre, tienen un nivel de criticidad tan sumamente elevado, aunque en la práctica poco podamos hacer con respecto a ellas.

¿Qué deberíamos saber al respecto? Fueron descubiertas por investigadores en seguridad: la primera, Meltdown, se debe al trabajo independiente de tres equipos en la Universidad Técnica de Graz, en Cyberus Technology y en Google Project Zero; la segunda, Spectre, también en Google Project Zero y por el investigador Paul Kocher. El descubrimiento, como ocurre en muchas ocasiones en cuestiones relacionadas con la seguridad, se remonta a hace algunos meses, durante los cuales han podido presuntamente ocurrir cosas como que algunos de los implicados se preparasen para ofrecer seguridad a sus usuarios, y otros se dedicasen a vender rápidamente acciones de sus propias compañías.

¿En qué consisten? Todos los microprocesadores modernos utilizan una serie de capacidades de ejecución especulativa para los accesos de memoria: el microprocesador no solo lleva a cabo lo que le pedimos, sino que dedica una parte de sus recursos a especular que una condición determinada, por ejemplo, será verdadera, y a llevar a cabo los accesos a memoria correspondientes a que así fuese, y así optimizar su tiempo de ejecución. Si finalmente esa especulación no resulta cierta, las instrucciones ejecutadas especulativamente son descartadas. Sin embargo, aunque esa especulación y ese descarte no tienen ningún efecto en la ejecución de los programas (además de acelerarla, que no es poco), sí producen cambios en los componentes del microprocesador, tales como, por ejemplo, cargar determinados datos en la cache. La presencia de esos datos en la memoria cache o en otros componentes del microprocesador es detectable porque su acceso es más rápido que si no estuvieran ahí, y eso podría permitir el acceso a información sensible. Básicamente, hablamos de vulnerabilidades que, en el caso de Meltdown, rompen la frontera entre las aplicaciones del usuario y el sistema operativo, permitiendo así que un programa malicioso pueda acceder a la memoria y, por tanto, a datos de otros programas o del propio sistema operativo. En Spectre, más difícil de explotar que Meltdown pero también más difícil de parchear o solucionar, hablamos de la ruptura del aislamiento entre distintas aplicaciones, lo que permite que una aplicación maliciosa pueda engañar a otras aplicaciones sin errores para obtener datos de las mismas.

Todos los microprocesadores modernos utilizan ejecución especulativa, y de hecho, es una funcionalidad que está en la base de sus prestaciones y que los microprocesadores de Intel llevan a cabo de una manera particularmente agresiva. Los parches que se han puesto en marcha hasta el momento son una primera solución, ponen bajo control o eliminan las funciones especulativas, y provocan al hacerlo pérdidas de prestaciones de hasta un 30%. Renunciar a la ejecución especulativa no parece el camino a seguir, y la solución final podría demorarse bastante tiempo, durante el cual, indudablemente, surgirán actores capaces de explotar las vulnerabilidades en sistemas que no hayan sido parcheados.  Algo tan evidente como que debes aplicar los correspondientes parches de seguridad no es en realidad tan sencillo: aunque en muchos casos esos parches se aplican de manera automática, no todos los usuarios tienen la cultura adecuada como para aplicarlos regularmente. Pero además, la solución debe considerarse como algo temporal: a lo que nos dirigimos es a un replanteamiento fundamental sobre el uso de la ejecución especulativa en microprocesadores, un proyecto de nueva arquitectura que solucione estos problemas de la manera adecuada que llevará mucho tiempo.

¿Es normal que pasen estas cosas? Sí, desgraciadamente, es lo que tiene que la industria avance a la velocidad que avanza. ¿Quiere decir que todo es vulnerable? ¿Estás en riesgo? Si simplemente usas un dispositivo, lo normal será que no, porque las vulnerabilidades no son suficientes – o no en su estado actual – para, por ejemplo, comprometer tu máquina a través de su navegador. Apple, por ejemplo, ha confirmado que todos sus dispositivos, tanto ordenadores como smartphones, están afectados, aunque no se conoce todavía ningún esquema de ataque, y dado que dichos ataques precisan de una aplicación o programa instalado en el dispositivo, recomiendan instalar únicamente software procedente de fuentes fiables. El riesgo fundamental es para los proveedores de servicios de computación en la nube, que por lo general ya habrán aplicado los correspondientes parches a costa de un descenso en su rendimiento, con todo lo que ello conlleva en términos de coste. Básicamente, un problema para el que no vas a poder hacer nada más – ni nada menos – que seguir una serie de instrucciones cuando estas vayan llegando, que debería servirte para extremar la precaución y las rutinas de seguridad – nunca es malo que lo hagas – y que se mueve a unos niveles que están muy por encima del usuario común.

Fuente:

enriquedans.com

diciembre 19th 2017

Libro sobre Auditoria Informática y Seguridad para no profesionales del sector

Número de lecturas: 1600
{lang: 'es-419'}

Interesante libro de Seguridad Informática donde se le da otro enfoque y aclara varios conceptos.

Aca el indice del mismo:

Contenido

Capítulo 1 ………………………………………………………………………………………………… 4
¿Por qué y Para qué debo certificar mi empresa? …………………………………….. 4
Capítulo 2 ………………………………………………………………………………………………… 8
Por dónde empezar y como ……………………………………………………………………. 8
Capítulo 3 ………………………………………………………………………………………………. 19
Identificando activos y su clasificación. ISO 55001 …………………………………. 19
Capítulo 4 ………………………………………………………………………………………………. 32
La Gestión del Riesgo y la Continuidad del Negocio. ISO 22301 …………….. 32
Características del análisis de impacto ……………………………………………………………………. 41
Consideraciones durante el desarrollo del BIA …………………………………………………………. 42
Ventajas de la realización de un análisis de impacto …………………………………………………. 42
Capitulo 5 Auditorias: ………………………………………………………………………………. 52
No es tan fiero el Lobo como lo pintan. ………………………………………………….. 52
Vulnerabilidades y Ataques Informáticos ……………………………………………………………. 56
Auditoria de Redes Lógicas ……………………………………………………………………………………. 59
Auditoria Red Física ………………………………………………………………………………………………. 61
Auditorias de Sistemas Operativos Servidor / Cliente. ………………………………………………. 69
Capítulo 6 ………………………………………………………………………………………………. 72
Las Bases de Datos y su Auditoria: Motor SGDBR y Desarrollo. …………….. 72
Donde descansa la mayoría de la información de nuestra empresa. …………………………… 72
Auditoria de Base de Datos y Desarrollo ………………………………………………………………….. 72
Capítulo 7 ………………………………………………………………………………………………. 94
Las conclusiones y la traducción a un término universal: el Coste. …………… 94
Capítulo 8 …………………………………………………………………………………………….. 104
La Nomenclatura y Estructura de las Normas ……………………………………….. 104
Normas ISO – ISO / IEC – ISO – UNE. ……………………………………………………………………… 104
Capítulo 9 …………………………………………………………………………………………….. 106
Políticas Organización y Seguridad de la Información. ………………………….. 106
Dominio 5 & 6…………………………………………………………………………………………………….. 106
Capítulo 10 …………………………………………………………………………………………… 107
Recursos Humanos. …………………………………………………………………………… 107
Dominio 7 ………………………………………………………………………………………………………….. 107
Capítulo 11 …………………………………………………………………………………………… 108
Manual de Auditoria para no Auditores
Gestión de Activos. ISO 55001 ……………………………………………………………. 108
Dominio 8 ………………………………………………………………………………………………………….. 108
Capítulo12 ……………………………………………………………………………………………. 109
Control de Accesos Físicos y Lógicos ………………………………………………….. 109
Dominio 9 ………………………………………………………………………………………………………….. 109
Capítulo 13 y 14 ……………………………………………………………………………………. 110
Cifrado y Seguridad Física y Ambiental. ………………………………………………. 110
Dominios 10 -11 – ISO 14001 ………………………………………………………………………………… 110
Capítulo 15 …………………………………………………………………………………………… 112
Seguridad Operativa. ISO 20000 …………………………………………………………. 112
Dominio 12 ………………………………………………………………………………………………………… 112
Capítulo 16 …………………………………………………………………………………………… 118
Seguridad en las Telecomunicaciones. ISO 27010 …………………………………… 118
Dominio 13 ………………………………………………………………………………………………………… 118
Capítulo 17 …………………………………………………………………………………………… 122
Adquisición, Desarrollo y Mantenimiento de los Sistemas de Información. …. 122
Dominio 14 ………………………………………………………………………………………………………… 122
Capítulo 18 …………………………………………………………………………………………… 127
Relaciones con suministradores. ISO 20000 ……………………………………….. 127
Dominio 15 ………………………………………………………………………………………………………… 127
Capítulo 19 …………………………………………………………………………………………… 129
Gestión de Incidentes de Seguridad. ISO 20000 ………………………………….. 129
Dominio 16 ………………………………………………………………………………………………………… 129
Capítulo 20 …………………………………………………………………………………………… 131
Continuidad del Negocio ISO 22301 / 22320. …………………………………………… 131
Dominio 17 ………………………………………………………………………………………………………… 131
Capítulo 20 …………………………………………………………………………………………… 138
Cumplimiento Legal. ISO 19600 ………………………………………………………….. 138
Dominio 18 ………………………………………………………………………………………………………… 138
Capítulo 21 …………………………………………………………………………………………… 142
ISO 27007 …………………………………………………………………………………………. 142
¿Cómo se auditan los controles por parte del Auditor?……………………………… 142
Capítulo 22 …………………………………………………………………………………………… 173
La Ingeniería Social, la zona muerta del Derecho actual. ………………………….. 173
Capítulo 23. ………………………………………………………………………………………….. 196
Manual de Auditoria para no Auditores
Las metodologías OWASP / OSSTMM soporte para la verificación de la
normativa. …………………………………………………………………………………………….. 196
Capítulo 24 …………………………………………………………………………………………… 217
OSSTM versión 3 : 2010 ………………………………………………………………………… 217
Mapa de la Seguridad según OSSMT ……………………………………………………… 220
Capítulo 25. ………………………………………………………………………………………….. 403
Manos a la obra, la parte práctica. ……………………………………………………….. 403
Capítulo 26. ………………………………………………………………………………………….. 419
Como realizar una investigación técnica de calidad. ……………………………… 419

Lo pueden descargar AQUI

 

 

noviembre 29th 2017

Qué significa realmente ‘hacker’

Número de lecturas: 1975
{lang: 'es-419'}

El arte de ser hacker

Uno de los libros que más me han llamado la atención sobre este tema es sin lugar a dudas Hacking: The Art of Exploitation, de Jon Erickson. Es una joya para todo aquel que quiera sumergirse en este mundo de los verdaderos hackers. Y tal como está en el libro, me permitiré tomar la primer pregunta que explotó mi mente al momento de leerlo.  

La esencia de un hacker

Usando cada uno de los siguientes números 1,3,4 y 6 exactamente una vez con cualquiera de las operaciones básicas (sumar,restar,multiplicar,dividir) conseguir un total de 24. Cada número debe ser usado solo una vez y el orden depende de ustedes. Por ejemplo:

3 * ( 4 + 6 ) + 1 = 31

Correcto en sintaxis, pero incorrecto en resultado.

Debo admitir que yo no pude resolver el problema hasta que terminé de leer el libro y vi la solución en la última página. Pero básicamente esta es la esencia de un hacker, poder ver lo que otros no ven.

Los primeros hackers

Un grupo de estudiantes del MIT (Massachusetts Institute of Technology), cerca de los años 50, recibió un donativo de equipos telefónicos, con estas piezas, ellos desarrollaron un sistema que permitía gestionar la línea de comunicación a distancia por medio de llamadas especiales. Ellos hicieron un descubrimiento usando la tecnología que ya existía, pero usándola de formas que pocos o nadie habían visto hasta entonces. Estos fueron los primeros hackers.

Una comunidad de respaldo

Hoy en día existen muchos exámenes de “certificación” para convertirse en “hacker”, pero la realidad es que uno no llegará a ser un verdadero hacker hasta que un miembro de la comunidad que ya lo sea esté de acuerdo en llamarnos por ese calificativo. Uno de los caminos para esto es poder aportar algo útil a la comunidad. Muchos hackers son en última instancia programadores de bajo nivel, puesto que conocen de manera profunda cómo funcionan los equipos, a nivel de memoria y sistema operativo; bits en última instancia.

Este conocimiento les permite encontrar vulnerabilidades

Esto es como cuando aprendemos por primera vez matemáticas, cuando eramos niños, necesitabamos de alguien que nos explique y enseñe los símbolos y las formas, y esto sucede en cierta manera con los programadores también, un verdadero hacker es aquel que conoce estos símbolos y formas, y nos señala cuando ve que hemos fallado al usarlos (una vulnerabilidad). Y como el mismo Linus Torvalds (otro gran hacker, en el sentido real de la palabra) las “vulnerabilidades” son solamente bugs. Con esto refiriéndose a que no son más que errores de programación, aunque tal vez con otro tipo de consecuencias a los bugs más comunes.

Los hackers NO necesariamente son delincuentes

Esto es cierto hasta cierto punto, vamos a pensarlo por un momento. Cuando un verdadero hacker desea conocer algo, este pone a prueba hasta el más mínimo detalle del sistema, con todos sus conocimientos le es posible esquivar, o evitar controles de acceso, o modificar órdenes para realizar otras tareas, o incluso convertir el programa en otra cosa. Pero ¿de dónde nace esto?

Motivaciones de un hacker

Estas pueden ir en un gran abanico de posibilidades, algunos (la mayoría de los verdaderos hackers) descubren lo que descubren por un mero placer intelectual, disfrutan el desafío de encontrar estos ‘vacíos’. Otros lo hacen por ego, puesto que desean poder decir que son los mejores en algo. Pero es innegable que alguno o muchos de ellos también estarán ahí por el dinero, puesto que controlar cosas que son incontrolables para la mayoría de personas es ciertamente una herramienta que puede producir mucho dinero. Es este el motivo por el que podemos decir que los hackers no necesariamente son malos, pero ojo con el necesariamente.

Otro motivo importante es que los hackers reales desconfían de la tecnología que usamos todos. Esto es así porque en su conocimiento profundo de sistemas, conocen las limitaciones y vacíos o vulnerabilidades. Es este conocimiento en última instancia el que les permite “sobrepasar” sistemas para poder cumplir con alguna de sus otras motivaciones (intelectual,económica,etc).

3 tipos de hacker hoy en día

Hoy por hoy podemos encontrar 3 conocidos grupos de hackers, distinguidos de manera curiosa por el tipo de sombrero que usan: white, black grey hat. En pocas palabras y con una analogía que ya hemos tocado con anterioridad, encontramos que los blancos son los buenos, los negros son los malos y los grises están en un punto medio en el que usan sus habilidades para ser o buenos o malos, dependiendo de la situación. Pero hay un último término, mucho más utilizado en círculos de hackers reales.

Script-kiddie

¿Qué es un script-kiddie? Como su nombre lo dice, es un “niño” a la vista de los verdaderos hackers que solo usa scripts para su beneficio. Y aquí hay que hacer una distinción muy grande,

Estar certificado en seguridad informática NO te hace necesariamente un hacker.

Y este es un punto de vista personal, así como un hacker  puede no tener certificaciones y seguir siendo un gran hacker. Pero vamos a ver por qué digo esto. Muchos exámenes de certificación/cursos/etc te enseñan los pasos de un pentesting exitoso, te enseñan la teoría de tipos de vulnerabilidad, te introducen en el mundo de la seguridad informática como si fueras versado en el tema. Pero la realidad es que hasta que no hagas un aporte sustancial a la comunidad hacker, esto quiere decir, hasta que no crees una herramienta que demuestre ser útil para los hackers, no eres uno. Así de simple y sencillo.

No importa qué tan bien puedas usar nmap, o zen, o incluso metasploit, mientras no seas capaz de aportar un exploit real, o una herramienta de reconocimiento real, NO eres un hacker, solo un script-kiddie, y no importa que tengas N certificaciones en seguridad, eso no lo va a cambiar.

Los hackers hacen de este un mundo mejor

Gracias a ellos es que tenemos tecnología en continuo movimiento. El kernel es un gran ejemplo de esto, son cientos de mentes muy versadas en el tema, que crean código que sirve no solo a la comunidad hacker, sino a todo el mundo. Pero no solo esto, si no fuera por ellos, la tecnología se estancaría en puntos donde la gente no querría seguir desarrollando, esto porque al encontrar vulnerabilidades, los hackers ayudan a motivar a los desarrolladores a escribir mejor código, y a su vez, este mejor código motiva a los hackers a demostrar que son aún mejores, generando un círculo virtuoso en el medio.

Reflexión final

Bueno, ya voy a cortar, así sin más, porque he visto que me estoy extendiendo y aunque me gustaría explicar un poco sobre cómo encontrar un exploit, eso tendrá que ser para otra ocasión. Yo personalmente me considero un ‘script-kiddie’ todavía, puesto que si bien he encontrado una que otra vulnerabilidad por ahí e incluso he podido asignar CVEs a estas, todavía no he creado mi propio exploit o herramienta para poner a disposición de la comunidad, pero espero que eso cambie en poco tiempo ? Sin más que agregar, muchas gracias por su tiempo, saludos.

Fuente:

blog.desdelinux.net

noviembre 24th 2017

¿Qué es y para que sirve un sandbox en la informática?

Número de lecturas: 804
{lang: 'es-419'}

A continuación veremos una explicación simple para que todo el mundo pueda comprender lo que es un sandbox en el mundo de la informática.

¿QUÉ ES UN SANDBOX?

Un sandbox es un mecanismo de seguridad para disponer de un entorno aislado del resto del sistema operativo.

Todos los programas que se ejecutan dentro de un sandbox lo hacen de forma controlada mediante los siguientes aspectos:

  1. Se les asigna un espacio en disco. Estos programas no podrán acceder a ningún espacio del disco que no les haya sido asignado previamente.
  2. Podemos hacer que nuestros programas se ejecuten en un sistema de archivos temporal (tmpfs) para aislarlos del resto del sistema operativo.
  3. También se les asigna un espacio en memoria. Los programas no podrán acceder a otras partes de la memoria que no les hayan sido asignadas.
  4. Les podemos dar o restringir la capacidad para acceder y consultar dispositivos de almacenamiento externos.
  5. Les restringimos la capacidad para que puedan inspeccionar la máquina anfitrión.
  6. Podemos restringir el acceso de los programas a la red, al servidor de las X, al servidor de sonido, etc.
  7. Podemos limitar el ancho de banda que usa un determinado programa.
  8. Etc.

Consecuentemente podemos afirmar que los programas se ejecutan en un entorno controlado y separado del sistema operativo. Por lo tanto el hecho de ejecutar un programa en un sandbox es un ejemplo específico de virtualización.

¿QUÉ UTILIDAD TIENE UN SANDBOX?

Nos podemos hacer la idea que su principal utilidad es ejecutar programas de forma segura y sin peligro de comprometer el resto del sistema operativo.

Algunos ejemplos de los casos en que podemos utilizar un sandbox son los siguientes:

  1. Instalar y usar de forma segura programas que no son fiables y/o pueden contener virus y/o código malicioso.
  2. Usar programas que tienen el potencial de comprometer la seguridad de nuestro sistema operativo como por ejemplo un navegador web, Skype, un lector de pdf, un keygen descargado de Internet, etc.
  3. Crear un entorno de pruebas para ejecutar programas o un código que acabamos de crear.
  4. Para descargar Torrents.
  5. Etc.

Por lo tanto podemos ver que un sandbox no es de uso exclusivo para programadores o expertos informáticos. También es útil para todo tipo de usuarios.

Algunos de los navegadores web que usamos disponen de su propio sandbox. No obstante no es mala idea usar dos capas de protección porque los navegadores web son altamente susceptibles de sufrir problemas de seguridad.

¿CÓMO PODEMOS USAR UN SANDBOX?

En función del sistema operativo que usemos existen diferentes software que nos permitirán ejecutar programas dentro de un sandbox. Algunos ejemplos son los siguientes:

  1. GNU-Linux: Firejail, Glimpse.
  2. Windows: Sandboxie, Shadow Defender.

Fuente:

geekland.eu