Bienvenido(a), Visitante. Por favor, ingresa o regístrate.
¿Perdiste tu email de activación?
31-03-2017, 01:36 (Viernes)
Inicio Ayuda Reglas Buscar Ingresar Registrarse
Noticias:
Liberada wifislax64-1.0 version final para descargar



+  Seguridad Wireless - Wifi
|-+  Desarrollo de scripts y aplicaciones
| |-+  Aplicaciones y diccionarios linux (Moderadores: NirozMe|on, Vodker)
| | |-+  Script reset_iface (detecta y reinicia el driver de una interfce de red)
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Script reset_iface (detecta y reinicia el driver de una interfce de red)  (Leído 13294 veces)
geminis_demon
Colaborador
*
Desconectado Desconectado

Mensajes: 2385


Prácticas precisas precisan práctica


Ver Perfil
« : 18-09-2013, 00:28 (Mi?rcoles) »

Buenas.

Pues eso, este script detecta el driver de la interface que se le pase como parámetro, y lo reinicia (lo desmonta y lo vuelve a montar).

Esto es útil a la ora de realizar una auditoría, ya que al desmontar y volver a montar el driver te aseguras de que la interface está "limpia", no está siendo usada por ningún proceso y no está fijada a ningún canal.

La idea de hacer el script me vino al leer un comentario de Alister que decía que el hacía eso siempre antes de comenzar una auditoría, y me pareció buena idea  hacer un script que automatice el proceso Evil

Código:
#!/bin/bash

# Script: reset_iface
# Por geminis_demon para Wifislax - SeguridadWireless.Net


if [ $(id -u) != 0 ]; then
echo "ERROR: Este script debe ejecutarse con permisos de ROOT"
exit 1
fi

if [ -z "$1" -o "$1" = "-h" ]; then
echo
echo "Este script desmonta y vuelve a montar el driver de una interface de red"
echo
echo "USO:"
echo " $0 interface"
echo
echo "OPCIONES:"
echo " -h  Muestra esta ayuda."
echo
if [ -z "$1" ]; then
exit 1
else
exit 0
fi
fi

IFACE="$1"

if [ ! "$(ip link|grep " $IFACE: ")" ]; then
echo
echo " - ERROR: No existe la interface \"$IFACE\""
echo
exit 1
fi

DRIVER="$(basename "$(ls -l "/sys/class/net/$IFACE/device/driver")")"

if [ ! "$DRIVER" ]; then
echo
echo " - ERROR: No ha sido posible encontrar el driver de $IFACE"
echo
exit 1
fi

echo
echo " - La interface $IFACE utiliza el driver $DRIVER"

rmmod -f "$DRIVER" && modprobe "$DRIVER"

if [ $? = 0 ]; then
echo " - El driver $DRIVER ha sido reiniciado"
echo
fi

En línea


La luz cree que viaja más rápido que cualquier otra cosa, pero se equivoca; da lo mismo lo rápido que pueda viajar, porque al final, la luz descubre que la oscuridad ha llegado antes que ella, y la está esperando.
geminis_demon
Colaborador
*
Desconectado Desconectado

Mensajes: 2385


Prácticas precisas precisan práctica


Ver Perfil
« Respuesta #1 : 25-05-2015, 04:34 (Lunes) »

Debido a los problemas que se producen con determinadas tarjetas de red al desmontar y volver a montar el driver, he investigado y encontrado la forma de hacer lo mismo de una forma menos agresiva.

Ahora el script en vez de desmontar el driver, lo desvincula del dispositivo en cuestión, y vuelve a vincularlo, de esta forma conseguimos el mismo resultado ("limpiar" la interfaz) sin los efectos secundarios que causaba la versión anterior.

Código:
#!/bin/bash

# Script: reset_iface v2
# Por geminis_demon para Wifislax - SeguridadWireless.Net

Error() {

echo " - ERROR: $1"
exit 1
}

if [ -z "$1" -o "$1" = "-h" ]; then

echo
echo "Este script desmonta y vuelve a montar el driver de una interfaz de red"
echo
echo "EJEMPLO:"
echo " $0 wlan0"
echo
echo "OPCIONES:"
echo " -h  Muestra esta ayuda."
echo

if [ -z "$1" ]; then
exit 1
else
exit 0
fi
fi

[ $(id -u) != 0 ] && Error "Este script debe ejecutarse con permisos de ROOT"
[ ! -d "/sys/class/net/$1/device/driver" ] && Error "No existe la interfaz $1"
ID="$(basename "$(ls -l "/sys/class/net/$1/device")")"
OLD_DIR="$(pwd)"
cd "/sys/class/net/$1/device/driver/"
echo -n "$ID" >unbind||Error "Ocurrió un problema al desmontar la interfaz $1"
echo -n "$ID" >bind||Error "Ocurrió un problema al montar la interfaz $1"
echo " - La interfaz $1 ha sido reiniciada"
cd "$OLD_DIR"

En línea


La luz cree que viaja más rápido que cualquier otra cosa, pero se equivoca; da lo mismo lo rápido que pueda viajar, porque al final, la luz descubre que la oscuridad ha llegado antes que ella, y la está esperando.
USUARIONUEVO
Colaborador
*
Conectado Conectado

Mensajes: 13261



Ver Perfil
« Respuesta #2 : 25-05-2015, 10:13 (Lunes) »

ok , a la noche lo actualizo.
En línea

najador
*****
Desconectado Desconectado

Mensajes: 100


Ver Perfil
« Respuesta #3 : 27-05-2015, 00:32 (Mi?rcoles) »

gracias por tus aportes  Grin
para poder ejecutarlo  ¿como haceis?  yo copio lo expuesto reset_iface v2    y al final añado sh
le doy permisos con chmod y bien ;pero como lo ejecutais o como se llama a este script desde consola porque lo llamo de las maneras que conozco  y nada no aparece en consola  Huh
y con clic derecho ejecutar en consola me sale
Advertencia: No fue posible iniciar «/root/Desktop/reset_ifacev2.sh» con los argumentos «/root/Desktop/reset_ifacev2.sh».   Huh
 ¿hay alguien que me pueda decir como se llama a este script ?para poder ejecutarlo  ;he podido darle permisos con chmod pero no soy capaz de verlo en consola y ejecutarlo
saludos
En línea
geminis_demon
Colaborador
*
Desconectado Desconectado

Mensajes: 2385


Prácticas precisas precisan práctica


Ver Perfil
« Respuesta #4 : 27-05-2015, 00:57 (Mi?rcoles) »

Da igual el nombre o la extensión que le pongas, como si no le quieres poner extensión.

Se ejecuta igual que todos los scripts, abres una terminal y ejecutas:

Código:
./ruta/del/script

o

Código:
bash /ruta/del/script

o

Código:
sh /ruta/del/script

Cualquiera de las 3 formas sirve.
« Última modificación: 27-05-2015, 00:59 (Mi?rcoles) por geminis_demon » En línea


La luz cree que viaja más rápido que cualquier otra cosa, pero se equivoca; da lo mismo lo rápido que pueda viajar, porque al final, la luz descubre que la oscuridad ha llegado antes que ella, y la está esperando.
najador
*****
Desconectado Desconectado

Mensajes: 100


Ver Perfil
« Respuesta #5 : 27-05-2015, 02:49 (Mi?rcoles) »

gracias geminis por tu respuesta  toda la razon tienes he dado con lo que era mi problema al intentar echar un ojo al script veia que faltaban caracters fue porque copie y pege con windows ;lo he hecho en live y de nuevo copiando el script y perfec  Grin Grin  a la primera
gracias de nuevo por compartir juguetes
« Última modificación: 27-05-2015, 17:22 (Mi?rcoles) por najador » En línea
makyaran
**
Desconectado Desconectado

Mensajes: 2


Ver Perfil
« Respuesta #6 : 12-11-2015, 14:01 (Jueves) »



Buenas.

Pues eso, este script detecta el driver de la interface que se le pase como parámetro, y lo reinicia (lo desmonta y lo vuelve a montar).

Esto es útil a la ora de realizar una auditoría, ya que al desmontar y volver a montar el driver te aseguras de que la interface está "limpia", no está siendo usada por ningún proceso y no está fijada a ningún canal.

La idea de hacer el script me vino al leer un comentario de Alister que decía que el hacía eso siempre antes de comenzar una auditoría, y me pareció buena idea  hacer un script que automatice el proceso Evil

Código:
#!/bin/bash

# Script: reset_iface
# Por geminis_demon para Wifislax - SeguridadWireless.Net


if [ $(id -u) != 0 ]; then
echo "ERROR: Este script debe ejecutarse con permisos de ROOT"
exit 1
fi

if [ -z "$1" -o "$1" = "-h" ]; then
echo
echo "Este script desmonta y vuelve a montar el driver de una interface de red"
echo
echo "USO:"
echo " $0 interface"
echo
echo "OPCIONES:"
echo " -h  Muestra esta ayuda."
echo
if [ -z "$1" ]; then
exit 1
else
exit 0
fi
fi

IFACE="$1"

if [ ! "$(ip link|grep " $IFACE: ")" ]; then
echo
echo " - ERROR: No existe la interface \"$IFACE\""
echo
exit 1
fi

DRIVER="$(basename "$(ls -l "/sys/class/net/$IFACE/device/driver")")"

if [ ! "$DRIVER" ]; then
echo
echo " - ERROR: No ha sido posible encontrar el driver de $IFACE"
echo
exit 1
fi

echo
echo " - La interface $IFACE utiliza el driver $DRIVER"

rmmod -f "$DRIVER" && modprobe "$DRIVER"

if [ $? = 0 ]; then
echo " - El driver $DRIVER ha sido reiniciado"
echo
fi


En línea
EltitoLitos
**
Desconectado Desconectado

Mensajes: 4


Ver Perfil
« Respuesta #7 : 07-02-2017, 13:26 (Martes) »

No lo pillo de donde lo descargo?
En línea
sanson
Moderador Global
*
Desconectado Desconectado

Mensajes: 8346


Ver Perfil
« Respuesta #8 : 07-02-2017, 13:50 (Martes) »

hola

no se descarga, es un sript en bash, se ejecuta ese código. Te aconsejo que leas la respuesta que te he dado antes


saludos
En línea

Páginas: [1] Ir Arriba Imprimir 
« anterior próximo »
Ir a:  


Ingresar con nombre de usuario, contraseña y duración de la sesión

Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines
SMFAds for Free Forums