我有一个名为./testpassword语法二元如下shell脚本密码审计
./testpassword pass PASSWORD_GOES_HERE
如果密码是正确的输出将是
pass=correct
如果不正确的输出将是如下
pass=incorrect
我是linux和脚本编程的新手,但在此处的成员的帮助下,将示例shell脚本作为低
cat passwords.txt | while read x ; do echo -n "$x: " && ./testpassword pass $x ;
done
其中密码是txt格式的词汇表。
这工作得很好,如果我盯紧终端,我可以为下面看到输出(继续在字表的每一行)
jordyt: pass=incorrect
dawder: pass=incorrect
LOL12345: pass=incorrect
warcraft: pass=incorrect
solidussnake: pass=incorrect
0005: pass=correct
因此,在这种情况下,我知道0005我的密码,我的问题是,是否有可能在找到密码时停止程序,或者在某处自动显示密码?如果我要离开屏幕,我将失去跟踪密码的画面,因为屏幕将继续尝试密码并向下滚动。
我以前的做法就是像这样Shell script password bruteforcing。它的工作原理是我可以走开,稍后再回来,看到密码已经被破解,然后按Ctrl + C程序,除了它是一个漫长的做事方式。之后,我不得不手动搜索的单词列表对应的破解密码的行号
非常感谢您的回复。我正试图弄清楚现在的 – user1702184
我已经编辑了答案,向您展示如何测试字符串并打破循环 – arutaku
感谢您将其分解得非常清楚。目前我已经测试过并且命令成功运行,但是当找到正确的输出时似乎没有中断。它将像往常一样继续执行。我也尝试修改$ result来指向不正确的密码,并且不会中断 – user1702184