摘要

Reading time: 2 minutes

如果您在 /etc/ssh_config$HOME/.ssh/config 配置中发现以下内容,您可以做些什么:

ForwardAgent yes

如果你在机器内是 root,你可能可以 访问任何由你在 /tmp 目录中找到的代理所建立的 ssh 连接

使用 Bob 的 ssh-agent 冒充 Bob:

bash
SSH_AUTH_SOCK=/tmp/ssh-haqzR16816/agent.16816 ssh bob@boston

为什么这有效?

当你设置变量 SSH_AUTH_SOCK 时,你正在访问 Bob 在其 ssh 连接中使用的密钥。然后,如果他的私钥仍然存在(通常是),你将能够使用它访问任何主机。

由于私钥以未加密的形式保存在代理的内存中,我想如果你是 Bob,但不知道私钥的密码,你仍然可以访问代理并使用它。

另一种选择是,代理的用户所有者和 root 可能能够访问代理的内存并提取私钥。

长篇解释和利用

查看 原始研究

tip

学习和实践 AWS 黑客技术:HackTricks Training AWS Red Team Expert (ARTE)
学习和实践 GCP 黑客技术:HackTricks Training GCP Red Team Expert (GRTE)

支持 HackTricks