如何确定这些openssl加密脚本中使用的密码?

时间:2018-06-12 23:10:12

标签: encryption openssl

我们遇到了一位老员工多年前写过的数据库备份脚本问题。这会导致digital envelope routines:EVP_DecryptFinal_ex:bad decrypt错误。作为故障排除步骤,我们希望暂时将加密密码(以其解密形式)硬编码到脚本中,但不知道老员工使用的密码。

他有许多openssl脚本文件,这些脚本文件以这种方式在他的备份脚本中调用:

#!/bin/bash
# This script requires rsync, openssl, and sshpass to be installed
# Put encrypted passwords into variables with openssl scripts
# Make variables for directory paths so that you only need to change it in one place
# For monthly and weekly scripts
[...]
dbDump(){ # args - $1 = hostname, $2 = databases file name, $3 db backup location $4 backupDir
    dbpw=`sh $homeDir/backupScripts/.~1l`
    pw1=`sh $homeDir/backupScripts/.~2f`
    echo "Getting database list..."
    mysql -u xxx -p --password="$dbpw" -h $1 -N -e"show databases" > $2
[...]

脚本文件'(即.~1l.~2f等)内容的格式如下,并包含加密密码:

echo "$(echo XXXXXXXXXX+XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX= | openssl enc -des -a -d -pass pass:PASSWORD)"

例如,当我运行sh ./.~1l时,我得到了相同的“错误解密”错误和一些mumbo jumbo:

XXX@XXX:/home/user/backupScripts$ sh ./.~1l
bad decrypt
139875053102848:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:../crypto/evp/evp_enc.c:536:
�Z��d�n

有什么建议吗?我尝试使用sh-nopad标志在密码脚本上运行-md md5命令(如其他StackOverflow帖子中有关同一bad decrypt错误的建议)结果

0 个答案:

没有答案