Tráfico HTTPS de app Flutter con Burp usando Genymotion PaaS

Facebooktwitterlinkedinmail

En esta entrada vamos a ver como podemos capturar tráfico HTTPS de una aplicación creada con Flutter con Burp Suite montando una imagen en AWS de Genymotion PaaS. Esto nos será de mucha utilidad en pentests de aplicaciones móviles creadas en Flutter.

La aplicación utilizada es una creada específicamente para esta entrada y que podéis encontrar aquí.

Para poder capturar tráfico HTTPS con Burp Suite generado desde aplicaciones móviles, por norma general, necesitamos añadir el certificado de Burp Suite al móvil como certificado confiable.  En versiones anteriores a Android Nougat esto era simple, podíamos descargar el certificado y añadirlo como certificado cliente tal y como se explica aquí. A partir de Android Nougat, las aplicaciones ya no confían, salvo que se configuren expresamente, en los certificados añadidos por el usuario y es necesario añadir los certificados al almacén del sistema.  Desde Android 10, no es posible montar la partición /system como lectura/escritura y esta no se puede modificar incluso como root, lo que complica más las cosas. De todos modos, aquí se indican varios métodos para poder añadir certificados al almacén del sistema.

El problema que nos encontramos es que las aplicaciones creadas con Flutter ignoran los certificados tanto de usuario como de sistema. Por lo tanto, pese a que añadamos nuestro certificado de Burp Suite como confiable, no seremos capaces de capturar tráfico HTTPS de una aplicación flutter con Burp. Además, para hacer esto aún más difícil, este tipo de aplicaciones ignoran las configuraciones del proxy. Así que si configuramos el proxy como se indica en este artículo, la aplicación no enviará el tráfico al proxy.

Leer más

Persistencia en AWS con implantes en imágenes de contenedores

Facebooktwitterlinkedinmail

Una de las tácticas más comunes cuando un atacante logra el acceso inicial es obtener persistencia. El objetivo de esta es mantenerse en la infraestructura pese a que se reinicie el equipo, las contraseñas o haya cualquier interrupción que pueda interrumpir el acceso inicial. Una de las técnicas utilizadas para obtener persistencia en AWS si en la cuenta se usa Amazon Elastic Container Registry (ECR) es añadiendo implantes en las imágenes de los contenedores.

Esta técnica la encontramos bajo en nombre Implant Container Image en Mitre Att&ck y tiene el ID T1525.

Estos son los pasos que podría seguir un atacante para lograr persistencia en AWS tras conseguir un usuario con permisos al ECR:

En primer lugar, es necesario listar los repositorios que existen en la cuenta:

aws ecr describe-repositories

Tras descubrir los repositorios, se pueden listar las imágenes del repositorio con el comando:

Leer más

ATT&CK para AWS

Facebooktwitterlinkedinmail

En esta entrada vamos a ver como la matriz de MITRE ATT&CK para AWS puede ayudarnos a representar mejor nuestra capacidad de detección.

Como también pasa en las infraestructuras clásicas, la prevención está muy bien y es fundamental pero la detección se ha convertido en algo esencial. Hemos asumido ya que tenemos que orientar nuestra defensa no solo a prevenir sino a detectar y además debemos presuponer que nuestra infraestructura en un momento u otro será comprometida.

Es por esto que teniendo en mente este foco de detección uno de los frameworks que más nos pueden ayudar a decidir qué tenemos que detectar, como vimos en la pasada entrada MITRE ATT&CK, defiende teniendo en cuenta las tácticas y técnicas del adversario, es MITRE ATT&CK.

Como MITRE ATT&CK se basa en observaciones reales podemos usar esta matriz para evaluar nuestra seguridad actual. Esto lo podemos hacer asignando un nivel de madurez a cada una de las técnicas y verificando para cada una de ellas en que nivel de madurez se encuentra nuestra infraestructura. John Hubbard presentó en el SANS Summit los siguientes niveles de madurez:

1. No hay detección
2. Registrado localmente
3. Registrado centralmente
4. Registro enriquecido / correlacionado
5. Reporte / Visualización
6. Experimental / Detección funcional
7. Detección de alta fidelidad

Leer más