Can't mount automatically TrueCrypt volume

0

I have script for guessing the password of TrueCrypt volume. It should work but TrueCrypt or VeraCrypt says that it is invoked with incorrect command line parameters. Can anyone help with this?

#!/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

Posted 2016-11-12T21:17:26.997

Reputation: 1 633

Answers

0

Ok, so I've changed the script to have no variables, now it works ok:

#!/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

Posted 2016-11-12T21:17:26.997

Reputation: 1 633