为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用戈朗来破坏命令与给定的 sudo 密码

如何使用戈朗来破坏命令与给定的 sudo 密码

Go
不负相思意 2022-09-12 16:49:36
我想使用一段命令行在Go中设置日期时间,但以下代码失败datetime := "2021-06-17 18:20:41.8"sudoPassword := "xxxxx"app := "echo"arg0 := sudoPasswordarg1 := "|sudo -S"arg2 := "date"arg3 := "-s"arg4 := "\"" + datetime + "\""cmd := exec.Command(app, arg0, arg1, arg2, arg3, arg4)有没有正确的方法来做到这一点?像在Python中一样自动填写密码os.system('echo %s|sudo -S %s' % (sudoPassword, command))
查看完整描述

1 回答

?
慕尼黑8549860

TA贡献1818条经验 获得超11个赞

代码的一个问题是,execs 直接命令而不使用包装外壳,但您已经构造了一个 shell 管道。不过,您可以手动指定一个用于 sudo 的 stdin 读取器。exec.Command

    cmd := exec.Command("sudo", "-S", "--", "cat", "/etc/shadow")
    cmd.Stdin = strings.NewReader("mysecretpassword") // your password fed directly to sudo's stdin


查看完整回答
反对 回复 2022-09-12
  • 1 回答
  • 0 关注
  • 58 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信