linux - 使用另一个 bash 脚本暴力破解 bash 脚本

标签 linux bash shell scripting

所以我目前有一个 bash 脚本,它采用哈希值,然后要求用户输入密码,将其输入转换为哈希值,然后进行比较。

    #!/bin/bash
    crypt="8277e0910d750195b448797616e091ad"
    echo "please enter a password!"
    read inc
    hash="$((echo -n $inc|md5sum) | awk '{print $1}')"
    if [[ "$hash" == "$crypt" ]];
    then
        echo "logged in"
    else
        echo "incorrect pass"
    fi

我现在想创建另一个程序,通过在密码输入中添加值(从 a-z)来暴力破解此密码,但我遇到了麻烦,因为我觉得我对 bash 文件操作的知识有限,因为我以前从未针对另一个脚本运行过一个脚本。

    #!/bin/bash

    for i in {a..z}; do
         (echo -n "$i: " && ./hashscript $i) | grep logged in
    done

最佳答案

由于第一个脚本正在从 stdin 读取数据(使用 read),因此第二个脚本需要以这种方式传递数据:

#!/bin/bash

for i in {a..z}; do
     (echo -n "$i: " && echo $i | ./hashscript) | grep logged in
done

关于linux - 使用另一个 bash 脚本暴力破解 bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51770569/

相关文章:

linux - 在docker run中导出变量列表

c - 完成大写目录时 libreadline 出现问题

linux - .import csv 计算列数错误

linux - Bash for 循环会跳过关联数组中的元素

linux - mod_rewrite 已启用但无法正常工作

linux - 测试返回值 : command not found

bash - 使用 ffmpeg 生成原始音频波形无法正常工作(不显示剪辑)

c++ - char数组的pid_t的初始值是什么?

bash - 在 shell 脚本中循环 "heredoc"

linux - 如何计算名称中包含元音的文件数