如何解密获得解密公式(bash)和密码(Mach-O二进制)访问权限的文件

逆向工程 解密
2021-06-15 06:05:51

我有一个解密公式,它链接到包含文件密码的文件,以及加密文件本身,但我仍然不明白如何逆转这个过程。

问题:我是否需要更多信息才能解密文件(如果是,是什么?)+ 如果我能够解密文件,最好的方法是什么?

公式中的步骤是(来自代码中的注释):

  1. 判断文件是否为声音文件

    if [ ${FILE##*.} != mp3 ] && [ ${FILE##*.} != wav ] && [ ${FILE##*.} != mov ] ; then
    
  2. 基于单独文件 (.out) 的带有密码的 XOR 非声音文件

    echo "encrypt ${FILE}"
    mv "$FILE" "${FILE}_"
    ../tools/pass.out "${FILE}_" "$FILE"
    rm "${FILE}_"
    
  3. 将文件名更改为哈希值或仅更改文件扩展名

    MP3_FILENAME=`basename ${FILE}`
    DIR_NAME=${FILE%/*.*}/
    
    if [ ${DIR_NAME} != ./tmp/cc/ ] && [ ${DIR_NAME} != ./tmp/dd/ ] ; then       
        SHA1=`get_random_mp3_filename ${MP3_FILENAME}`
        mv "${FILE}" "${DIR_NAME}${SHA1#SHA1(${FILE})= }.png"
        echo "${MP3_FILENAME}: ${SHA1}"
    else
        mv "${FILE}" "${FILE%.*}.png"
    

pass.out 文件 (CF FA ED FE) 反汇编没有问题。我不知道它是如何工作的,也不知道如何反向使用它。我附上了下面的文件。

传递

如果我做出了任何错误的假设或使用了错误的术语,请提前道歉。任何帮助、解释或学习资源的指针将不胜感激!

编辑:抱歉造成混乱!这些文件来自 Android 应用程序的 .apk。我的目标是将它们解密为常见的文件格式,例如 .png 和 .mp3。通过检查 .apk,我相信文件的处理方式如下: 1) 特定文件夹中的声音文件(.wav、.mp3、.mov)将其扩展名更改为 .png。我可以通过将扩展名改回原始来播放它们。2) 所有其他文件都通过 pass.out 文件进行 XOR 加密。我想知道如何扭转这个过程。

0个回答
没有发现任何回复~