[h]Introducción a bash : paso 5[/h]
https://www.wifi-libre.com/img/members/3/bash5_1.png
Recordatorio de los dos capítulos anteriores:
-
En nuestro primer curso ( Introducción a bash - paso 1: Bases, echo y “Hola mundo”) hemos visto;
[list=*]
]Lo que es bash (el interprete de ordenes de las distribuciones GNU-Linux)/]
]Como redactar un script bash (un simple fichero de texto que se distingue por su primera liña, la famosa “bang-line!” : #!/bin/bash/]
]Como ejecutar un script bash (nos situamos en el directorio con nuestra consola y invocamos bash + el nombre del script)/]
]Hemos hecho nuestro pirmer script con el orden “echo” (que sirve para escribir en consola/]
[/list] -
En nuestro segundo curso Introducción bash, paso 2 : variables, expresion regular (grep) y pipe hemos visto:
[list=]
]Lo que es una* variable** (ejemplo del cajón), como declarar la (<nombre_de_la_variable=valor_de_la_variable>) y como usar la ( con el simbolo $ para ver su valor) /]
]Lo que es una **expresión regular **(una cadena cualquiera que definimos) y a que sirve (se usa para buscar coincidencias)/]
]Como usar básicamente el comando grep que permite definir y “jugar” con expresiones regulares/]
]El comando “cut” que nos permite recortar texto/]
]El* pipe** (“|”) que encadena dos comandos mandando el resultado del primero comando (su stdout) al segundo comando /*]
[/list] -
En nuestro tercero curso Introducción a bash -paso3- fichero de transición, cat, tee y read hemos visto:
[list=*]
]La técnica del fichero de transición que consiste en guardar la salida de nuestras consolas para usarla posteriormente/]
]El comando “cat” que nos permite abrir un fichero de texto/]
]El comando “tee” que nos permite duplicar la salida de nuestra consola para guardar la en un fichero de texto /]
]El comando “read” que nos permite leer lo que entra el usuario en consola/]
[/list] -
En nuestro cuarto curso Introducción a bash -paso4- Condiciones “if-elif-else-fi” hemos visto:
[list=*]
]Que es y como redactar una condición univoca simple “if-then-fi” ( si nuestra condición se cumple entonces se ejecuten ciertas ordenes) /]
]Los operadores lógicos sobre cadenas para redactar nuestras condiciones ( = condición se ejecuta si las expresiones son iguales; =! se jecuta sin son diferentes; -z se ejecuta si la cadena es vacila, -n si la cadena es nula )/]
]Las condiciones if-then-else-fi - Si (if) mi condición se cumple Entonces (then) se ejecutan ciertas ordenes; De lo contrario (else) se ejecutan otras ordenes (/]
]Por ultimo las condiciones múltiples" if-elif-else-fi" ( if - condición1 → orenes1 elif - condicón2 → ordenes2 elif condición 3 > orenes 3 etc…) /]
]De paso hemos conocido al comando whoami que pone en consola el nombre de usuario en acción, y el comando exit que nos permite salir de un script /]
[/list]Habíamos acabado nuestro cuarto curso redactando una condición de control para poner en inicio de un script dedicado a pixie dust
#!/bin/bash
if "$(whoami)" != 'root' ] # Abrimos nuestra condición con "if" . Nuestra condición verifica que el resultado de whoami sea diferente de "root"
then # si es asi es que no podremos ejecutar reaver o pasar el mode monitor
echo " This script requires root privileges
Please run it with sudo ( sudo bash script.sh ) " # con "echo" escribimos en consola une mensaje de advertencia
exit 1 # salimos en "estado de error" (1)
elif "$(ls /usr/local/bin/pixiewps)" != '/usr/local/bin/pixiewps' ] # segunda condición a verifcar : la presencia de pixiewps en usr/local/bin
then
echo " This script requires pixiedust
Please download and install pixiedust " # advertencia y
exit 1 # salida en estado en error
elif "$(ls /usr/local/bin/reaver)" != '/usr/local/bin/reaver' ] || "$(ls /usr/local/bin/pixiewps)" != '/usr/local/bin/pixiewps' ] # tercera condicion si no tenemos reaver o buly no podremos hacer el attaque asi que avortamos la misión
then
echo " This script requires a modified
version of reaver or bully
Please download or install one of this tool "
exit 1 # salida en estado en error
else # usamos else para escribir un mensage de exito (inecesario pero para hacer un bucle con todos los argumentos
echo " It seems that your sytem
is prepared for pixiedust atack :)
Good luck!"
fi # la necesaría instrucción de cierre "fi" que indica el "fi"nal de nuestra condición
echo " Script under construction...
See you in next chapter at www.wifi-libre.com"
exit 0
Hoy seguiremos adelantando interesando nos a la selección de interfaz que vendría lógicamente en inicio de script.
Veremos para lograr un buen código como usar las condiciones vistas en el capitulo anterior y nos ayudaremos con nuevos comandos : awk, sed y la utilización de &&
Lo primero es hacer un plan de ataque.... el curso empieza en le post que sigue