En el año 2017 estuvo muy activo el Ransomware escrito en python denominado Python/Filecodet.AX. Como su nombre lo indica, fue escrito mediante el lenguaje de Python, y se distribuye mediante el programa PyInstaller mediante un ejecutable .exe en las computadoras Windows. Actualmente esta variante ya no está activa, pero es interesante saber cómo funcionaba el código para ejecutar una actividad maliciosa.
El primer paso para analizar el código este es compilarlo. Comúnmente se considera que este tipo de procesos es sencillo, por lo que no debe presentar mayores problemas. Una vez descompilado, es posible ver las diferentes funciones y variables que realizan las actividades maliciosas en los equipos huéspedes. En este artículo analizaremos algunas de estas.
Por esa razón y muchas otras más no menos importantes, es que te recomendamos este curso de python profesional, el cual lo imparten de manera presencial o en linea, con instructores expertos en este lenguaje de programación.
En primer lugar, cuando se analiza un código escrito en Python, lo ideal es iniciar con la función entry point, pues esta marca el inicio de las instrucciones ejecutables. De esta forma se puede determinar fácilmente qué secciones del código están activas y cuáles corresponden a código inactivo, por ser residuales o código basura. Así se evita analizar secciones del programa que en realidad no han sido utilizados, y que por lo tanto, no realizan ninguna actividad maliciosa.
En el caso de Python/Filecodet.AX, escrita en python, el código fuente inicia la amenaza ejecutando la función "run_cryp t" aplicables a todas las unidades de almacenamiento que estén activas en la computadora. Debido a que el parámetro se ejecuta de forma inmediata junto con el malware, se deduce que esta es la amenaza principal de este programa.
Pues bien, después de llamar esta función, automáticamente este malware escrito en Python generará un código de identificación para la computadora huésped que servirá de base para cifrar sus archivos. Sin embargo, una actividad presente en el programa malicioso sugiere que esta amenaza podría ser ejecutada por otra aplicación.
La función principal del ataque, "run_cryp t" realiza específicamente las siguientes acciones:
Para no afectar la estabilidad del equipo, el código omite la ruta "C\Windows". De esta forma el equipo se mantiene funcionando con estabilidad que la víctima puede
leer el mensaje que informe sobre procedimiento para el rescate de los archivos. Además se omiten los archivos dela papelera de reciclaje, pues entiende de antemano
que es información que no le interesa conservar al propietario del equipo.
También, con el fin de evitar un posible autocifrado, omite el archivo ejecutable del malware. Además, con el fin de evitar cualquier posible recuperación de los datos mediante las copias de seguridad, este programa malicioso elimina automáticamente los archivos que contienen la palabra backup y los que tienen la extensión .bak.
Inmediatamente después se ejecuta una acción de cifrado de todos los archivos enlistados por el malware. Nuevamente para evitar una posible recuperación de la información, elimina inmediatamente los archivos originales.
De antemano, este programa malicioso ransomware escrito en Python con esto habrá logrado su objetivo. Sin embargo, aún existen otras funciones en el código que lo hacen aún más peligroso. En el próximo post hablaremos de este tema.
Diseño Web Grupo Codesi