GoatDroid de OWASP, inspirado en el famoso WebGoat, es un proyecto que ayudará a educar en materia de seguridad a los desarrolladores de aplicaciones Android.
Se trata de un entorno completamente funcional para aprender acerca de las vulnerabilidades y los fallos de seguridad en la extendida plataforma. El framework y la aplicación están basadas completamente en Java. No es necesario instalar un servidor web externo o un contenedor, aunque si necesitaremos MySQL, el SDK de Android y Eclipse. Cada servicio web corre en instancias Jetty embebidas y utiliza la implementación Jersey de JAX-RS.
Ya es posible descargar la segunda versión de la Beta (OWASP GoatDroid v0.1.2 BETA.zip) y los pasos para su instalación son muy sencillos:
1. Como comentábamos, es necesario tener previamente instalado Mysql, JDK, Eclipse y Android SDK.
2. Lo primero que haremos es crear un dispositivo virtual con un nivel 7 de API como mínimo.
3. Después importamos la base de datos FourGoats en MySQL: 'mysql -u username -p < fourgoats.sql'. El fichero fourgoats.sql está dentro del directorio /databases de la carpeta GoatDroid.
4. Dentro de MySQL ejecutamos: 'create user 'goatboy'@'localhost' identified by 'goatdroid'' (si queremos indicar otra contraseña tendremos que cambiarla en el código fuente de goatdroid.jar y re-exportar.
5. En MySQL, ejecutamos : 'grant insert, delete, update, select on fourgoats.* to goatboy@localhost'
6. Ahora que la base de datos está configurada con las tablas y los datos de ejemplo, arrancamos goatdroid.jar haciendo clic o ejecutamos 'java -jar goatdroid.jar'
7. En el menú seleccionamos 'Configure y Edit' y añadimos las rutas de Eclipse y del SDK y los dispositivos virtuales:
8. Desplegamos la carpeta FourGoats en Apps, seleccionamos v1 y pulsamos el botón 'Iniciar servicio web':
9. Pulsamos el botón para iniciar el emulador y seleccionamos nuestro dispositivo virtual:
10. Una vez arrancado el dispositivo virtual, instalamos la aplicación pulsando el botón "Push App To Device". En caso de que fallara, podemos instalar el apk nosotros directamente: 'D:\Android\android-sdk\platform-tools>adb.exe install "d:\OWASP GoatDroid v0.1.2 BETA\goatdroid_apps\FourGoats\v1\android_app\FourGoats- Android Application.apk"'
11. Pinchamos en el icono creado para iniciar la aplicación y, antes de empezar a hacer nada, es necesario especificar el host y el puerto para conectarnos al servicio web. Para ello, pulsamo el botón 'Menú' y seleccionamos "Destination Info".
12. Por último, registramos y creamos una cuenta y nos loggeamos.
Y ya está. Cómo habéis visto, la aplicación ser llama FourGoats, una aplicación que emula una red social donde podemos registrarnos en varios lugares, ganar premios de fidelidad y ver lo que nuestros amigos están haciendo... pero sobretodo, descubrir vulnerabilidades de tipo:
¡Aquí comienza el desafío! El proyecto no facilitará las soluciones en la primera release de GoatDroid, así que tenemos tiempo para encontrar y desmontar todo ;)
pd. Y si prefieres iOS también existe el equivalente: OWASP iGoat Project
Se trata de un entorno completamente funcional para aprender acerca de las vulnerabilidades y los fallos de seguridad en la extendida plataforma. El framework y la aplicación están basadas completamente en Java. No es necesario instalar un servidor web externo o un contenedor, aunque si necesitaremos MySQL, el SDK de Android y Eclipse. Cada servicio web corre en instancias Jetty embebidas y utiliza la implementación Jersey de JAX-RS.
Ya es posible descargar la segunda versión de la Beta (OWASP GoatDroid v0.1.2 BETA.zip) y los pasos para su instalación son muy sencillos:
1. Como comentábamos, es necesario tener previamente instalado Mysql, JDK, Eclipse y Android SDK.
2. Lo primero que haremos es crear un dispositivo virtual con un nivel 7 de API como mínimo.
3. Después importamos la base de datos FourGoats en MySQL: 'mysql -u username -p < fourgoats.sql'. El fichero fourgoats.sql está dentro del directorio /databases de la carpeta GoatDroid.
4. Dentro de MySQL ejecutamos: 'create user 'goatboy'@'localhost' identified by 'goatdroid'' (si queremos indicar otra contraseña tendremos que cambiarla en el código fuente de goatdroid.jar y re-exportar.
5. En MySQL, ejecutamos : 'grant insert, delete, update, select on fourgoats.* to goatboy@localhost'
6. Ahora que la base de datos está configurada con las tablas y los datos de ejemplo, arrancamos goatdroid.jar haciendo clic o ejecutamos 'java -jar goatdroid.jar'
7. En el menú seleccionamos 'Configure y Edit' y añadimos las rutas de Eclipse y del SDK y los dispositivos virtuales:
8. Desplegamos la carpeta FourGoats en Apps, seleccionamos v1 y pulsamos el botón 'Iniciar servicio web':
9. Pulsamos el botón para iniciar el emulador y seleccionamos nuestro dispositivo virtual:
10. Una vez arrancado el dispositivo virtual, instalamos la aplicación pulsando el botón "Push App To Device". En caso de que fallara, podemos instalar el apk nosotros directamente: 'D:\Android\android-sdk\platform-tools>adb.exe install "d:\OWASP GoatDroid v0.1.2 BETA\goatdroid_apps\FourGoats\v1\android_app\FourGoats- Android Application.apk"'
11. Pinchamos en el icono creado para iniciar la aplicación y, antes de empezar a hacer nada, es necesario especificar el host y el puerto para conectarnos al servicio web. Para ello, pulsamo el botón 'Menú' y seleccionamos "Destination Info".
12. Por último, registramos y creamos una cuenta y nos loggeamos.
Y ya está. Cómo habéis visto, la aplicación ser llama FourGoats, una aplicación que emula una red social donde podemos registrarnos en varios lugares, ganar premios de fidelidad y ver lo que nuestros amigos están haciendo... pero sobretodo, descubrir vulnerabilidades de tipo:
Client-Side Injection
Server-Side Authorization Issues
Side Channel Information Leakage
Insecure Data Storage
Privacy Concerns
pd. Y si prefieres iOS también existe el equivalente: OWASP iGoat Project
Comentarios
Publicar un comentario