Tutoriales y Manuales
Entradas Mensuales
-
►
2024
(Total:
1019
)
- ► septiembre (Total: 50 )
-
►
2023
(Total:
710
)
- ► septiembre (Total: 65 )
-
►
2022
(Total:
967
)
- ► septiembre (Total: 72 )
-
▼
2021
(Total:
730
)
- ► septiembre (Total: 56 )
-
▼
febrero
(Total:
47
)
- Instalar y configurar IDS/IPS Suricata en una Rasp...
- Apple se ve obligada a agregar puntuaje de reparab...
- Vulnerabilidad crítica en vCenter de VMWare
- Anuncian un portátil modular para facilitar su re...
- La Universidad de Oxford sufre un ciberataque en u...
- Las contraseñas más utilizadas en España
- Disponible nueva versión de Kali Linux 2021.1 (com...
- Empresas de Lleida victimas de un ataque del Ranso...
- Descubren Silver Sparrow: un malware afecta a 30.0...
- Alertan ataques de suplantación de identidad en cu...
- Píxel de rastreo en los e-mails se ha convertido e...
- Granjas de minado: minar criptomonedas hace desapa...
- Programas para ver y comprobar hardware de tu PC: ...
- Kia Motors America sufre un ataque de ransomware, ...
- Estructura archivos PDF con malware - Análisis y p...
- La Policía cierra una red IPTV ilegal con 20.000 c...
- Google Presenta Preview de Android 12
- Nomenclatura procesadores CPU Amd Ryzen e Intel
- Francia impulsará la ciberdefensa tras los ataques...
- Interfaz de red eth0 a enp0s3 / eno1 - nombres de ...
- Grave vulnerabilidad en App ShareIT de Softonic
- Mozilla analiza la privacidad de las app de citas
- ¿Qué es una vCPU? Núcleos Vs Hilos
- Fallo en Telegram permitía recuperar mensajes auto...
- Proxmox VE: herramienta virtualización basada en D...
- ¿Vas a comprar un monitor? Diferencias entre panel...
- Commando VM 2.0: máquina virtual en Windows para p...
- Así hackearon con TeamViewer una planta de agua pa...
- Filtran 3.270 millones de direcciones de correos e...
- KVM – Virtualización usando el núcleo (kernel) de ...
- Podman: contenedores docker de la mano de RedHat
- Alertan graves vulnerabilidades en la pila TCP/IP ...
- Fiabilidad de una unidad SSD - Lecturas - Escritur...
- Instalar y configurar RaspBerry Pi 4 B : opciones,...
- Nueva vulnerabilidad activa para Google Chrome (y ...
- Mejores programas para medir la velocidad de tu SS...
- Primeros pasos con contenedores Docker y gestión g...
- Tipos de memorias NAND SSD: SLC, MLC, TLC, QLC
- Introducción y comandos Android Debug Bridge (adb)
- Instalar y configurar HoneyPot DShield (basado en ...
- Las 10 vulnerabilidades más explotadas y las más g...
- Instalar Kali Linux en una RaspBerry Pi 4
- Cuidado con los mods que descargas para Cyberpunk ...
- Mobile Security Framework (MobSF): Herramienta aná...
- Virtualización: Mejores programas para trabajar co...
- Vulnerabilidad crítica en la librería libgcrypt de...
- Instalar Honeypot T-Pot en una máquina virtual
-
►
2020
(Total:
212
)
- ► septiembre (Total: 21 )
-
►
2019
(Total:
102
)
- ► septiembre (Total: 14 )
-
►
2017
(Total:
231
)
- ► septiembre (Total: 16 )
-
►
2016
(Total:
266
)
- ► septiembre (Total: 38 )
-
►
2015
(Total:
445
)
- ► septiembre (Total: 47 )
-
►
2014
(Total:
185
)
- ► septiembre (Total: 18 )
-
►
2013
(Total:
100
)
- ► septiembre (Total: 3 )
-
►
2011
(Total:
7
)
- ► septiembre (Total: 1 )
Blogroll
Etiquetas
Entradas populares
-
Después de ver qué es una vCPU y la diferencia entre núcleos (cores) e hilos en los procesadores, pasamos a explicar toda la nomenclatura d...
-
En el panorama en constante evolución de la seguridad de redes, OpnSense se ha convertido en una formidable solución de firewall. Nacido de...
-
Pese a que Gemini ofrece multitudes de opciones, recientemente, se ha dado a conocer una situación fuera de lo común. Hace unos días, un es...
Introducción y comandos Android Debug Bridge (adb)
Android Debug Bridge, como poder empezar a trabajar en el desde un sistema Linux o Windows, pasando por los comandos mas usados y dando un enfoque al pentensting usando este servicio. Android Debug Bridge (ADB) es una herramienta de línea de comandos que viene incluida con el SDK de Android, permite a los desarrolladores comunicarse con un emulador o un dispositivo Android conectado directamente desde la línea de comandos.
¿Qué es Android Debug Bridge (adb)?
El comando adb permite realizar una variedad de acciones en el dispositivo, como instalar y depurar apps, y proporciona acceso a un shell de Unix que puedes usar para ejecutar distintos comandos en un dispositivo. Es un programa cliente-servidor que incluye tres componentes:
- Un cliente, que envía comandos. El cliente se ejecuta en tu máquina de desarrollo. Puedes invocar un cliente desde un terminal de línea de comandos emitiendo un comando adb.
- Un daemon (adbd), que ejecuta comandos en un dispositivo. El daemon se ejecuta como un proceso en segundo plano en cada dispositivo.
- Un servidor, que administra la comunicación entre el cliente y el daemon. El servidor se ejecuta como un proceso en segundo plano, en tu máquina de desarrollo.
¿Cómo activar/deshabilitar ADB en android?
Activar ADB
Para tener activada la herramienta en nuestro android primero tenemos que habilitar la opcion de “depuración de USB”, para eso seguimos los siguientes pasos:
1 — En nuesto andoid tenemos que ir a la siguiente ruta: Ajustes/sistema/Acerca del telefono.
En donde encontraremos la información de nuestro dispositivo.
2 — Tenemos que dar pulsar el apartado de compilación hasta que nos salte la siguiente leyenda: “Ya es un desarrollador”:
3 — Una vez hecho el paso anterior se nos desbloqueará una nueva sección de opciones en nuestro android, la cual estará en la siguiente ruta: Ajustes/sistema/Opciones de desarrollador.
4 — Por último, dentro de esa nueva sección encontramos la opción de “Depuración USB” y la activamos.
Listo, de esta manera tendremos activada esta herramienta en nuestro celular.
Deshabilitar ADB
Para deshabilitar esta opción solo volvemos al punto 4 anterior y lo desactivamos.
Instalar el servicio adb en diferentes sistemas
Adb puede ser instalado en muchos sistemas
Windows
Para instalar esta herramienta solo tenemos que irnos al siguiente link y descargar el instalador:
https://dl.google.com/android/installer_r24.4.1-windows.exe
Linux
En linux este paso es dependiendo del sistema. Para sistemas Debian/Ubuntu y Fedora puedes instalar con apt-get y yum/dnf respectivamente los paquetes android-tools-adb y android-tools-fastboot
Debian/Ubuntu
sudo apt-get install android-tools-adb android-tools-fastboot
Fedora
dnf install android-tools
Android
Para instalarlo en android tenemos que hacer uso de una aplicacion para simular una terminal, en este caso la aplicacion de TERMUX:
Entramos a termux y pegamos la siguente linea de comandos:
apt update > /dev/null 2>&1 && apt --assume-yes install wget > /dev/null 2>&1&& wget https://github.com/MasterDevX/Termux-ADB/raw/master/InstallTools.sh -q&& bash InstallTools.sh
Para desinstalar:
apt update > /dev/null 2>&1 && apt --assume-yes install wget > /dev/null 2>&1&& wget https://github.com/MasterDevX/Termux-ADB/raw/master/RemoveTools.sh -q&& bash RemoveTools.sh
Uso básico de ADB
El uso de la herramienta ADB no varia dependiendo en el sistema en que este instalado, es decir, los comandos funcionan exactamente igual aun que se ejecuten desde linux o windows.
Los comandos básicos son los siguientes:
- Conectar con dispositivo
- `adb connect [IP]:[PUERTO] (por defecto el 5555)`
- Listado de dispositivos
- `adb devices`
- Desconectar el dispositivo:
- `adb disconnect [IP]:[PUERTO]`
Listado de comandos ADB más utilizados
- Copiar un archivo al dispositivo:
- `adb push [RUTA-LOCAL] [RUTA-DISPOSITIVO]`
- Descargar un archivo desde el dispositivo:
- `adb pull [RUTA-DISPOSITIVO] [RUTA-LOCAL]`
- Reiniciar dispositivo:
- `adb reboot`
- Reiniciar dispositivo (arranque):
- `adb reboot-bootloader`
- Instalar APK:
- `adb install [APK]`
- Reinstalar APK:
- `adb -r install [APK]`
- Desinstalar APK:
- `adb uninstall [NOMBRE-PAQUETE-APLICACION]`
- Obtener shell del dispositivo:
- `adb shell`
- Iniciar una Activity (apk):
- `adb shell am start -n [PAQUETE-APLICACION]/.[ACTIVITY]` `adb shell am start -n [PAQUETE-APLICACION]/[ACTIVITY]`
- Tomar captura de pantalla:
- `adb shell screencap [RUTA-DISPOSITIVO]`
- Grabar pantalla del dispositivo:
- `adb shell screenrecord -time-limit [SEGUNDOS] [RUTA-DISPOSITIVO]`
- Emular botón encendido:
- `adb shell input keyevent 26`
- Emular pantalla de desbloqueo:
- `adb shell input keyevent 82`
- Listar paquetes instalados:
- `adb shell pm list packages`
- Logcat:
- `adb logcat`
- Volcar datos del sistema en la pantalla:
- `adb shell dumpsys`
- Volcar datos del sistema en la pantalla enfocandonos en los servicios:
- `dumpsys | grep "DUMP OF SERVICE"`
- Volcar datos de un servicio específico:
- `adb shell dumpsys [servicio]`
- Extraer APK:
- `adb shell pm path [NOMBRE-PAQUETE]`
- Mostrar información sobre CPU:
- `adb shell cat/proc/cpuinfo`
- Habilitar datos móviles:
- `adb shell svc data enable`
- Deshabilitar datos móviles
- `adb shell svc data disable`
- Localizar dispositivo
- `adb shell location`
¿Pentesting con ADB?
Como ya sabemos el Pentesting o también llamado test de penetración está diseñado para determinar el alcance de los fallos de seguridad de un sistema.
En este caso, aprovecharémos un fallo en esta herramienta, el cual perimite que un usuario pueda ver la direccion de los dispositivos que estan usando este servicio. Para esto utilizaremos el buscador SHODAN que es una herramienta fundamental para los pentesters.
Shodan es un motor de búsqueda en el que, a diferencia de Google y otros buscadores, no podemos buscar, por ejemplo, una imagen o un texto, Este motor de búsqueda está enfocado únicamente a buscar sistemas y servicios conectados a internet. Por este motivo, Shodan está clasificado como uno de los motores de búsquedas más peligrosos, por todo el contenido que tiene.
Podemos hacer todo tipo de búsquedas dentro de su ámbito, incluso podemos utilizar los dorks que incluye este motor de búsquedas.
En el buscador shodan usamos el siguiente dork:
`product:”Android Debug Bridge”`
Este dork lo que hace es especificar al buscador que queremos encontrar un producto, y que el producto es android debug bridge, con lo cual nos responderá mostrándonos los dispositivos en los cuales el servicio de adb esta siendo ejecutado de manera online
Como podemos observar, son muchos dispositivos en los cuales podríamos ingresar, esto es muy peligroso por que cualquier persona puede acceder a tu información.
Para iniciar el pentesting usando adb lo primero que tenemos que hacer es verificar que ADB este correctamente instalado, podemos verificar esto usando el comando:
adb --help
En donde se nos mostrará la versión instalada así como también una ayuda para usar la herramienta.
Lo siguiente que harémos es conectarnos a un dispositivo con el comando:
adb connect [IP]
Como pueden ver se nos inicia el daemon para poder conectarse al dispositivo.
Cuando estemos conectados tenemos una gran variedad de cosas que podemos hacer.
En este ejemplo lo primero que vamos a hacer es acceder a la shell del dispositivo para después iniciar a buscar información interesante, lo hacemos con el siguiente comando:
adb shell
Si se dan cuenta, ya estamos dentro del dispositivo y podemos ejecutar comandos de linux, en este caso usé “ls” para listar los archivos y “pwd” para ver la ruta actual.
Ahora usaremos el comando “dumpsys” para mostral la información del dispositivo, pero este comando tiene un inconveniente al usarse por si solo, ya que este comando nos muestra la información en tiempo real de todos los servicios, debido a eso constantemente se esta actualizando la información haciendo que leer la información sea imposible, para eso usaremos el comando “grep” junto con “dumpsys” para enfocarnos solamente en los servicios:
El comando a usar es el siguiente:
dumpsys | grep "DUMP OF SERVICE"
Ahora, se nos muestra la lista de los servicios.
DUMP OF SERVICE CustomFrequencyManagerService:
DUMP OF SERVICE DirEncryptService:
DUMP OF SERVICE FMPlayer:
DUMP OF SERVICE SYSSCOPE:
DUMP OF SERVICE SecTVOutService:
DUMP OF SERVICE SurfaceFlinger:
DUMP OF SERVICE TvoutService_C:
DUMP OF SERVICE accessibility:
DUMP OF SERVICE account:
DUMP OF SERVICE activity:
DUMP OF SERVICE alarm:
DUMP OF SERVICE apn_settings_policy:
DUMP OF SERVICE application_policy:
DUMP OF SERVICE apppermission_control_policy:
DUMP OF SERVICE appwidget:
DUMP OF SERVICE audio:
DUMP OF SERVICE backup:
DUMP OF SERVICE barbeam:
DUMP OF SERVICE battery:
DUMP OF SERVICE batteryinfo:
DUMP OF SERVICE bluetooth:
DUMP OF SERVICE bluetooth_a2dp:
DUMP OF SERVICE bluetooth_avrcp:
DUMP OF SERVICE bluetooth_policy:
DUMP OF SERVICE browser_policy:
DUMP OF SERVICE clipboard:
DUMP OF SERVICE clipboardEx:
DUMP OF SERVICE com.orange.authentication.simcard:
DUMP OF SERVICE commontime_management:
DUMP OF SERVICE connectivity:
DUMP OF SERVICE content:
DUMP OF SERVICE context_aware:
DUMP OF SERVICE country_detector:
DUMP OF SERVICE cpuinfo:
DUMP OF SERVICE date_time_policy:
DUMP OF SERVICE dbinfo:
DUMP OF SERVICE device_info:
DUMP OF SERVICE device_policy:
DUMP OF SERVICE devicestoragemonitor:
DUMP OF SERVICE diskstats:
DUMP OF SERVICE drm.drmManager:
DUMP OF SERVICE dropbox:
DUMP OF SERVICE eas_account_policy:
DUMP OF SERVICE edm_proxy:
DUMP OF SERVICE email_account_policy:
DUMP OF SERVICE email_policy:
DUMP OF SERVICE enterprise_policy:
DUMP OF SERVICE enterprise_vpn_policy:
DUMP OF SERVICE entropy:
DUMP OF SERVICE firewall_policy:
DUMP OF SERVICE gfxinfo:
DUMP OF SERVICE hardware:
DUMP OF SERVICE input:
DUMP OF SERVICE input_method:
DUMP OF SERVICE iphonesubinfo:
DUMP OF SERVICE isms:
DUMP OF SERVICE kioskmode:
DUMP OF SERVICE location:
DUMP OF SERVICE location_policy:
DUMP OF SERVICE lock_settings:
DUMP OF SERVICE mdm.remotedesktop:
DUMP OF SERVICE media.audio_flinger:
DUMP OF SERVICE media.audio_policy:
DUMP OF SERVICE media.camera:
DUMP OF SERVICE media.player:
DUMP OF SERVICE meminfo:
DUMP OF SERVICE mini_mode_app_manager:
DUMP OF SERVICE misc_policy:
DUMP OF SERVICE motion_recognition:
DUMP OF SERVICE mount:
DUMP OF SERVICE netpolicy:
DUMP OF SERVICE netstats:
DUMP OF SERVICE network_management:
DUMP OF SERVICE nfc:
DUMP OF SERVICE notification:
DUMP OF SERVICE package:
DUMP OF SERVICE password_policy:
DUMP OF SERVICE permission:
DUMP OF SERVICE phone:
DUMP OF SERVICE phone_restriction_policy:
DUMP OF SERVICE phoneext:
DUMP OF SERVICE power:
DUMP OF SERVICE remoteinjection:
DUMP OF SERVICE restriction_policy:
DUMP OF SERVICE roaming_policy:
DUMP OF SERVICE samplingprofiler:
DUMP OF SERVICE samsung.facedetection_service:
DUMP OF SERVICE scheduling_policy:
DUMP OF SERVICE scontext:
DUMP OF SERVICE search:
DUMP OF SERVICE security_policy:
DUMP OF SERVICE sensorhubservice:
DUMP OF SERVICE sensorservice:
DUMP OF SERVICE serial:
DUMP OF SERVICE servicediscovery:
DUMP OF SERVICE simphonebook:
DUMP OF SERVICE sip:
DUMP OF SERVICE spell:
DUMP OF SERVICE statusbar:
DUMP OF SERVICE telephony.registry:
DUMP OF SERVICE textservices:
DUMP OF SERVICE throttle:
DUMP OF SERVICE tvoutservice:
DUMP OF SERVICE uimode:
DUMP OF SERVICE updatelock:
DUMP OF SERVICE usagestats:
DUMP OF SERVICE usb:
DUMP OF SERVICE vibrator:
DUMP OF SERVICE voip:
DUMP OF SERVICE vpn_policy:
DUMP OF SERVICE wallpaper:
DUMP OF SERVICE wfd:
DUMP OF SERVICE wifi:
DUMP OF SERVICE wifi_policy:
DUMP OF SERVICE wifip2p:
DUMP OF SERVICE window:
Vamos a ver solo unos ejemplos de la información que podemos recolectar.
Recolectar información con adb
- Lo primero que vamos a ver es la información de la bateria del dispositivo.
dumpsys battery
- El siguiente es para ver el uso de memoria de la CPU:
dumpsys cpuinfo
- Ver la ubicación del dispositivo:
dumpsys location
- Este comando es muy interesante ya que el dispositivo hace uso de los servicios de Google para mostrarnos la ubicación.
- Para ver el espacio usado en el dispositivo:
dumpsys diskstats
- Ver las aplicaciones instaladas:
pm list packages -f
Como pueden ver es muy fácil extraer información de un dispositivo a traves de ADB, también podemos hacer uso de otras técnicas para poder conseguir otras cosas, por ejemplo, podemos crear una apk infectada desde metasploit, ganar una sesión y así tener acceso a mas opciones para un mejor pentesting.
Aquí unos ejemplos:
- Instalando y ganando una sesión de meterpreter desde un dispositivo vulnerable con adb
1 comentarios :
Hola, gracias por la informacion. En mi celular Samsung usé la opción: "pm list packages -f", para listar los paquetes y borrar los preinstalados de fabrica que no uso. Pero quisiera saber si hay la opción de listar el tamaño que ocupa cada paquete, y así borrar los más grandes.
Publicar un comentario
Los comentarios pueden ser revisados en cualquier momento por los moderadores.
Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.
Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.