(http://1.bp.blogspot.com/-AX2SXQuBIVQ/USmG-N6JbRI/AAAAAAAABck/ccr9MS5i1JA/s1600/goatdroid.png)
OWASP GoatDroid (https://github.com/downloads/jackMannino/OWASP-GoatDroid-Project/OWASP-GoatDroid-0.9.zip) 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.
Instalación:
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.
(http://2.bp.blogspot.com/--f7NBDcRhMw/USmGfr7-VwI/AAAAAAAABbc/7S2OapO1vBA/s1600/Goatdroid_1.jpg)
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'
(http://4.bp.blogspot.com/-fJawFeBoaNc/USmGp9Lq_TI/AAAAAAAABb0/rg_gr0f3FrA/s1600/goatdroid_2.jpg)
7. En el menú seleccionamos 'Configure y Edit' y añadimos las rutas de Eclipse y del SDK y los dispositivos virtuales:
(http://2.bp.blogspot.com/-rwDw_G0oowc/USmGnRthpPI/AAAAAAAABbs/AJfY98HsSGc/s1600/goatdroid_3.jpg)
8. Desplegamos la carpeta FourGoats en Apps, seleccionamos v1 y pulsamos el botón 'Iniciar servicio web':
(http://3.bp.blogspot.com/-kbuxZDFCAzk/USmGsHeDxUI/AAAAAAAABb8/10nV61oufbQ/s1600/goatdroid_4.jpg)
9. Pulsamos el botón para iniciar el emulador y seleccionamos nuestro dispositivo virtual:
(http://2.bp.blogspot.com/-j80jak4d4Rc/USmHLiUKeNI/AAAAAAAABcs/xPeXfKh-OCI/s1600/goatdroid_5.jpg)
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"'
(http://2.bp.blogspot.com/-itnrmACQ4QU/USmGvWaYziI/AAAAAAAABcE/WhHLBkRm1LM/s1600/goatdroid_6.jpg)(http://4.bp.blogspot.com/-qlK82hlYc7Q/USmGzMtnCQI/AAAAAAAABcM/X4p9D6t_MTY/s1600/goatdroid_7.jpg)
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".
(http://1.bp.blogspot.com/-EL5PVxf-QRA/USmG2ru2wvI/AAAAAAAABcU/1qxcKvFZ68w/s1600/goatdroid_8.jpg)
12. Por último, registramos y creamos una cuenta y nos loggeamos.
(http://4.bp.blogspot.com/-vejfyfGPzD0/USmG5hgpV8I/AAAAAAAABcc/DuI4fYedW2U/s1600/goatdroid_9.jpg)
(http://3.bp.blogspot.com/-Jisajm7J3Jw/USmGiZqixVI/AAAAAAAABbk/-bjb1QR3e50/s1600/goatdroid10.jpg)(http://3.bp.blogspot.com/-izfpXK87QRQ/USmKQbyIUiI/AAAAAAAABc0/jp6HvQF8TPI/s1600/goatdroid_11.jpg)
Se pueden descubrir vulnerabilidades de tipo:
Client-Side Injection
Server-Side
Authorization Issues
Side Channel Information Leakage
Insecure
Data Storage
Privacy Concerns