Pages : 1
#1 Le 27/07/2020, à 15:42
- swiftapp
Problème de script bash
Bonjour mon erreur est surement bête , mais voilà:
lorsque je lance mon script bash il fonctionne mais j'ai une erreur, voilà ce que j'ai dans la console:
=============== Force Atack ===============
Entrez le hash à cracker (Tapez entrer pour annulé): testok
/home/nantsa63/Documents/script/Security/script/ForceAtack: ligne 4: testok : commande introuvable
Result: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 -
et voilà le code complet:
#!/bin/bash
function compare_hash {
result=$("$1" | sha256sum)
echo
echo "Result: "$result
sleep 4
}
clear
echo "=============== Force Atack ==============="
echo
echo -n "Entrez le hash à cracker (Tapez entrer pour annulé): "
read my_hash
compare_hash $my_hash "testok"
Je ne comprend pas comment enlever l'erreur de la ligne 4 vue que le code fonctionne.
Merci d’avance pour votre aide !
PC fix with AMD Ryzen 7 2700x, 16 Go RAM and NVIDIA RTX 2060, System is KDE Neon 5.25
My GitHub: https://github.com/Swiftapp-hub
Hors ligne
#2 Le 27/07/2020, à 15:53
- pingouinux
Re : Problème de script bash
Bonjour,
Est-ce ceci que tu veux ?
#!/bin/bash
function compare_hash {
result=$(sha256sum <<<"$1") # Ligne modifiée
echo
echo "Result: "$result
sleep 4
}
clear
echo "=============== Force Atack ==============="
echo
echo -n "Entrez le hash à cracker (Tapez entrer pour annulé): "
read my_hash
compare_hash "$my_hash" "testok" # Ligne modifiée
De plus, le second argument de compare_hash n'est pas utilisé.
Hors ligne
#3 Le 27/07/2020, à 15:59
- Watael
Re : Problème de script bash
salut,
deux choses :
- il faut toujours mettre le Développement de paramètres entre guillemets. TOUJOURS (à moins de savoir pourquoi.).
en l'occurrence, si la variable est vide, le shell, parce qu'il n'y a pas de guillemets, ne détectera pas qu'il devrait y avoir quelque chose.
et, donc, pour la fonction, le premier paramètre est testok
- d'autre part, un hash est une donnée; elle ne peut pas se piper toute seule à sha2565sum !
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#4 Le 27/07/2020, à 16:04
- swiftapp
Re : Problème de script bash
Est-ce ceci que tu veux ?
Ooooooooui, ça marche !!!
Merci pour ta réponse rapide !
De plus, le second argument de compare_hash n'est pas utilisé.
Je sais, mais je n'ai pas fini mon script.
PC fix with AMD Ryzen 7 2700x, 16 Go RAM and NVIDIA RTX 2060, System is KDE Neon 5.25
My GitHub: https://github.com/Swiftapp-hub
Hors ligne
#5 Le 27/07/2020, à 16:06
- swiftapp
Re : Problème de script bash
d'autre part, un hash est une donnée; elle ne peut pas se piper toute seule à sha2565sum !
Je ne comprend pas?
PC fix with AMD Ryzen 7 2700x, 16 Go RAM and NVIDIA RTX 2060, System is KDE Neon 5.25
My GitHub: https://github.com/Swiftapp-hub
Hors ligne
#6 Le 27/07/2020, à 16:20
- Watael
Re : Problème de script bash
une donnée ne peut pas se passer toute seule à une commande via un pipe.
soit une donnée "foo", et une commande "cmd".
"foo" | cmd
ne peut pas fonctionner, parce qu'un pipe connecte la sortie standard d'une commande à l'entrée standard d'une autre commande.
Or, une donnée n'est pas une commande.
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#7 Le 28/07/2020, à 13:11
- swiftapp
Re : Problème de script bash
Ah, ok j'ai compris, merci !
Juste, je suis entrain de créer un cracker de mots de passe (Ce n'est pas pour faire du hack, mais juste pour m'amuser ), j'ai fais ce code mais je ne sais pas si vous pensez qu'on peut l'optimiser ?
function brute_force {
tab=("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z" "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "0" "1" "2" "3" "4" "5" "6" "7" "8" "9")
echo
echo -n "Pass 1"
for a in ${!tab[@]}; do
for b in ${!tab[@]}; do
z=${tab[a]}${tab[b]}
for c in ${!tab[@]}; do
for d in ${!tab[@]}; do
compare_hash "$1" "$z${tab[c]}${tab[d]}"
done
done
echo -n "."
done
done
}
function compare_hash {
if [ "$1$var" == "$(md5sum <<<"$2")" ]; then
echo
echo
echo "======================== Fin du crack (Réussi) ========================"
echo " Le code pour "$1" est: ""$2"
echo -n " Tapez entrer pour continuer..."
read
exit
fi
}
La function brute_force teste toute les possibilités de mots de passe, mais, niveau vitesse je pense qu'il y a mieux!
Merci de votre aide !!!
Dernière modification par swiftapp (Le 28/07/2020, à 13:11)
PC fix with AMD Ryzen 7 2700x, 16 Go RAM and NVIDIA RTX 2060, System is KDE Neon 5.25
My GitHub: https://github.com/Swiftapp-hub
Hors ligne
#8 Le 28/07/2020, à 19:39
- Watael
Re : Problème de script bash
mais pourquoi passes-tu par les indices du tableau ?
brute_force()
{
local hash=$1
for x in "${ar[@]}"; do for y in "${ar[@]}"; do for z in "${ar[@]}"; do compare_hash "$hash" "$x$y$z"; done; done; done
}
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne