# Detectar y eliminar malware utilizando la integración con VirusTotal Wazuh utiliza el módulo integrador para conectarse a APIs externas y herramientas de alerta, como VirusTotal. En este caso de uso, se emplea el módulo de Monitoreo de Integridad de Archivos (FIM) de Wazuh para vigilar un directorio en busca de cambios y la API de VirusTotal para analizar los archivos en dicho directorio. Luego, se configura Wazuh para activar un script de respuesta activa y eliminar los archivos que VirusTotal detecta como maliciosos. Probamos este caso de uso en los puntos finales de Ubuntu y Windows. Se requiere una clave de API de VirusTotal en este caso de uso para autenticar a Wazuh en la API de VirusTotal. ## Infraestructura | Endpoint | Descripción | | --- | --- | | Firewall Ubuntu 22.04 | Este es el punto final de Linux donde se descarga un archivo malicioso. Wazuh activa un script de respuesta activa para eliminar el archivo una vez que VirusTotal lo identifica como malicioso. | | WebServer Ubuntu 22.04 | Este es el punto final de Linux donde se descarga un archivo malicioso. Wazuh activa un script de respuesta activa para eliminar el archivo una vez que VirusTotal lo identifica como malicioso. | | Windows 10 | Este es el punto final de Windows donde se descarga un archivo malicioso. Wazuh activa un script de respuesta activa para eliminar el archivo una vez que VirusTotal lo identifica como malicioso. | ## Configuración para los Endpoints Ubuntu 22.04 Se configura el entorno de la siguiente manera para probar el caso de uso en los Endpoints Ubuntu 22.04. ## Endpoint Firewall Ubuntu 22.04 Se realizan los siguientes pasos para configurar Wazuh y supervisar cambios en tiempo real en el directorio /root del Endpoint Firewall Ubuntu 22.04. También se instalan los paquetes necesarios y se crean los scripts de respuesta activa que eliminan archivos maliciosos. 1. Se verifica que el bloque `<syscheck>` en el archivo de configuración del agente de Wazuh `/var/ossec/etc/ossec.conf` que parámetro `<disabled>` esté establecido en no. Esto permite que Wazuh FIM supervise los cambios en el directorio. 2. Se verifica que la entrada dentro del bloque `<syscheck>` que configura un directorio que se supervisará en tiempo real este presente. En este caso, se está supervisando el directorio /root: ```xml <directories realtime="yes">/root</directories> ``` ![](https://i.imgur.com/9uVuxtv.png) 3. Se instala `jq`, una utilidad que procesa la entrada JSON desde el script de respuesta activa. ```bash sudo apt update sudo apt -y install jq ``` ![](https://i.imgur.com/4vgvRPu.png) ![](https://i.imgur.com/pKiKhxG.png) 4. Se crea el script de respuesta activa `/var/ossec/active-response/bin/remove-threat.sh` para eliminar archivos maliciosos del Endpoint. ```bash #!/bin/bash LOCAL=`dirname $0`; cd $LOCAL cd ../ PWD=`pwd` read INPUT_JSON FILENAME=$(echo $INPUT_JSON | jq -r .parameters.alert.data.virustotal.source.file) COMMAND=$(echo $INPUT_JSON | jq -r .command) LOG_FILE="${PWD}/../logs/active-responses.log" #------------------------ Analizar el comando -------------------------# if [ ${COMMAND} = "add" ] then # Enviar mensaje de control a execd printf '{"version":1,"origin":{"name":"remove-threat","module":"active-response"},"command":"check_keys", "parameters":{"keys":[]}}\n' read RESPONSE COMMAND2=$(echo $RESPONSE | jq -r .command) if [ ${COMMAND2} != "continue" ] then echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Remove threat active response aborted" >> ${LOG_FILE} exit 0; fi fi # Eliminar archivo rm -f $FILENAME if [ $? -eq 0 ]; then echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Successfully removed threat" >> ${LOG_FILE} else echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Error removing threat" >> ${LOG_FILE} fi exit 0; ``` ![](https://i.imgur.com/5oYv0bR.png) 5. Se cambia la propiedad y los permisos del archivo `/var/ossec/active-response/bin/remove-threat.sh`: ```bash sudo chmod 750 /var/ossec/active-response/bin/remove-threat.sh sudo chown root:wazuh /var/ossec/active-response/bin/remove-threat.sh ``` ![](https://i.imgur.com/0HAIBy5.png) 6. Se reinicia el agente de Wazuh para aplicar los cambios: ```bash sudo systemctl restart wazuh-agent ``` ![](https://i.imgur.com/hio35Ar.png) ## Servidor Wazuh Se realizan los siguientes pasos en el servidor Wazuh para alertar sobre cambios en el directorio del Endpoint y habilitar la integración con VirusTotal. Estos pasos también activan y ejecutan el script de respuesta activa cada vez que se detecta un archivo sospechoso. 1. Se agrega las siguientes reglas al archivo `/var/ossec/etc/rules/local_rules.xml` en el servidor Wazuh. Estas reglas alertan sobre cambios en el directorio `/root` detectados por escaneos FIM: ```xml <group name="syscheck,pci_dss_11.5,nist_800_53_SI.7,"> <!-- Rules for Linux systems --> <rule id="100200" level="7"> <if_sid>550</if_sid> <field name="file">/root</field> <description>File modified in /root directory.</description> </rule> <rule id="100201" level="7"> <if_sid>554</if_sid> <field name="file">/root</field> <description>File added to /root directory.</description> </rule> </group> ``` ![](https://i.imgur.com/ibHDbyq.png) 2. Se agrega la siguiente configuración al archivo `/var/ossec/etc/ossec.conf` del servidor Wazuh para habilitar la integración con Virustotal. Se reemplaza `<YOUR_VIRUS_TOTAL_API_KEY>` con la clave de API de VirusTotal obtenida. Esto permite activar una consulta a VirusTotal cada vez que se activan las reglas 100200 y 100201: ```xml <ossec_config> <integration> <name>virustotal</name> <api_key><YOUR_VIRUS_TOTAL_API_KEY></api_key> <rule_id>100200,100201</rule_id> <alert_format>json</alert_format> </integration> </ossec_config> ``` ![](https://i.imgur.com/3oiJZUi.png) 3. Se agregan los siguientes bloques al archivo `/var/ossec/etc/ossec.conf` del servidor Wazuh. Esto habilita la respuesta activa y activa el script `remove-threat.sh` cuando VirusTotal marca un archivo como malicioso: ```xml <ossec_config> <command> <name>remove-threat</name> <executable>remove-threat.sh</executable> <timeout_allowed>no</timeout_allowed> </command> <active-response> <disabled>no</disabled> <command>remove-threat</command> <location>local</location> <rules_id>87105</rules_id> </active-response> </ossec_config> ``` ![](https://i.imgur.com/fLmmfMu.png) 4. Se agrega las siguientes reglas al archivo `/var/ossec/etc/rules/local_rules.xml` del servidor Wazuh para alertar sobre los resultados de la respuesta activa: ```xml <group name="virustotal,"> <rule id="100092" level="12"> <if_sid>657</if_sid> <match>Successfully removed threat</match> <description>$(parameters.program) removed threat located at $(parameters.alert.data.virustotal.source.file)</description> </rule> <rule id="100093" level="12"> <if_sid>657</if_sid> <match>Error removing threat</match> <description>Error removing threat located at $(parameters.alert.data.virustotal.source.file)</description> </rule> </group> ``` ![](https://i.imgur.com/Ink9SzI.png) 5. Se reinicia el gestor de Wazuh para aplicar los cambios de configuración: ```bash sudo systemctl restart wazuh-manager ``` ![](https://i.imgur.com/j3ItFSj.png) ## Emulación de Ataque 1. Se descarga el archivo de prueba EICAR en el directorio `/root` del Endpoint de Firewall Ubuntu 22.04: ```bash $ sudo curl -Lo /root/eicar.com https://secure.eicar.org/eicar.com && sudo ls -lah /root/eicar.com ``` ![](https://i.imgur.com/YfPAsY9.png) ## Visualización de Alertas Se puede visualizar los datos de alerta en el panel de control de Wazuh. Para hacer esto, se accede al módulo de **Eventos de Seguridad** y se agrega los filtros en la barra de búsqueda para consultar las alertas. - Linux - `rule.id: is one of 553,100092,87105,100201` ![Eliminar malware en alerta de Linux](https://i.imgur.com/4tMtC2p.png) ![Eliminar malware en alerta de Linux](https://i.imgur.com/KVAwyK1.png) ## Endpoint WebServer Ubuntu 22.04 Se realizan los siguientes pasos para configurar Wazuh y supervisar cambios en tiempo real en el directorio /root del Endpoint WebServer Ubuntu 22.04. También se instalan los paquetes necesarios y se crean los scripts de respuesta activa que eliminan archivos maliciosos. 1. Se verifica que el bloque `<syscheck>` en el archivo de configuración del agente de Wazuh `/var/ossec/etc/ossec.conf` que parámetro `<disabled>` esté establecido en no. Esto permite que Wazuh FIM supervise los cambios en el directorio. 2. Se verifica que la entrada dentro del bloque `<syscheck>` que configura un directorio que se supervisará en tiempo real este presente. En este caso, se está supervisando el directorio /root: ```xml <directories realtime="yes">/root</directories> ``` ![](https://i.imgur.com/b6CRC8y.png) 3. Se instala `jq`, una utilidad que procesa la entrada JSON desde el script de respuesta activa. ```bash sudo apt update sudo apt -y install jq ``` ![](https://i.imgur.com/6NNqU7B.png) 4. Se crea el script de respuesta activa `/var/ossec/active-response/bin/remove-threat.sh` para eliminar archivos maliciosos del Endpoint. ```bash #!/bin/bash LOCAL=`dirname $0`; cd $LOCAL cd ../ PWD=`pwd` read INPUT_JSON FILENAME=$(echo $INPUT_JSON | jq -r .parameters.alert.data.virustotal.source.file) COMMAND=$(echo $INPUT_JSON | jq -r .command) LOG_FILE="${PWD}/../logs/active-responses.log" #------------------------ Analizar el comando -------------------------# if [ ${COMMAND} = "add" ] then # Enviar mensaje de control a execd printf '{"version":1,"origin":{"name":"remove-threat","module":"active-response"},"command":"check_keys", "parameters":{"keys":[]}}\n' read RESPONSE COMMAND2=$(echo $RESPONSE | jq -r .command) if [ ${COMMAND2} != "continue" ] then echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Remove threat active response aborted" >> ${LOG_FILE} exit 0; fi fi # Eliminar archivo rm -f $FILENAME if [ $? -eq 0 ]; then echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Successfully removed threat" >> ${LOG_FILE} else echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Error removing threat" >> ${LOG_FILE} fi exit 0; ``` ![](https://i.imgur.com/yfWeODZ.png) 5. Se cambia la propiedad y los permisos del archivo `/var/ossec/active-response/bin/remove-threat.sh`: ```bash sudo chmod 750 /var/ossec/active-response/bin/remove-threat.sh sudo chown root:wazuh /var/ossec/active-response/bin/remove-threat.sh ``` ![](https://i.imgur.com/AMbQEyD.png) 6. Se reinicia el agente de Wazuh para aplicar los cambios: ```bash sudo systemctl restart wazuh-agent ``` ![](https://i.imgur.com/DUsfxci.png) ## Servidor Wazuh Se realizan los siguientes pasos en el servidor Wazuh para alertar sobre cambios en el directorio del Endpoint y habilitar la integración con VirusTotal. Estos pasos también activan y ejecutan el script de respuesta activa cada vez que se detecta un archivo sospechoso. 1. Se agrega las siguientes reglas al archivo `/var/ossec/etc/rules/local_rules.xml` en el servidor Wazuh. Estas reglas alertan sobre cambios en el directorio `/root` detectados por escaneos FIM: ```xml <group name="syscheck,pci_dss_11.5,nist_800_53_SI.7,"> <!-- Rules for Linux systems --> <rule id="100200" level="7"> <if_sid>550</if_sid> <field name="file">/root</field> <description>File modified in /root directory.</description> </rule> <rule id="100201" level="7"> <if_sid>554</if_sid> <field name="file">/root</field> <description>File added to /root directory.</description> </rule> </group> ``` ![](https://i.imgur.com/ibHDbyq.png) 2. Se agrega la siguiente configuración al archivo `/var/ossec/etc/ossec.conf` del servidor Wazuh para habilitar la integración con Virustotal. Se reemplaza `<YOUR_VIRUS_TOTAL_API_KEY>` con la clave de API de VirusTotal obtenida. Esto permite activar una consulta a VirusTotal cada vez que se activan las reglas 100200 y 100201: ```xml <ossec_config> <integration> <name>virustotal</name> <api_key><YOUR_VIRUS_TOTAL_API_KEY></api_key> <rule_id>100200,100201</rule_id> <alert_format>json</alert_format> </integration> </ossec_config> ``` ![](https://i.imgur.com/3oiJZUi.png) 3. Se agregan los siguientes bloques al archivo `/var/ossec/etc/ossec.conf` del servidor Wazuh. Esto habilita la respuesta activa y activa el script `remove-threat.sh` cuando VirusTotal marca un archivo como malicioso: ```xml <ossec_config> <command> <name>remove-threat</name> <executable>remove-threat.sh</executable> <timeout_allowed>no</timeout_allowed> </command> <active-response> <disabled>no</disabled> <command>remove-threat</command> <location>local</location> <rules_id>87105</rules_id> </active-response> </ossec_config> ``` ![](https://i.imgur.com/fLmmfMu.png) 4. Se agrega las siguientes reglas al archivo `/var/ossec/etc/rules/local_rules.xml` del servidor Wazuh para alertar sobre los resultados de la respuesta activa: ```xml <group name="virustotal,"> <rule id="100092" level="12"> <if_sid>657</if_sid> <match>Successfully removed threat</match> <description>$(parameters.program) removed threat located at $(parameters.alert.data.virustotal.source.file)</description> </rule> <rule id="100093" level="12"> <if_sid>657</if_sid> <match>Error removing threat</match> <description>Error removing threat located at $(parameters.alert.data.virustotal.source.file)</description> </rule> </group> ``` ![](https://i.imgur.com/Ink9SzI.png) 5. Se reinicia el gestor de Wazuh para aplicar los cambios de configuración: ```bash sudo systemctl restart wazuh-manager ``` ![](https://i.imgur.com/j3ItFSj.png) ## Emulación de Ataque 1. Se descarga el archivo de prueba EICAR en el directorio `/root` del Endpoint de WebServer Ubuntu 22.04: ```bash $ sudo curl -Lo /root/eicar.com https://secure.eicar.org/eicar.com && sudo ls -lah /root/eicar.com ``` ![](https://i.imgur.com/Ybtx1xe.png) ## Visualización de Alertas Se puede visualizar los datos de alerta en el panel de control de Wazuh. Para hacer esto, se accede al módulo de **Eventos de Seguridad** y se agrega los filtros en la barra de búsqueda para consultar las alertas. - Linux - `rule.id: is one of 553,100092,87105,100201` ![Eliminar malware en alerta de Linux](https://i.imgur.com/ZeNaTDf.png) ![Eliminar malware en alerta de Linux](https://i.imgur.com/eEYpHb0.png) ## Configuración para el Endpoint de Windows **Endpoint Windows** Se siguen los siguientes pasos para configurar Wazuh y supervisar cambios en tiempo real en el directorio /Downloads. Estos pasos también instalan los paquetes necesarios y crean el script de respuesta activa para eliminar archivos maliciosos. 1. Busque el bloque `<syscheck>` en el archivo de configuración del agente de Wazuh `C:\Program Files (x86)\ossec-agent\ossec.conf`. Asegúrese de que `<disabled>` esté establecido en no. Esto permite que el módulo Wazuh FIM supervise los cambios en el directorio. 2. Agregue una entrada dentro del bloque `<syscheck>` para configurar un directorio que se supervisará en tiempo real. En este caso, configure Wazuh para supervisar el directorio C:\Users\<USER_NAME>\Downloads. Reemplace la variable `<USER_NAME>` con el nombre de usuario apropiado: ```xml <directories realtime="yes">C:\Users\<USER_NAME>\Downloads</directories> ``` ![](https://i.imgur.com/t0vquzJ.png) 3. Se descarga el instalador ejecutable de Python desde el sitio web oficial de Python. ![](https://i.imgur.com/ODA2fBb.png) 4. Se ejecuta el instalador de Python, Asegurandose de marcar las siguientes casillas: - Install launcher for all users - Add Python 3.X to PATH (Esto coloca el intérprete en la ruta de ejecución) ![](https://i.imgur.com/i3bxncp.png) ![](https://i.imgur.com/ukJJ9G4.png) ![](https://i.imgur.com/B0J4LSx.png) 5. Una vez que Python esta instalado, desde una terminal de PowerShell como administrador, se utiliza pip para instalar PyInstaller: ```powershell > pip install pyinstaller > pyinstaller --version ``` ![](https://i.imgur.com/E3GffyS.png) Se utiliza PyInstaller para convertir el script de respuesta activa en Python, remove-threat.py, en una aplicación ejecutable que pueda ejecutarse en un Endpoint de Windows. 6. Se crea el script de respuesta activa remove-threat.py para eliminar un archivo del Endpoint de Windows: ``` #!/usr/bin/python3 # Copyright (C) 2015-2022, Wazuh Inc. # All rights reserved. import os import sys import json import datetime if os.name == 'nt': LOG_FILE = "C:\\Program Files (x86)\\ossec-agent\\active-response\\active-responses.log" else: LOG_FILE = "/var/ossec/logs/active-responses.log" ADD_COMMAND = 0 DELETE_COMMAND = 1 CONTINUE_COMMAND = 2 ABORT_COMMAND = 3 OS_SUCCESS = 0 OS_INVALID = -1 class message: def __init__(self): self.alert = "" self.command = 0 def write_debug_file(ar_name, msg): with open(LOG_FILE, mode="a") as log_file: log_file.write(str(datetime.datetime.now().strftime('%Y/%m/%d %H:%M:%S')) + " " + ar_name + ": " + msg +"\n") def setup_and_check_message(argv): # get alert from stdin input_str = "" for line in sys.stdin: input_str = line break try: data = json.loads(input_str) except ValueError: write_debug_file(argv[0], 'Decoding JSON has failed, invalid input format') message.command = OS_INVALID return message message.alert = data command = data.get("command") if command == "add": message.command = ADD_COMMAND elif command == "delete": message.command = DELETE_COMMAND else: message.command = OS_INVALID write_debug_file(argv[0], 'Not valid command: ' + command) return message def send_keys_and_check_message(argv, keys): # build and send message with keys keys_msg = json.dumps({"version": 1,"origin":{"name": argv[0],"module":"active-response"},"command":"check_keys","parameters":{"keys":keys}}) write_debug_file(argv[0], keys_msg) print(keys_msg) sys.stdout.flush() # read the response of previous message input_str = "" while True: line = sys.stdin.readline() if line: input_str = line break # write_debug_file(argv[0], input_str) try: data = json.loads(input_str) except ValueError: write_debug_file(argv[0], 'Decoding JSON has failed, invalid input format') return message action = data.get("command") if "continue" == action: ret = CONTINUE_COMMAND elif "abort" == action: ret = ABORT_COMMAND else: ret = OS_INVALID write_debug_file(argv[0], "Invalid value of 'command'") return ret def main(argv): write_debug_file(argv[0], "Started") # validate json and get command msg = setup_and_check_message(argv) if msg.command < 0: sys.exit(OS_INVALID) if msg.command == ADD_COMMAND: alert = msg.alert["parameters"]["alert"] keys = [alert["rule"]["id"]] action = send_keys_and_check_message(argv, keys) # if necessary, abort execution if action != CONTINUE_COMMAND: if action == ABORT_COMMAND: write_debug_file(argv[0], "Aborted") sys.exit(OS_SUCCESS) else: write_debug_file(argv[0], "Invalid command") sys.exit(OS_INVALID) try: file_path = msg.alert["parameters"]["alert"]["data"]["virustotal"]["source"]["file"] if os.path.exists(file_path): os.remove(file_path) write_debug_file(argv[0], json.dumps(msg.alert) + " Successfully removed threat") except OSError as error: write_debug_file(argv[0], json.dumps(msg.alert) + "Error removing threat") else: write_debug_file(argv[0], "Invalid command") write_debug_file(argv[0], "Ended") sys.exit(OS_SUCCESS) if __name__ == "__main__": main(sys.argv) ``` 7. Se convierte el script de respuesta activa en Python, `remove-threat.py`, a una aplicación ejecutable de Windows ejecutando el siguiente comando de PowerShell como administrador para crear el ejecutable: ```powershell > pyinstaller -F remove-threat.py ``` ![](https://i.imgur.com/l1LuAVG.png) ![](https://i.imgur.com/PU7ROto.png) 8. Se mueve el archivo ejecutable `remove-threat.exe` al directorio `C:\Program Files (x86)\ossec-agent\active-response\bin`. ![](https://i.imgur.com/Fk2CwRh.png) 9. Se reinicia el agente de Wazuh para aplicar los cambios, ejecutando el siguiente comando de PowerShell como administrador: ```powershell > Restart-Service -Name wazuh ``` ![](https://i.imgur.com/OZFqOA9.png) ## Wazuh Server Se realizan los siguientes pasos en el servidor Wazuh para configurar la integración con VirusTotal. Estos pasos también habilitan y activan el script de respuesta activa cuando se detecta un archivo sospechoso. 1. Se confirma la presencia de la siguiente configuración al archivo `/var/ossec/etc/ossec.conf` en el servidor Wazuh para habilitar la integración con VirusTotal. Esto permite activar una consulta a VirusTotal cada vez que se activa alguna de las reglas en el grupo FIM syscheck: ```xml <ossec_config> <integration> <name>virustotal</name> <api_key><YOUR_VIRUS_TOTAL_API_KEY></api_key> <!-- Reemplace con su clave de API de VirusTotal --> <group>syscheck</group> <alert_format>json</alert_format> </integration> </ossec_config> ``` 2. Se agrega los siguientes bloques al archivo `/var/ossec/etc/ossec.conf` del servidor Wazuh. Esto habilita la respuesta activa y activa el ejecutable `remove-threat.exe` cuando la consulta a VirusTotal devuelve coincidencias positivas para amenazas: ```xml <ossec_config> <command> <name>remove-threat</name> <executable>remove-threat.exe</executable> <timeout_allowed>no</timeout_allowed> </command> <active-response> <disabled>no</disabled> <command>remove-threat</command> <location>local</location> <rules_id>87105</rules_id> </active-response> </ossec_config> ``` ![](https://i.imgur.com/US275R3.png) 3. Se verifica la presencia de las siguientes reglas al archivo `/var/ossec/etc/rules/local_rules.xml` del servidor Wazuh que permiten alertar sobre los resultados de la respuesta activa. ```xml <group name="virustotal,"> <rule id="100092" level="12"> <if_sid>657</if_sid> <match>Successfully removed threat</match> <description>$(parameters.program) removed threat located at $(parameters.alert.data.virustotal.source.file)</description> </rule> <rule id="100093" level="12"> <if_sid>657</if_sid> <match>Error removing threat</match> <description>Error removing threat located at $(parameters.alert.data.virustotal.source.file)</description> </rule> </group> ``` ![](https://i.imgur.com/bO5fhzn.png) 4. Se reinicia el gestor de Wazuh para aplicar los cambios de configuración: ```bash sudo systemctl restart wazuh-manager ``` ![](https://i.imgur.com/QE8Qoxy.png) ### Emulación de Ataque 2. Se descarga el archivo de prueba EICAR en el directorio `C:\Users\UserWin\Downloads` en el Endpoint de Windows. ```powershell > Invoke-WebRequest -Uri https://secure.eicar.org/eicar.com.txt -OutFile eicar.txt > cp .\eicar.txt C:\Users\<USER_NAME>\Downloads ``` ![](https://i.imgur.com/yasxeo3.png) Esto activa una consulta a VirusTotal y generará una alerta y además, el script de respuesta activa eliminará automáticamente el archivo. ### Visualización de las Alertas Se pueden visualizar los datos de alerta en el panel de Wazuh en el módulo de "Eventos de Seguridad" agregando los filtros en la barra de búsqueda para consultar las alertas. Windows - `rule.id`: `in one of ` 554, 100092, 553, 87105 ![](https://i.imgur.com/ZxDjKlv.png) ![](https://i.imgur.com/G3fhy8V.png)