繁体   English   中英

如何以非特权用户身份启动“流氓”cli 服务器

[英]How to launch a “rogue” cli server as unprivileged user

让我们state一种情况:

  • 我有可能通过“非常规手段”以非特权用户的身份在服务器上运行任意命令。
  • 我无法使用 ssh 以我的非特权用户或其他任何用户身份登录到该服务器。 所以我目前没有允许我以“正常”方式运行任何我想要的命令的 CLI。
  • 我可以 ping 那台服务器,没有什么能阻止我连接到任意端口。
  • 我仍然希望有一个命令行来允许我在该服务器上按照我的意愿运行任意命令。

从理论上讲,没有什么可以阻止我以非特权用户身份启动任何程序,包括打开端口的程序,允许一些远程用户连接到它并将任何命令转发到 bash,返回结果。 我只是不知道有什么好的程序可以做到这一点。

那么,有人知道吗? 我研究了以非特权用户身份启动 ssh_server 的方法,但一些用户报告说最近版本的 ssh_server 不再允许这样做。 实际上我什至不需要 ssh ,任何获得工作 CLI 的方法都可以解决问题。 只要我有一个 CLI,即使是一个糟糕的 node.js 程序启动一个 http 服务器也可以工作(......而且它并不过分糟糕,目标是拥有一个干净的 CLI,而不是每两个字符都会出错的东西)。

如果您问我为什么要这样做,那与任何非法行为无关^^。 我只需要使用一个非常糟糕的 Jenkins 服务器,我不允许直接访问它的代理。 负责该服务器的人不会对其用户的需求表示意见,因此我们必须使用 hacky 解决方案来获取有关该服务器的一些诊断数据(例如 ram、cpu 和磁盘使用情况、已安装的程序等。 .)。 拥有一个我可以在一段时间内启动的 CLI,而不是更改构建配置并等待 20 分钟才能得到关于正在发生的事情的答案,这真的很有帮助。

提前感谢您的任何回答。

那么您是否至少拥有一次对服务器的 shell 访问权限? 例如,当您在您的客户或外包承包商的现场实际出现在一个月中的某一天?

如果您有 shell 访问权限,那么您或您的系统管理员可以安装Cockpit吗? 它侦听端口 9090。然后您可以使用本地用户的凭据并在浏览器中打开终端 window 。 请参阅驾驶舱主页屏幕截图上的侧边栏项目“终端”。

根据文档

Cockpit 没有特殊权限,也不以 root 身份运行。 它创建一个 session 作为登录用户,并具有与该用户相同的权限。

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM