El libre pensamiento para un internet libre
No estas registrado.
wpa_cli es un interprete de ordenes interactivo para wpa_supplicant.
Es una herramienta imprescindible si uno se interesa de cerca al protocolo WPS
Por el pasado se podía iniciar en consola directamente.
Con el paso a system.d y desde unos cuantos "releases" no es posible (en kali y otras distribuciones):
Lo hago teniendo todo los servicios "matados" (network manager, wpa_supplicant, dhcpd etc...) con sudo y desde la consola root
Haciendo un strace al comando wpa_cli se ve que no encuentra el fichero "/var/run/wpa_supplicant"
^
open("/var/run/wpa_supplicant", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11430, tv_nsec=648988249}) = 0
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11430, tv_nsec=649361480}) = 0
select(1, [], [], [], {tv_sec=0, tv_usec=999627}) = 0 (Timeout)
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11431, tv_nsec=651194115}) = 0
open("/var/run/wpa_supplicant", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11431, tv_nsec=651472922}) = 0
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11431, tv_nsec=651570979}) = 0
select(1, [], [], [], {tv_sec=0, tv_usec=999902}) = 0 (Timeout)
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11432, tv_nsec=652353760}) = 0
open("/var/run/wpa_supplicant", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11432, tv_nsec=653070890}) = 0
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11432, tv_nsec=653574865}) = 0
select(1, [], [], [], {tv_sec=0, tv_usec=999496}) = 0 (Timeout)
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11433, tv_nsec=654905481}) = 0
open("/var/run/wpa_supplicant", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11433, tv_nsec=655262509}) = 0
clock_gettime(CLOCK_BOOTTIME, {tv_sec=11433, tv_nsec=655407779}) = 0
select(1, [], [], [], {tv_sec=0, tv_usec=999855}^Cstrace: Process 2560 detached
Y que busca ficheros en etc que no existen...
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f123dff1000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
Para usar wpa_cli debemos
Terminar los procesos conflictuales
No vamos a ser muy sutiles desactivando los servicios-procesos de uno en uno y vamos a empelar nuestro querido
sudo airmon-ng check kill
Crear un fichero de configuración para wpa_supplicant minimista.
Lo voy a llamar wpa_cli.conf y guardarlo en un directorio preciso para tener lo bajo el brazo.
Debemos poner esta linea y lo guardamos
ctrl_interface=/var/run/wpa_supplicant
(El directorio que no se encontraba)
Ejecutar wpa_supplicant indicando el fichero de configuración
Ejemplo
sudo wpa_supplicant -i wlan0 -c '/home/kcdtv/Escritorio/WPShunting/wpa_cli.conf'
Debéis sí o sí indicar una interfaz (después "-i") y la ruta hacía vuestro de fichero de configuración se pone después "-c"
Ahora podéis abrir otra consola y ejecutar wpa_cli
.
Lo hago con dos consolas porque me resulta más cómodo.
Cuando quiero parrar el proceso wpa_supplicant hago ctr+c en la consola wpa_supplicant.
Tenéis la posibilidad de hacer coger el proceso wpa_supplicant en background (para no tener que abrir otra consola) con el argumento -B.
Si preferís usar el argumento -B , tendréis que matar el proceso wpa_supplicant "a mano" (otro airmon-ng check kill bastará )
Quería ver si tenía algunos dispositivos con "Wifi Direct" al rededor después haber tomado conocimiento de este full disclosure sobre televisores Samsung
Para buscar dispositivos con Wifi Direct
p2p_find
Para parrar el escaneo WiFi P2P
p2p_stop_find
Recuerdo que con wpa_cli podéis conectaros con un PIN en mode managed
wpa_cli es perfecto si tenemos uno unos cuantos PIN probables cuando nuestro dispositivos no compatibles con el modo monitor o cuando se usa un Chipset Ralink USB (van de pena con reaver)
Las posibilidades que ofrece wpa_cli son inmensurables.
De hecho el código de reaver se basa en wpa_cli.
Es un "deber" tenerlo funcional
Más lectura
wpa_cli en Man page
WPS en wpa_suppllicant en Documentación hostapd
WiFi Direct / P2P module en Documentación hostapd
Desconectado
Tema | Respuestas | Vistas | Ultimo mensaje |
---|---|---|---|
0 | 165 | Ayer 00:30:11 por maxi | |
14 | 2412 | 29-06-2022 13:19:48 por kcdtv | |
Error de inicio en entorno gráfico por Hunter310#
|
24 | 15134 | 20-06-2022 12:22:19 por kcdtv |
15 | 2746 | 10-06-2022 09:13:42 por kcdtv | |
0 | 252 | 02-06-2022 10:05:09 por kcdtv |
Ultimo usuario registrado: maxi
Usuarios registrados conectados: 0
Invitados conectados: 6
Número total de usuarios registrados: 2,319
Número total de temas: 1,588
Número total de mensajes: 15,144
Atom tema feed - Impulsado por FluxBB