2017-04-03 7 views
0

J'essaie de faire un bash cript à bruteforce attaquer une clé android oem bootloader pour débloquer la fastboot. Je fait ce scriptbash hex 14digits incrémental (oui, c'est une force brute)

#!/usr/bin/zsh 
setopt c_bases 
typeset -i 16 num 
for num in $(seq $((0x10000000000000)) 1 $((0xffffffffffffff))); do 
    echo "$num" 
    fastboot oem unlock $num 
done 

mais j'avoir des problèmes parce que je ssi essayer de l'exécuter je manque de ram. Est-il possible de faire un script incrémental comme celui-ci sans manquer de mémoire? Merci beaucoup

+1

Sur mon système Haswell 24 cœurs, je peux débiter ~ 20k programmes par seconde. Si 'fastboot' n'a pas besoin de temps pour parler à l'appareil et est parfaitement parallélisable, cela me prendrait 100 000 ans. Bonne chance! –

+0

Eh bien, je n'ai pas tellement de dents de rechange, donc je vais devoir demander le code de déverrouillage ... Merci encore! –

Répondre

2
for num in $(seq $((0x10000000000000)) 1 $((0xffffffffffffff))); do 

ne marchera jamais, parce que la totalité de la production de substitution de commande sera placée en mémoire avant que la boucle est invoquée. Utilisez une boucle c-style (bash spécifique) pour les boucles avec de nombreuses itérations:

for ((num=0x10000000000000;num<=0xffffffffffffff;num++)); do 

Vous pouvez également envisager l'utilisation gnu parallèle pour améliorer la vitesse de l'essai.