No se puede montar automáticamente el volumen TrueCrypt

0

Tengo un script para adivinar la contraseña del volumen TrueCrypt. Debería funcionar, pero TrueCrypt o VeraCrypt dice que se invoca con parámetros de línea de comandos incorrectos. ¿Alguien puede ayudarme con esto?

#!/bin/bash
working="working.txt"
tc=veracrypt
prefix="--text --keyfiles= --protect-hidden=no --non-interactive -p "
sufix="gentle.tc /mnt"
count=0

echo archive=gentle.tc

while read -r p; do

    echo -en "\033[2K\r$p"

    if $tc "$prefix\"$p\" $sufix"; then echo "$p" >>$working ; exit ; fi

    if $tc "$prefix\"$p\n\" $sufix"; then echo "$p" >>$working ; exit ; fi

    if $tc "$prefix\"$p\r\" $sufix"; then echo "$p" >>$working ; exit ; fi

    if $tc "$prefix\"$p\r\n\" $sufix"; then echo "$p" >>$working ; exit ; fi

    b64=$(echo -n "$p" | base64)
    md5=$(echo -n "$p" | md5sum | gawk '{print $1}')
    sha1=$(echo -n "$p" | sha1sum | gawk '{print $1}')
    sha256=$(echo -n "$p" | sha256sum | gawk '{print $1}')

    if $tc "$prefix\"$b64\" $sufix"; then echo "$p" >>$working ; exit ; fi

    if $tc "$prefix\"$md5\" $sufix"; then echo "$p" >>$working ; exit ; fi

    if $tc "$prefix\"$sha1\" $sufix"; then echo "$p" >>$working ; exit ; fi

    if $tc "$prefix\"$sha256\" $sufix"; then echo "$p" >>$working ; exit ; fi

    count=$((count+1))

done < list.txt
echo COUNT=$count
pbies
fuente

Respuestas:

0

Ok, he cambiado el script para que no tenga variables, ahora funciona bien:

#!/bin/bash
working="working.txt"
count=0

echo archive=gentle.tc

while read -r p; do

    echo -en "\033[2K\r$p"
    echo "$p" >> tested.txt

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$p" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$p\n" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$p\r" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$p\r\n" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    b64=$(echo -n "$p" | base64)
    md5=$(echo -n "$p" | md5sum | gawk '{print $1}')
    sha1=$(echo -n "$p" | sha1sum | gawk '{print $1}')
    sha256=$(echo -n "$p" | sha256sum | gawk '{print $1}')

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$b64" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$md5" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$sha1" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    if truecrypt --text --keyfiles= --protect-hidden=no --non-interactive -p "$sha256" gentle.tc /mnt 2>>errors.txt; then echo "$p" >>$working ; exit ; fi

    count=$((count+1))

done < list.txt
echo COUNT=$count
pbies
fuente