[RESUELTO] Paquete de actualización 6 del agente de seguridad Trend Micro Apex One (compilación 11564)

Preguntas sobre paquetes WAPT / Solicitudes y ayuda sobre paquetes WAPT.
Reglas del foro
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
Bloqueado
olaplancha
Mensajes: 178
Inscripción: 26 de enero de 2017 - 11:11

3 de febrero de 2022 - 8:56 AM

:!: Actualizado el 08/03/2023 :!: Nueva versión del paquete, nuevo uso del paquete msi creado con ClientPackagerfuente)

:!: El archivo MSI se genera utilizando ClientPackager del servidor Apex One :!:

El código del paquete:

Código: Seleccionar todo

# -*- coding: utf-8 -*-
from setuphelpers import *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

"""

# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
bin_name = "TrendMicroSecurityAgent.msi"
properties = {
    'MyServer':'"myserver:8080|4343"',
    'MyDomain':'"Workgroup\Subdomain"',
    }

def install():
    # Initializing variables
    package_version = control.get_software_version()

    # Installing the package
    for to_update in installed_softwares('Trend Micro Apex One Security Agent'):
        if Version(to_update["version"]) < Version(package_version) or force:
            print(r"Upgrading: %s (%s)" % (bin_name, package_version))
            run(r'msiexec /fov "%s"' % bin_name) # If Agent already installed, upgrade.
    else:
        install_msi_if_needed(bin_name,properties=properties) # If Agent not installed, install.
Para que la desinstalación funcione, simplemente deshabilite la contraseña de desinstalación desde la consola del servidor.
Última edición realizada por olaplanche el 8 de marzo de 2023 a las 10:44, editado 7 veces.
- Versión de WAPT instalada: 2.6.0.16795 Enterprise
- Sistema operativo del servidor: Linux / Debian Bookworm
- Sistema operativo de la máquina de administración/creación de paquetes: Windows 10
Avatar de usuario
dcardón
Experto en WAPT
Mensajes: 1908
Inscripción: 18 de junio de 2014 - 09:58
Ubicación: Saint Sébastien sur Loire
Contacto :

3 de febrero de 2022 - 10:38

Gracias por compartir :-)
Denis Cardon - Tranquil IT
¡Comparte tus experiencias en WAPT! Envíanos las URL de tus blogs y artículos en la "Tu opinión del foro y los publicaremos en el de WAPT
gly
Mensajes: 24
Inscripción: 30 de mayo de 2019 - 11:45

3 de febrero de 2022 - 11:02 a. m

¡Muchísimas gracias! Sin embargo, tengo una pregunta: ¿cómo se gestiona el hecho de que los agentes de Trend Micro se actualizan automáticamente y, al actualizar el paquete WAPT, también intentan actualizarse en las estaciones de trabajo?
Lo he probado y el problema es que los paquetes WAPT reportan errores porque ya están actualizados.
olaplancha
Mensajes: 178
Inscripción: 26 de enero de 2017 - 11:11

3 de febrero de 2022 - 11:19

No actualizo el programa del agente a través del servidor Apex One (configurable en el servidor, administración del agente, privilegios y otras configuraciones).
Cuando se lanza una nueva versión del programa agente, se debe generar un nuevo paquete MSI utilizando el ClientPackager del servidor y se debe actualizar el paquete WAPT ;)

EDITAR: Si el agente se actualiza y usted actualiza su paquete más tarde, al implementar el nuevo paquete detectará que la misma versión ya está instalada y no la reinstalará sin errores en la consola WAPT
Instalación del agente de seguridad wapt-trend-micro-apex-one.
MSI TrendMicroSecurityAgent.msi ya instalado. Omitiendo msiexec.
- Versión de WAPT instalada: 2.6.0.16795 Enterprise
- Sistema operativo del servidor: Linux / Debian Bookworm
- Sistema operativo de la máquina de administración/creación de paquetes: Windows 10
gly
Mensajes: 24
Inscripción: 30 de mayo de 2019 - 11:45

3 de febrero de 2022 - 15:22

EDITAR: Si el agente se actualiza y usted actualiza su paquete más tarde, al implementar el nuevo paquete detectará que la misma versión ya está instalada y no la reinstalará sin errores en la consola WAPT
¿Estás seguro de eso? Recuerdo haber cometido errores
gly
Mensajes: 24
Inscripción: 30 de mayo de 2019 - 11:45

3 de febrero de 2022 - 16:15

Efectivamente, no se reinstala si ya está instalado.

Sin embargo, no encuentro la configuración que mencionas sobre las claves del registro. ¿Se debe a que la contraseña debe estar desactivada durante la desinstalación? ¿O es por alguna diferencia en la versión de la consola? Tengo la compilación 10064.

Gracias.
olaplancha
Mensajes: 178
Inscripción: 26 de enero de 2017 - 11:11

4 de febrero de 2022 - 9:09 AM

Hola,

no, no es necesario deshabilitar la contraseña durante la desinstalación en la consola del servidor.
Estoy usando una versión anterior (9167) y aún no he tenido tiempo de actualizarla...

La opción se encuentra en este menú:

Imagen

EDIT: Enlace a la documentación oficial: https://docs.trendmicro.com/en-us/enter ... l_002.aspx
- Versión de WAPT instalada: 2.6.0.16795 Enterprise
- Sistema operativo del servidor: Linux / Debian Bookworm
- Sistema operativo de la máquina de administración/creación de paquetes: Windows 10
olaplancha
Mensajes: 178
Inscripción: 26 de enero de 2017 - 11:11

24 de mayo de 2022 - 13:25

Vale, he actualizado el servidor a la versión 10101 y las opciones de autoprotección del agente han desaparecido.
Esta es una elección deliberada de Trend Micro... fuente
Autoprotección del agente de seguridad.


La configuración de autoprotección se habilita automáticamente y no es configurable. Se han eliminado las dependencias anteriores para las funciones de autoprotección, lo que permite que todos los agentes de seguridad estén protegidos en todo momento.
De vuelta al punto de partida :(
- Versión de WAPT instalada: 2.6.0.16795 Enterprise
- Sistema operativo del servidor: Linux / Debian Bookworm
- Sistema operativo de la máquina de administración/creación de paquetes: Windows 10
olaplancha
Mensajes: 178
Inscripción: 26 de enero de 2017 - 11:11

1 de junio de 2022 - 09:34

En primer lugar, para que la instalación y actualización del agente funcione cuando se configura una contraseña de desinstalación, no debe utilizar el paquete msi (instalación correcta, actualización KO, se solicita la contraseña de protección del agente, etc.).

Se debe crear un paquete ejecutable de instalación desde el servidor que funcionará para la instalación y las actualizaciones sin requerir una contraseña:
Imagen

El código del paquete wapt adaptado:

Código: Seleccionar todo

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = ['{1841AFE1-4BA7-44D4-8700-6ACF860A8ED1}']

def install():
    # Initializing variables
    package_version = control.get_software_version()

    # Vérification de la version pour gestion d'erreur
    for to_install in installed_softwares('Trend Micro Apex One Security Agent'):
        if Version(to_install["version"]) < Version(package_version) or force:
            print ('installing %s' % control.package)
            install_exe_if_needed('TrendMicroSecurityAgent.exe')
        else:
            print ('%s already installed' % control.package)
    uninstallkey.remove('{1841AFE1-4BA7-44D4-8700-6ACF860A8ED1}')
Para la desinstalación, sugiero dos soluciones que he probado:

Solución 1:

Al deshabilitar la contraseña de desinstalación desde la consola del servidor, la clave de registro "Permitir desinstalación" se establecerá en 1 en los agentes. La desinstalación se puede realizar con el siguiente código:

Código: Seleccionar todo

def uninstall():
    print ('uninstalling %s' % control.package)
    run(r'"msiexec.exe" /x {1841AFE1-4BA7-44D4-8700-6ACF860A8ED1} /qn')
Solución 2:

La desinstalación es posible con el siguiente código sin deshabilitar la contraseña en la consola de administración (la contraseña estará en texto sin formato en el paquete):

Código: Seleccionar todo

def uninstall():
    print ('uninstalling %s' % control.package)
    run(r'"%s\Trend Micro\Security Agent\pccntmon.exe" -m <uninstall_password>' % programfiles32)
fuente

Algunas pistas que no resultaron:

La creación del paquete ejecutable desde el cliente del empaquetador se basa en el archivo de configuración ofcscan.ini en el servidor; editar este archivo le permite encontrar las opciones de autoprotección del agente:
[SECCIÓN_CLIENTE_INI]
SP_EnableFileProtection = 1
SP_EnableRegistryKeyProtection = 1
SP_EnableProcessProtection = 1
Desafortunadamente, establecerlos en 0 no parece funcionar...

Sin embargo, en el registro del siguiente agente sí se encuentran las claves para las opciones de autoprotección:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\TrendMicro\PC-cillinNTCorp\CurrentVersion\AEGIS
Al establecer la clave "SP_EnableRegistryKeyProtection" a 0, se desactiva la protección del registro, por lo que la clave "Permitir desinstalación" se puede modificar desde un paquete WAPT sin desactivar la contraseña del agente. El problema es que no es posible modificar la clave "SP_EnableRegistryKeyProtection" mientras el agente está en ejecución. Primero hay que cerrar el agente, que solicita la contraseña. En resumen, no veo cómo automatizar completamente la desinstalación dentro de un paquete WAPT.
- Versión de WAPT instalada: 2.6.0.16795 Enterprise
- Sistema operativo del servidor: Linux / Debian Bookworm
- Sistema operativo de la máquina de administración/creación de paquetes: Windows 10
olaplancha
Mensajes: 178
Inscripción: 26 de enero de 2017 - 11:11

8 de marzo de 2023 - 10:43

Buen día,

Nueva versión del paquete en la página principal.

Estoy agregando aquí el código de un paquete que necesitaba para migrar un agente de un servidor a otro durante una migración (fuente).

Código: Seleccionar todo

# -*- coding: utf-8 -*-
from setuphelpers import *

r"""
Usable WAPT package functions: install(), uninstall(), session_setup(), audit(), update_package()

"""

# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
server_name = "myserver.contoso.local"
client_port = "25840"
agent_password = "uninstall_password"

def install():
    # Initializing variables

    # Installing the package
    print("Moving Apex One Security Agent to server : %s" % server_name)
    run(r'"IpXfer\IpXfer_x64.exe" -s %s -p 8080 -sp 4343 -c %s -e "IpXfer\OfcNTCer.dat" -pwd %s' % (server_name,client_port,agent_password))


- Versión de WAPT instalada: 2.6.0.16795 Enterprise
- Sistema operativo del servidor: Linux / Debian Bookworm
- Sistema operativo de la máquina de administración/creación de paquetes: Windows 10
Bloqueado