如何使用 curl 或 wget 重新启动路由器以传递 URL 以及 POST 参数?

如何使用 curl 或 wget 重新启动路由器以传递 URL 以及 POST 参数?

我有一台 Edimax 路由器,从 wireshark 中我看到路由器使用 POSThttp://192.168.2.1/goform/formReboot和表单元素重新启动reset_flag=0&submit-url=%2Fadmin_restart.asp

使用curlwget我尝试了不同的 POST 方法,但都没有成功。如果我直接转到 formReboot,我会收到 404 错误。如果我使用 POST,我会从服务器收到一个空的回复,并且不会重新启动...

以下是一个例子:

curl -u 'admin:pass' --form 'reset_flag=0&submit-url=%2Fadmin_restart.asp' 'http://192.168.2.1/goform/formReboot

答案1

cURL 命令中的示例显示,可以使用;而不是 来分隔表单条目&。您可能想尝试一下。

此外,curl --verbose ...还会向您提供更多详细信息,帮助您找出问题所在。

答案2

刚刚设法使用以下方法重启了 Edimax/Medion MD86833 WLAN 中继器 curl -u 'admin:pass' --form 'reset_flag=0&submit-url=%2Fcontool.asp' 'http://192.168.1.201/goform/formReboot'

答案3

前几天我偶然看到了这篇文章,它是最完美解释和演示的方法之一,可以收集您所需的所有信息,以便对带有身份验证的路由器进行 2 次调用。使用 Chrome 的开发人员工具,您可以查看在使用路由器时浏览器会话中发生的情况,并生成执行几乎所有管理屏幕所需的 curl 命令。

  1. 第一个 curl 是进行身份验证并生成身份验证 cookie
  2. 第二个是实际调用路由器函数并传入 cookie

https://ttytoast.io/use-siri-to-configure-your-asus-router-pt1/

对于我的路由器,我的卷曲最终是:

curl #1 进行身份验证:

curl -c /tmp/cookie-jar.txt 'http://192.168.1.1/login.cgi' \
  -H 'Connection: keep-alive' \
  -H 'Cache-Control: max-age=0' \
  -H 'Upgrade-Insecure-Requests: 1' \
  -H 'Origin: http://192.168.1.1' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36' \
  -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9' \
  -H 'Referer: http://192.168.1.1/Main_Login.asp' \
  -H 'Accept-Language: en-US,en;q=0.9' \
   --data-raw 'group_id=&action_mode=&action_script=&action_wait=5&current_page=Main_Login.asp&next_page=index.asp&login_authorization=SuPeR_SeCrET_hAsH_FroM_cHrOmE'

*显然“SuPeR_SeCrET_hAsH_FroM_cHrOmE”不是真实的。你的将是独一无二的 ;-)

curl #2 到您想要访问的任何链接:

curl -b /tmp/cookie-jar.txt 'http://192.168.1.1/Advanced_LAN_Content.asp' \
  -H 'Upgrade-Insecure-Requests: 1' \
  -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36' \
  -H 'Referer: http://192.168.1.1/index.asp' \
  --compressed

该文档适用于华硕路由器,但实际上适用于几乎任何路由器。

**作为一种良好的做法,您也应该使用 curl 注销命令来正式关闭会话。

相关内容