【问题标题】:disable pseudo-tty allocation禁用伪 tty 分配
【发布时间】:2018-05-16 18:37:38
【问题描述】:

在最近的一次渗透测试中,我们发现我们使用的 rbash 受限 shell 可以通过简单地强制分配一个伪终端来进行转义。

ssh -i id_rsa_key user@hostname -t "bash --noprofile"

我已经进行了大量研究,但找不到任何关于如何通过 ssh 配置或其他过程来防止这种情况的信息。任何有关如何锁定它的建议将不胜感激。

【问题讨论】:

  • 你确定它与-t有关吗?如果您唯一的步骤是将用户的登录 shell 设置为 rbash,那么预计一个简单的 bash 将为您提供一个完整的、不受限制的 shell。
  • 您的安全漏洞是用户执行bash 的能力,而不是用户获得TTY 的能力。即使没有 TTY,用户也可以调用 bash 并向其发送命令。
  • 感谢您的回复。当用户在没有-t "bash --noprofile" 标志的情况下连接时,他们会收到一个 rbash shell,它只允许在/home/bin/ 目录中执行命令。如果您尝试执行除此之外的任何操作,您将被拒绝,包括 bash。

标签: linux bash ssh tty


【解决方案1】:

使用此处找到的方法终于找到了解决方法:

How to restrict SSH users to a predefined set of commands after login?

您可以使用 authorized_key 文件中的指令来限制 PTY 的分配。

no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa AAAAB3NzaC1.......

【讨论】:

  • 这是系统管理问题的答案,而不是编程问题的答案。
猜你喜欢
  • 2011-02-23
  • 1970-01-01
  • 2013-07-27
  • 1970-01-01
  • 2017-12-04
  • 2015-07-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多