Mostrando entradas con la etiqueta PDF. Mostrar todas las entradas
Mostrando entradas con la etiqueta PDF. Mostrar todas las entradas

miércoles, 9 de agosto de 2017

Navegadores inseguros. Los tiempos están cambiando.

Hace unos días nos llegó la noticia de la propia Adobe: Flash se acaba en 2020. Listo. Fin de una era. Aunque en su nota de prensa no mencionan ni de pasada las 1033 vulnerabilidades de seguridad (casi todas de máxima gravedad) que salen en una búsqueda rápida, Adobe alega únicamente un cambio de rumbo en la tecnología hacia estándares más abiertos, tales como HTML5 y WebGL.

Lo de Flash era una muerte anunciada. No podía ser de otro modo. Arrinconado por las vulnerabilidades, autentica puerta de entrada de toda clase de malware, y denostado por los buscadores, Flash fue reduciendo su masa de usuarios, desarrolladores y navegadores que lo soportan. Es incontable la cantidad de exploits que usan Flash como vector de explotación (junto con Adobe PDF Reader o Java, el tridente de la inseguridad). Es tal el ritmo de aparición de CVE sobre Flash que hasta dejaron de ser noticia.

Aunque Adobe fija su fin en 2020, todavía nos quedarán los rescoldos de una larga batalla por la expulsión de Flash del campo de juego del navegador. Engaños a usuarios desprevenidos (“pinche aquí amigo, instálese la última versión de Flash”, “Ah, ¿pero no había desaparecido?”, “pinche aquí amigo”, “vale, vale, pincho”) o navegadores sin actualizar. Sorprende que incluso con la política de actualizaciones automáticas todavía hay usuarios que no reinician el navegador para aplicarlas. Eso nos deja una pequeña rendija abierta en la ventana de exposición.

Flash no se queda solo. Los lectores de PDF incrustados en el navegador van siendo desplazados por el propio lector hecho en Javascript (no es broma, hecho en puro Javascript). Esto permite cerrar la vía a esos auténticos monstruos salidos de la mente de un escritor pasado de absenta que son los complementos nativos, auténticos quebraderos de cabeza de la navegación segura.

Otro que va borrando su mala impronta es Java. Hace tiempo que fue noticia su práctico baneo por los principales navegadores, y su uso generalista se ve marginado a ciertas aplicaciones obsoletas y sin mantenimiento, por ejemplo, algunas webs gubernamentales en las que te exigen “INTERNET EXPLORER 5.5 o superior / Java RunTime Environment Sun Versión 1.4.2. o superior” (la cita es textual, de la página de un Ministerio). Quién ha instalado una máquina virtual con un Windows 2000 y Java 1.4 obsoletos para firmar digitalmente sabe de qué se está hablando. Ahora esa misma firma electrónica se efectúa en, sorpresa, Javascript.

¿Nos quedamos aquí?

Para nada. Si miramos las propias implementaciones de Javascript (o el propio Java) vemos otros de los grandes culpables de hacer saltar por los aires a los navegadores: C y C++. Estos lenguajes de programación fueron diseñados hace décadas, cuando la gente ni sospechaba de lejos la fiesta que podía armarte un simple memcpy con un inocente búfer y una cadena de entrada procedente de usuario. Eso y la falta (necesaria) de un recolector de basura, hacía que la gestión de memoria fuera un desastre en manos de gente sin experiencia, con prisas o con las dos mencionadas condiciones a la vez.

C++ es un lenguaje complejo, muy complejo. Tanto que los propios expertos reconocen que es imposible aprender completamente cada una de sus características, o que es casi imposible crear un intérprete (parser) de la gramática completa (ver pag. 147). Aunque las nuevas versiones del estándar han reducido enormemente la capacidad de crear errores en la gestión de memoria, gracias a los punteros “inteligentes” (shared_ptr, unique_ptr, (ojo, no auto_ptr)), el daño ya está hecho. Además, incluso con estas mejoras, es complicado encontrar desarrolladores con un buen nivel en este lenguaje.

Vemos un comienzo en la evolución en este campo: nuevos lenguajes de programación, adaptados a los requisitos de seguridad y amigables para atraer nuevos programadores. Desde la propia Mozilla, han diseñado un lenguaje que permite obtener buenos tiempos de ejecución sin necesidad de gestión manual de la memoria: Rust. Este lenguaje les ha permitido reemplazar componentes de Firefox que anteriormente estaban hechos en C++ a otros en Rust, como por ejemplo Servo o Quantum. Es previsible que de manera progresiva se vayan adaptando más partes a este nuevo lenguaje si les acompañan los buenos resultados en rendimiento y desarrollo.

Como vemos, no hay nada escrito en piedra. Poco a poco se vencen antiguos paradigmas, modelos obsoletos y se cierran viejas heridas. Naturalmente, no vamos a dejar de ver exploits. Tan pronto como las antiguas técnicas dejen de ser efectivas se investigarán otras que den resultados similares. Además, y lo más importante, aunque reduzcamos la superficie de ataque, cerremos la ventana de exposición y creemos nuevos lenguajes más seguros, jamás podremos eliminar el componente más vulnerable de todo el sistema: el usuario. 


David García
dgarcia@hispasec.com


Más información:

flash & the future of interactive content

Navegadores inseguros







martes, 6 de diciembre de 2016

Vulnerabilidades en Foxit Reader y Foxit PhantomPDF

Foxit ha corregido tres vulnerabilidades que afectan a Foxit Reader y Foxit PhantomPDF que podrían permitir a un atacante obtener información sensible o lograr la ejecución de código arbitrario.

Foxit es un lector de PDF de la compañía Foxit Software, gratuito en su versión Reader y con versión de pago que permite modificar PDFs. Se encuentra disponible para sistemas operativos Windows y GNU/Linux, y en forma de plugin para navegadores web. Supone una alternativa más ligera y menos "atacada" al lector de Adobe.

Los problemas corregidos se deben a problemas en el tratamiento de archivos JPEG2000; una lectura fuera de límites que podría permitir la obtención de información sensible y un uso de memoria después de liberarla y un desbordamiento de búfer que podrían permitir la ejecución remota de código.

Los problemas han sido corregidos en las versiones de Foxit Reader 8.1.1 y Foxit PhantomPDF 8.1.1.

Se puede descargar las versiones actualizadas desde:

Más información:

Security updates available in Foxit Reader 8.1.1 and Foxit PhantomPDF 8.1.1





Antonio Ropero

Twitter: @aropero

sábado, 5 de noviembre de 2016

Vulnerabilidades en Foxit Reader y Foxit PhantomPDF

Foxit ha corregido un total de seis vulnerabilidades que afectan a Foxit Reader y Foxit PhantomPDF que podrían permitir a un atacante provocar denegaciones de servicio, obtener información sensible o la ejecución de código arbitrario.

Foxit es un lector de PDF de la compañía Foxit Software, gratuito en su versión Reader y con versión de pago que permite modificar PDFs. Se encuentra disponible para sistemas operativos Windows y GNU/Linux, y en forma de plugin para navegadores web. Supone una alternativa más ligera y menos "atacada" al lector de Adobe.

Los problemas corregidos se deben a corrupciones de memoria, uso de memoria después de liberarla, lectura y escritura fuera de límites, desreferencia de puntero nulo, desbordamiento de búfer y desbordamiento de entero. Se ven afectados Foxit Reader 8.0.5 (y anteriores) para Windows y Foxit PhantomPDF 8.0.5 (y anteriores) para Windows.

Por otra parte, también ha publicado Foxit Reader para Mac y Linux 2.2 que soluciona una vulnerabilidad debido a permisos de archivo débiles, que podrían ser aprovechadas por atacantes para ejecutar código arbitrario y conseguir elevar privilegios (CVE-2016-8856).

Los problemas han sido corregidos en las versiones de Foxit Reader 8.1 para Windows, Foxit Reader 2.2 para Mac/Linux y Foxit PhantomPDF 8.1.

Para actualizar las aplicaciones se puede realizar desde la pestaña "Help" de Foxit Reader o Foxit PhantomPDF, en la opción "Check for Update".
O descargando las versiones actualizadas desde:

Más información:

Security updates available in Foxit Reader 8.1 and Foxit PhantomPDF 8.1
Security updates available in Foxit Reader for Mac and Linux 2.2


Antonio Ropero
Twitter: @aropero

jueves, 11 de agosto de 2016

Múltiples vulnerabilidades en Foxit Reader y Foxit PhantomPDF

Foxit ha corregido un total de 15 vulnerabilidades que afectan a Foxit Reader y Foxit PhantomPDF que podrían permitir a un atacante provocar denegaciones de servicio, obtener información sensible o la ejecución de código arbitrario.

Foxit es un lector de PDF de la compañía Foxit Software, gratuito en su versión Reader y con versión de pago que permite modificar PDFs. Se encuentra disponible para sistemas operativos Windows y GNU/Linux, y en forma de plugin para navegadores web. Supone una alternativa más ligera y menos "atacada" al lector de Adobe.

Se ven afectados Foxit Reader 8.0.0.624 (y anteriores) para Windows, 2.0.0.0625 (y anteriores) para Mac OS X y 1.1.1.0602 (y anteriores) para Linux; y Foxit PhantomPDF 8.0.1.628 (y anteriores) para Windows.

Los problemas corregidos se deben a accesos fuera de límites en el tratamiento de TIFF, uso de memoria después de liberarla al tratar streams FlateDecode específicamente construidos, corrupción de memoria y accesos fuera de límites al tratar archivos JPEG2000, falsificación de dlls, Accesos fuera de límites al procesar archivos pdf con streams JPXDecode específicamente construidos, lectura fuera de límites al manejar archivos BMP especialmente construidos y vulnerabilidades de corrupción de memoria.

Los problemas han sido corregidos en las versiones de Foxit Reader 8.0.2 para Windows, Foxit Reader 2.1 para Mac/Linux y Foxit PhantomPDF 8.0.2.

Para actualizar las aplicaciones se puede realizar desde la pestaña "Help" de Foxit Reader o Foxit PhantomPDF, en la opción "Check for Update".
O descargando las versiones actualizadas desde:

Más información:

Security updates available in Foxit Reader for Windows 8.0.2, Foxit Reader for Mac/Linux 2.1, and Foxit PhantomPDF 8.0.2


Antonio Ropero
Twitter: @aropero

domingo, 10 de julio de 2016

Múltiples vulnerabilidades en Foxit Reader y Foxit PhantomPDF

Foxit ha corregido un total de 15 vulnerabilidades que afectan a Foxit Reader y Foxit PhantomPDF (versiones 7.3.4.311 y anteriores) que podrían permitir a un atacante provocar denegaciones de servicio, obtener información sensible o la ejecución de código arbitrario.

Foxit es un lector de PDF de la compañía Foxit Software, gratuito en su versión Reader y con versión de pago que permite modificar PDFs. Se encuentra disponible para sistemas operativos Windows y GNU/Linux, y en forma de plugin para navegadores web. Supone una alternativa más ligera y menos "atacada" al lector de Adobe.

Los problemas corregidos se deben a un uso de memoria después de liberarla al tratar archivos XFA y al procesar imágenes inline en documentos PDF, ejecución de código por salto de restricciones exportData, lecturas fuera de límites en el tratamiento de archivos JPEG y al convertir archivos JPEG con datos EXIF a PDF y escritura fuera de límites al convertir archivos TIFF, GIF o BMP a PDF.

También se han detectado desbordamientos de búfer al tratar archivos TIFF, a gestionar cadenas GoToR específicamente creadas y al analizar archivos PDF con datos Bezier específicamente creados. Un error por uso de un puntero sin inicializar al tratar imágenes ampliadas en documentos PDF y un cierre de la aplicación con archivos PDF que contengan una descripción de imagen específicamente manipulada.

Los problemas afectan a versiones Foxit Reader y Foxit PhantomPDF 7.3.4.311 y anteriores y han sido corregidos en la versión 8,0 de ambos productos.

Para actualizar las aplicaciones se puede realizar desde
La pestaña "Help" de Foxit Reader o Foxit PhantomPDF, en la opción "Check for Update".
O descargando las versiones actualizadas desde:

Más información:

Security updates available in Foxit Reader and Foxit PhantomPDF 8.0


Antonio Ropero
Twitter: @aropero

sábado, 8 de agosto de 2015

Mozilla publica actualización para Firefox

La Fundación Mozilla ha publicado una actualización de seguridad (MFSA 2015-78) destinada a corregir una vulnerabilidad crítica en el navegador Firefox.

El problema (con CVE-2015-4495reside en una violación de la política de mismo origen y una inyección de scripts en una parte sin privilegios del visor de PDFs incorporado en Firefox y Firefox ESR. Esto podría permitir a un atacante leer y robar archivos del sistema de la víctima.

Mozilla confirma que en la actualidad existe un exploit que se está utilizando de forma activa. Al menos se ha reportado su utilización en una publicidad en un sitio de noticias ruso.

Se ha publicado las versiones Firefox 39.0.3 y Firefox ESR 38.1.1 que se encuentran disponibles para su descarga a través de los canales habituales o mediante las actualizaciones automáticas.

Más información:

MFSA 2015-78 Same origin violation and local file stealing via PDF reader

Firefox exploit found in the wild


Antonio Ropero
Twitter: @aropero

jueves, 10 de octubre de 2013

Boletines de seguridad de Adobe

Tras la reciente brecha en su seguridad de la que hablamos hace poco, Adobe ha publicado dos boletines de seguridad en los que ha corregido sendas vulnerabilidades en sus productos de gestión de documentos PDF, Reader/Acrobat, y de creación y publicación de contenidos RoboHelp.

A continuación se exponen los boletines publicados para cada producto.

  • Adobe Reader y Acrobat (APSB13-25): boletín de seguridad que corrige una vulnerabilidad (CVE-2013-5325) en Reader/Acrobat bajo la plataforma Windows, tras una regresión de la última actualización 11.0.04, que permitiría eludir restricciones de seguridad a través de esquemas URI Javascript especialmente manipulados, presentes en un PDF malicioso. Solamente se ven afectadas las versiones XI, por lo que ya están disponibles las versiones 11.0.05 para Reader / Acrobat:
       
    Actualización de seguridad Adobe Reader 11.0.05 – Todos los lenguajes
    http://www.adobe.com/support/downloads/detail.jsp?ftpID=5674
    Actualización de seguridad Adobe Acrobat 11.0.05 Pro y Standard – Todos los lenguajes
    http://www.adobe.com/support/downloads/detail.jsp?ftpID=5673
       


Más información:

APSB13-25 Security updates available for Adobe Reader and Acrobat

APSB13-24 Security update available for RoboHelp

una-al-dia (04/10/2013) Adobe anuncia el robo de código fuente y datos de casi 3 millones de usuarios



José Mesa Orihuela

miércoles, 9 de enero de 2013

Ejecución de código en Foxit Reader para Firefox

Se ha publicado una vulnerabilidad crítica en el plugin de Foxit Reader para el navegador Firefox que podría permitir la ejecución de código remoto a un atacante con solo visitar una página web especialmente manipulada.

Foxit Reader es un lector de documentos PDF que se presenta como alternativa a Adobe Reader. Se encuentra disponible para sistemas Operativos Windows y GNU/Linux, y en forma de plugin para navegadores web.

La vulnerabilidad se encuentra localizada en el plugin para el navegador Mozilla Firefox, en la librería npFoxitReaderPlugin.dll. Se debe a un error de comprobación de límites al procesar una dirección URL muy larga, y que podría producir un desbordamiento de memoria basada en pila. Como consecuencia de esto, un atacante remoto podría aprovechar este fallo para lograr ejecutar código arbitrario en la máquina afectada.

Ha sido descubierta por Andrea Micalizzi (alias "rgod"), quien además ha publicado una prueba de concepto para probar la vulnerabilidad. Simplemente se puede visitar una página con la estructura:


para que se sobrescriba el registro de instrucción.

Se ha comprobado que la última versión de Foxit, la 5.4.4.1128, es vulnerable aunque otras versiones también podrían encontrarse afectadas. Aun no se ha asignado ningún identificador CVE a este fallo y tampoco existe solución oficial por el momento.

Más información:

Foxit Reader <= 5.4.4.1128 Plugin for Firefox npFoxitReaderPlugin.dll
Overlong Query String Remote Stack Buffer Overflow




Juan José Ruiz