使用bash脚本强制执行python程序密码

时间:2016-04-27 14:36:40

标签: python bash brute-force

我有一个名为login.py的程序,运行时会提示用户输入密码(5个字符)。如果用户输入正确的密码,则输出“登录成功”,并允许用户访问其他程序内操作。我正在尝试编写一个bash脚本,看看我是否可以强制使用此密码。

我正在使用for str in $(echo {a..z}{a..z}{a..z}{a..z}{a..z}); do生成密码。

如何将这些生成的字符串传递给login.py程序并打印出匹配的密码?

2 个答案:

答案 0 :(得分:1)

expect 是一个可以用来与python登录进行交互的工具。它专门设计用于在拨号连接时自动恢复登录过程。它通过将动作与输入模式匹配来工作。
例如

#!/usr/bin/expect -f
spawn $your-python-program
expect "ogin:"
send_tty "$ruser\n"
expect "assword:"
send_tty "$passwd-guess\n"

答案 1 :(得分:0)

这取决于python程序如何读取密码。

如果只是使用标准输入(检查示例http://pastebin.com/raw/YHnZfyJC),请使用echo foo | python thescript.py进行调用。

如果脚本接受密码作为命令行参数 - 只需传递它。

如果它使用类似getpass模块的内容 - 您必须使用@ {6}建议的expect