Un sistema de puntuación de malware para Android basado en la ofuscación y la negligencia. Quark-Engine también se incluye con BlackArch. Una herramienta práctica y de confianza que está lista para impulsar tu ingeniería inversa de malware.
¿Por qué Quark?
El motor de análisis de malware para Android no es una historia nueva. Cada empresa de antivirus tiene sus propios secretos para construirlo. Con curiosidad, desarrollaron un sistema de puntuación de malware desde la perspectiva del Derecho Penal de Taiwán de una manera fácil, pero sólida.
Tenemos una teoría del orden penal que explica las etapas de la comisión de un delito. Por ejemplo, el delito de asesinato consta de cinco etapas, que son: determinación, conspiración, preparación, inicio y práctica. Cuanto más avanzada es la etapa, más seguro estamos de que el crimen se practica.
De acuerdo con el principio anterior, desarrollaron la teoría del orden del malware Android. Desarrollaron cinco etapas para ver si se practica la actividad maliciosa.
Estos son:
- Permiso solicitado.
- Llamada a la API nativa.
- Cierta combinación de la API nativa.
- Secuencia de llamada de la API nativa.
- APIs que manejan el mismo registro.
No sólo definieron las actividades maliciosas y sus etapas, sino que también desarrollaron pesos y umbrales para calcular el nivel de amenaza de un malware.
El malware ha evolucionado con nuevas técnicas para ganar dificultades para la ingeniería inversa. La ofuscación es una de las técnicas más utilizadas. En esta charla, presentaron un loader bytecode de Dalvik con la teoría del orden del malware Android para descuidar ciertos casos de ofuscación.
El loader de código de bytes de Dalvik consta de funcionalidades como
- Encontrar la referencia cruzada y la secuencia de llamadas de la API nativa.
- Rastrear el registro de bytecode. La combinación de estas funcionalidades (sí, la teoría del orden) no sólo puede descuidar la ofuscación, sino que también se ajusta perfectamente al diseño del sistema de puntuación de malware.
Informe fácil de usar y de leer
Quark es muy fácil de usar y también proporciona formatos de salida flexibles. Hay 3 tipos de informes de salida: informe detallado, gráfico de llamadas e informe resumido. Por favor, ver más detalles a continuación.
Informe detallado
Así es como examinamos un malware Android real (candy corn) con una sola regla (crimen).
quark -a 14d9f1a92dd984d6040cc41ed06e273e.apk -d
y el informe se verá así:

Gráfico de llamadas para cada actividad potencialmente maliciosa
Puedes añadir la opción -g al comando quark, y podrá obtener el gráfico de llamadas (sólo las reglas que coinciden con el 100% de confianza) (Ejemplo con Ahmyth)
quark -a Ahmyth.apk -s -g

Clasificación de reglas
Se puede añadir la opción -c al comando quark, y se puede obtener la clasificación de las reglas con la función de padre mutuo (sólo las reglas que coinciden con el 100% de confianza).
quark -a Ahmyth.apk -s -c

Informe resumido
Examinar con reglas.
quark -a 14d9f1a92dd984d6040cc41ed06e273e.apk -s

Inicio rápido
Requisitos
- Python 3.7+
- git
- graphviz
Instalación
pip install -U quark-engine
Quark ahora tiene una dulce característica que ayuda a los usuarios a obtener las últimas reglas de detección diariamente.
Obtén las últimas reglas de Quark en este repositorio quark-rules
freshquark
Utiliza el parámetro --help
para ver la descripción detallada del uso.
quark --help
Puedes consultar la Documentación de Quark Engine para obtener más información sobre las pruebas y el desarrollo.
quark-engine (este enlace se abre en una nueva ventana) por quark-engine (este enlace se abre en una nueva ventana)
Dig Vulnerabilities in the BlackBox