• Saltar al contenido principal
  • Saltar a la barra lateral principal
  • Saltar al pie de página

Una al Día

Boletín de noticias de Seguridad Informática ofrecido por Hispasec

Usted está aquí: Inicio / Auditoría / Mejorar y entender la seguridad del plugin de Java (I)

Mejorar y entender la seguridad del plugin de Java (I)

28 enero, 2013 Por Hispasec 1 comentario

El plugin de Java se está convirtiendo en un serio problema de seguridad, llevamos meses comprobándolo. Oracle ha añadido seguridad en su configuración por defecto, y ofrecido más granularidad a los usuarios. Pero todavía es mejorable. ¿Para qué sirven las nuevas funcionalidades y qué se puede esperar de ellas?
Lo primero que es necesario entender cuáles son los riesgos de los applets de Java. La máquina virtual Java es la encargada de ejecutarlos y, por seguridad, los mantiene dentro de una «sandbox«. Esto quiere decir que no les permite acceder al disco, ejecutar código… ¿Por qué son peligrosos entonces? Porque existen situaciones en las que las que se les permite a esos applets salir de la sandbox. Si ocurre esto, el applet se convierte a efectos prácticos en un ejecutable (puede hacer prácticamente cualquier cosa con los permisos con los que se ejecuta). ¿Bajo qué circunstancias pueden salir de la sandbox?
  • Oficialmente, solo cuando los applets están firmados por una entidad certificadora válida. Las entidades certificadoras válidas se pueden ver por la interfaz. Esas entidades pueden ser modificadas a través del fichero C:\Program Files\Java\jre7\lib\security\cacerts. Con «keytool» y sus opciones de «delete» e «import«, se pueden configurar. Pero en las opciones de seguridad avanzada de Java, también se permite «Usar los certificados y claves del almacén de claves del explorador«, con lo que hay que tenerlo en cuenta. Se puede confiar en más certificadoras de las que se cree.
  • Un applet puede salir de la sandbox (aunque no esté firmado), por culpa de una vulnerabilidad en la propia implementación de la máquina virtual. Si la implementación de la máquina Java en sí (la parte escrita en C) contiene un desbordamiento de memoria intermedia, por ejemplo, puede que sea explotada y se ejecute código. Estas serían vulnerabilidades «clásicas» que atacan a la implementación. Su mitigación es como cualquier otra vulnerabilidad en un programa: usar herramientas antipayload, antiexploit… y por supuesto, mantenerse actualizado.
        
  • Por último, un applet puede escapar de la zona de seguridad por un fallo de diseño «del lenguaje» que se lo permita. Las últimas vulnerabilidades más graves en Java han sido por esta razón (invocando clases privilegiadas desde código no confiable, serialización…). Esta es una de las razones por las que se insiste en deshabilitar por completo el plugin, puesto que supone un grave problema. Son un fallo intrínseco de diseño, que requieren un cambio profundo y que no serán solucionadas a corto plazo. Se sabe que la última versión sigue siendo vulnerable en este sentido y todavía quedan vulnerabilidades (fórmulas para eludir la sandbox) que descubrir.
¿Cómo defenderse? Deshabilitar Java si no se usa. Pero esto no siempre es posible. Eliminar el problema no es una solución para todo el mundo, sino otro problema adicional si de verdad se necesita esta funcionalidad. Además, Java tiene el problema de que «no tiene competencia«. Solo queda entender cómo protegerse de manera más eficaz. Puesto que se trata de contener la ejecución de applets dañinos que puedan eludir la sandbox, la clave está en:
  • La criptografía: hay que luchar contra los applets no firmados (no suelen aportar nada bueno), autofirmados (son sospechosos), y vigilar estrechamente los firmados (aun así el firmado solo garantiza al autor, no sus intenciones).
         
  • Actualización: No permitir que ciertos applets se lancen en versiones antiguas para evitar que se aprovechen de vulnerabilidades conocidas.

En este sentido de control de certificados y versiones, en la versión 7u10 se introdujeron los niveles de seguridad y la «autoconciencia» de ser una versión «insegura«. Lo veremos en detalle la próxima entrega.
Sergio de los Santos
ssantos@hispasec.com

Twitter: @ssantosv

Acerca de Hispasec

Hispasec Ha escrito 6940 publicaciones.

  • View all posts by Hispasec →
  • Blog

Compártelo:

  • Twitter
  • Facebook
  • LinkedIn
  • Reddit
  • Telegram
  • WhatsApp

Publicaciones relacionadas

Publicado en: Auditoría Etiquetado como: Oracle

Interacciones con los lectores

Comentarios

  1. Anónimo dice

    6 junio, 2013 a las 9:38 am

    Buenos días, ya se que no es recomendable pero estoy intentando que java no se me actualice automáticamente, de echo, lo que quiero conseguir es que ni siquiera me pida actualizar cuando voy a ejecutar la maquina virtual de java. Tengo la versión 1.7.0_17. Me he vuelto loco mirando opciones y no lo consigo. ¿Alguna opción a la vista?

    Gracias.

    Saludos.

    Responder

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Barra lateral principal

Buscar

Síguenos

siguenos en twitter

UAD360 EDICIÓN 2022

https://www.youtube.com/watch?v=go_CSWK56yU

Populares de UAD

  • Microsoft lanza parches para 80 vulnerabilidades, 2 0-day(s)
  • Telegram como medio para robar tarjetas de crédito
  • USB Killer, el enchufable que puede freir tu equipo
  • Técnica permite modificar ficheros PDF con firma digital
  • Un bug permite "romper" el WhatsApp de todos los miembros de un grupo

Entradas recientes

  • Microsoft lanza parches para 80 vulnerabilidades, 2 0-day(s)
  • Ataques de ransomware VS seguridad en Amazon S3
  • Código fuente de GoDaddy filtrado
  • Account Takeover en AnswerDev (CVE-2023-0744)
  • Vulnerabilidad zero-day en AWS Glue
  • Evasión de CloudTrail en AWS a través de API no documentada
  • Parches de enero 2023: Microsoft corrige 98 vulnerabilidades
  • Correo electrónico
  • Facebook
  • LinkedIn
  • RSS
  • Twitter

Footer

UAD

UAD nació a raíz de un inocente comentario en un canal IRC hace 24 años. A través de los archivos, un lector curioso puede ver cómo ha cambiado (o no) la seguridad de la información desde entonces.

Aviso Legal

  • Aviso Legal
  • Términos y Condiciones
  • Política de Privacidad
  • Política de Cookies

Copyright © 2023 · Hispasec Sistemas, S.L. Todos los derechos reservados

Este sitio web utiliza cookies propias y de terceros para fines analíticos y para mostrarte publicidad (tanto general como personalizada) relacionada con tus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación (por ejemplo, páginas visitadas), para optimizar la web y para poder valorar las opiniones de los servicios consultados por los usuarios. Para administrar o deshabilitar estas cookies haz clic en: Configurar Cookies


Rechazar todo Aceptar Todo
Configurar Cookies

Resumen de privacidad

Este sitio web utiliza cookies para mejorar su experiencia mientras navega por el sitio web. De estas, las cookies que se clasifican como necesarias se almacenan en su navegador, ya que son esenciales para el funcionamiento de las funcionalidades básicas del sitio web. También utilizamos cookies de terceros que nos ayudan a analizar y comprender cómo utiliza este sitio web. Estas cookies se almacenarán en su navegador solo con su consentimiento. También tiene la opción de optar por no recibir estas cookies. Pero la exclusión voluntaria de algunas de estas cookies puede afectar su experiencia de navegación.
Necesaria
Siempre activado
Las cookies necesarias son absolutamente esenciales para que el sitio web funcione correctamente. Estas cookies garantizan funcionalidades básicas y características de seguridad del sitio web, de forma anónima.
CookieDuraciónDescripción
cookielawinfo-checkbox-analytics11 monthsEsta cookie está configurada por el complemento de consentimiento de cookies de GDPR. La cookie se utiliza para almacenar el consentimiento del usuario para las cookies en la categoría "Análisis".
cookielawinfo-checkbox-functional11 monthsLa cookie está configurada por el consentimiento de cookies de GDPR para registrar el consentimiento del usuario para las cookies en la categoría "Funcional".
cookielawinfo-checkbox-necessary11 monthsEsta cookie está configurada por el complemento de consentimiento de cookies de GDPR. Las cookies se utilizan para almacenar el consentimiento del usuario para las cookies en la categoría "Necesario".
cookielawinfo-checkbox-others11 monthsEsta cookie está configurada por el complemento de consentimiento de cookies de GDPR. La cookie se utiliza para almacenar el consentimiento del usuario para las cookies en la categoría "Otro.
cookielawinfo-checkbox-performance11 monthsEsta cookie está configurada por el complemento de consentimiento de cookies de GDPR. La cookie se utiliza para almacenar el consentimiento del usuario para las cookies en la categoría "Rendimiento".
viewed_cookie_policy11 monthsLa cookie está configurada por el complemento de consentimiento de cookies de GDPR y se utiliza para almacenar si el usuario ha dado su consentimiento o no para el uso de cookies. No almacena ningún dato personal.
Analítica
Las cookies analíticas se utilizan para comprender cómo interactúan los visitantes con el sitio web. Estas cookies ayudan a proporcionar información sobre métricas, el número de visitantes, la tasa de rebote, la fuente de tráfico, etc.
GUARDAR Y ACEPTAR