如何使用已知的用户名和密码登录bash?

时间:2015-02-24 19:33:07

标签: bash

我使用netcat接收IP和端口,并要求用户输入用户名和密码才能登录。因此netcat IP PORT将生成欢迎消息并询问用户的姓名和密码。 如果我的用户名和密码是user1和pass1,我该如何将它们提供给netcat?

我试过了 (echo" user1"& echo" pass1")| ncat" $ EXP_IP" " $ EXP_PORT" 但它似乎无法识别密码。它会生成一条要求输入密码的消息。 我该如何在bash中做到这一点?我对bash很新。任何帮助将不胜感激!!

2 个答案:

答案 0 :(得分:0)

这取决于网站。

您需要使用HTTP POST或HTTP PUT请求发回您的用户名和密码,我会使用curl来执行此操作。当您在普通网站中查看页面时,还需要查看流量。查看发送回服务器的内容以及POST请求的格式,再发送内容的变量名称将取决于网站。当您通过浏览器正常登录时,您可以使用浏览器中的Web控制台找出发回的内容,并复制该POST请求。

答案 1 :(得分:0)

根据我们在评论中的对话,通过将&字符更改为';',结果证明您非常接近并添加第二个';'性格,你的问题解决了。变化

(echo "user1" & echo "pass1") | ncat "$EXP_IP" "$EXP_PORT" 

(echo "user1" ; echo "pass1" ; ) | ncat "$EXP_IP" "$EXP_PORT"
# ------------^here----------^and here

分号终止每个命令,因此可以执行“next”命令。对于echo "pass1" ;的情况,这是子shell分组中的最终命令,因此使;字符允许echo完成,子shell完成并关闭。我不打算冒险猜测值何时被发送到ncat

IHTH