Coder Social home page Coder Social logo

mandyonze / droidsentinel Goto Github PK

View Code? Open in Web Editor NEW
12.0 1.0 2.0 51.58 MB

Analizador de tráfico para dispositivos Android potencialmente comprometidos como parte de una botnet orientado a detectar ataques DDoS.

License: GNU General Public License v3.0

Java 100.00%
ataque-ddos prediction-algorithm genetic-algorithm arima holt-winters android tcpdump android-application hackathon cybercamp

droidsentinel's Introduction

DroidSentinel-ProgressTwitter

Return0 - DroidSentinel

DroidSentinel-Progress

DroidSentinel es una aplicación desarrollada durante el Hackathon celebrado en Santander en el evento Cybercamp en el año 2017. A líneas generales, Droidsentinel es un analizador de tráfico para dispositivos Android potencialmente comprometidos como parte de una botnet orientado a detectar ataques DDoS.

Contenidos

Sobre DroidSentinel

DroidSentinel es una aplicación sencilla diseñada para Android está destinada para cualquier tipo de usuario. Se trata de una herramienta que tiene como objetivo principal el análisis de los flujos de tráfico de salida en busca de indicios de actividades maliciosas, en particular aquellas que desenmascaren su posible participación en ataques DDoS. DroidSentinel notifica a tiempo real las actividades sospechosas realizadas.

Ataques de Denegación de Servicio

En primer lugar, DroidSentinel tiene como motivación principal el aumento de los ataques de Denegación de Servicio Distribuidos, ¿Qué es un ataque DDoS? Es un ataque a un sistema de computadoras o red que causa que un servicio o recurso sea inaccesible a los usuarios legítimos. Normalmente provoca la pérdida de la conectividad con la red por el consumo del ancho de banda de la red de la víctima o sobrecarga de los recursos computacionales del sistema atacado.

Requisitos

Para poder iniciar nuestra aplicación se necesitan los siguientes programas:

  • AndroidStudio

    Android Studio es el entorno de desarrollo integrado oficial para la plataforma Android y utilizado por nuestro proyecto.

  • NOX Emulator

    Emulador utilizado para la ejecución de nuestra aplicación

  • TCPDUMP

    Tcpdump necesario para el análisis y sniffing de paquetes. Tcpdump es necesario instalarlo en nuestro emulador para que se cree el archivo con la información de los paquetes.

Instalación

Para llevar a cabo la ejecución de nuestra aplicación, es necesario cargar el proyecto en el entorno de trabajo Android Studio. También es necesario el emulador Nox en la que descargaremos la terminal o consola, que es una aplicación que te permite, mediante órdenes escritas realizar todo tipo de operaciones. La terminal es necesaria para poder instalar el tcpdump para el sniffing de paquetes.

Para poder instalar tcpdump en nuestro emulador, debemos ejecutar los siguientes comandos en la terminal:

Adjuntamos el link de los distintos elementos necesarios para la instalación y ejecución de nuestra aplicación:

Banco de pruebas

Los tests realizados se han llevado a cabo con distintos Scrappers para la generación de tráfico, utilizando uno realizado por nosotros y algunos por usuarios de github. A continuación adjuntamos los usuarios con los distintos scripts.

Legítimos:

Ataques DDoS:

Para llevar a cabo la fase de pruebas de nuestra aplicación, utilizamos un total de 30 usuarios con sus respectivos dispositivos.

ADF y otros scripts útiles

Los scripts utilizados para agrupar y modelar las series temporales así como para calcular el ADF de cada una de ellas, se pueden encontrar aquí.

Otros

Fuentes de información:

DDoS

Autores: P. Zhang, H. Wang, C. Hu, C. Lin

Paper: "On Denial of Service Attacks in Software Defined Networks"

Publicación: IEEE Network, Vol. 30 (6), pp. 28-33, December 2016

Prediction Intervals (Umbrales Adapativos)

Autores: R. J. Hyndman, A. B. Koehler, J. K. Ord, R.D. Snyder

Paper: "Prediction intervals for exponential smoothing state space models"

Publicación: Journal of Forecasting, vol. 24, pp. 17-37, 2005.

Anomalías en el tráfico

Autores: V. Chandola, A. Banerjee, V. Kumar

Paper: "Anomaly Detection: A Survey"

Publicación: ACM Computing Surveys vol. 41, issue 3, article no. 15, July 2009

Flash Crowd(análisis de tráfico legítimo)

Autores: S. Bhatia, D. Schmidt, G. Mohay, A. Tickle

Paper: "A framework for generating realistic traffic for Distributed Denial-of-Service attacks and Flash Events",

Publicación: Computers & Security, vol. 40, no. 1, pp. 95-107, February 2014

Sobre Nosotros

Somos estudiantes de cuarto año de Ingeniería Informática en la Universidad Complutense de Madrid, actualmente completamos nuestros estudios con la colaboración en el proyecto SelfNet, llevado a cabo por el Grupo de Análisis, Seguridad y Sistemas perteneciente al departamento de Ingeniería de Software e Inteligencia Artificial de la UCM.

El equipo está compuesto por:

droidsentinel's People

Contributors

andreshg avatar guillerius avatar mandyonze avatar voar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

vaginessa

droidsentinel's Issues

Recomendación

¡Hola!

No sabemos si aún lo habéis investigado, pero imaginamos que, para probar vuestra aplicación vais a tener que hacer un ataque de denegación de servicio, nosotros desde FDist hemos probado LOIC como herramienta para hacerlo, ya que permite hacerlo desde una interfaz y es más sencillo.

Desde el equipo de Trojan - TOTH

[Suggestion] Security improvement

Using QARK (https://github.com/linkedin/qark/) we were checked the app, and a possible security issues were found:

Since the minSdkVersion is less that 9, it is likely this application is vulnerable to TapJacking. QARK made no attempt to confirm, as the protection would have to be custom code, which is difficult for QARK to examine and understand properly. This vulnerability allows a malicious application to lay on top of this app, while letting the key strokes pass through to the application below. This can cause users to take unwanted actions, within the victim application, similar to Clickjacking on websites. Please select the appropriate options in the exploitation menus to verify manually using QARK's exploit APK. Note: The QARK proof-of-concept is transparent, but in real-world attacks, it would likely not be. This is done solely to aid in testing. For more information

References: https://media.blackhat.com/ad-12/Niemietz/bh-ad-12-androidmarcus_niemietz-WP.pdf

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.