lunes, 13 de mayo de 2019

Solucionar BUG de utilidad BSU, demasiado tiempo para aplicar parches - Oracle


      A finales de Abril se registró una nueva vulnerabilidad para productos Oracle que usan WebLogic Server 10.3.6 o 12.1.3.0 bajo el codigo CVE-2019-2725. Por lo que todos aquellos servidores productivos que corran tal versión deberian ser parcheados cuanto antes debido a que son exploitables.

   Resulta que tratando de aplicar los parches correspondientes para cubrir y solucionar tal vulnerabilidad, el instructivo detalla la utilización de BSU (Oracle Smart Update). Y el problema radica en que lo primero que realiza BSU es comprobar si hay conflicto entre los parches ya instalados y el que se esta por instalar. Normalmente este paso no deberia tomar mas de 5 minutos, pero lamentablemente si eres de esos que sufre de un retraso de 1 hora y 30 minutos esperando a que el comando compruebe los conflictos. Este articulo te ayudará a corregir eso, y que BSU no tarde mas de 5 min en aplicar un parche.


APLICA A:

  • Oracle WebLogic Server - Versión 10.3.1 a 10.3.6
  • Oracle Fusion Middleware - Versión 11.1.1.1.0 a 11.1.1.9.0 [Oracle 11g]
  • La información en este documento se aplica a cualquier plataforma.

SÍNTOMAS:

Oracle BSU (Actualización Inteligente) puede tardar mucho tiempo en aplicar los parches. Esto es especialmente cierto con parches grandes, como la actualización del conjunto de parches (PSU, o Patch Set Updates) y es más notorio aun cuando pasa por el proceso de verificar si hay conflictos con parches instalados actualmente en el producto. Es posible que haya aumentado la memoria en el script de BSU en el pasado, pero aún no se está completando en un tiempo aceptable. Usando el comando normal para aplicar un parche:
$ ./bsu.sh -install -patchlist=XXXX -patch_download_dir=$ORACLE_HOME/utils/bsu/cache_dir -prod_dir=$ORACLE_HOME/wlserver_10.3

SOLUCIÓN:

Prerrequisitos
1. Asegúrese de tener Oracle WebLogic Server 10.3.1 o superior
Para comprobar la versión de WebLogic Server, puede utilizar alguno de estos comandos:
$ $JAVA_HOME/bin/java -cp $ORACLE_HOME/wlserver_10.3/server/lib/weblogic.jar weblogic.version -verbose
  
o bien
$ $JAVA_HOME/bin/java -cp $ORACLE_HOME/wlserver_10.3/server/lib/weblogic.jar weblogic.version weblogic.utils.Versions

2. Asegúrese de que cuenta con BSU 3.3.0. Para ello, puede ejecutar el siguiente comando:
$ORACLE_HOME/utils/bsu/bsu.sh -version

3. Nuevo parche (la mejora). Después de cumplir con los requisitos anteriores, descargue y aplique el parche 27238412. Para aplicar el parche ejecute los siguientes comandos:
$ cp /tmp/p27238412_1036_Generic.zip $ORACLE_HOME/utils/bsu
$ cd $ORACLE_HOME/utils/bsu
$ unzip p27238412_1036_Generic.zip
$ rm -Rf p27238412_1036_Generic.zip /tmp/p27238412_1036_Generic.zip README.txt
$ . ./bsu_update.sh install

4. Aumente el tamaño del heap memory de la JVM para permitir más memoria y evitar un eventual error "java.lang.OutOfMemoryError: GC overhead limit exceeded":
Para esto, edite el script  bsu.sh  y modifique las siguientes variables de entorno:
  • JAVA_HOME="/usr/jdk/jdk1.8.0_211"        # Muchas veces los parches necesitan cierta versión de Java, leer el archivo README.txt y comprobar cual se necesita.
  • MEM_ARGS="-d64 -Xms4096m -Xmx4096m -XX:+UseParallelGC"          # Esto permite ejecutar la JVM en modo 64-bit con un heap memory de 4GB en paralelo.

Para mas información acerca de este parche, dirigirse a la web oficial del parche: https://support.oracle.com/epmos/faces/DocumentDisplay?id=2271366.1


Cualquier comentario, duda o sugerencia puede debatirse libremente y con respeto en los comentarios de este articulo.

No hay comentarios:

Publicar un comentario