在Connectback Shell中获取TTY

Modified on: Fri, 05 Jul 2019 05:20:02 +0800

我经常被朋友们要求帮助解决小型Linux问题,而且我经常需要登录远程系统。通常在创建帐户和登录时存在很多问题(有时候框在NAT设备后面,有时候没有安装SSHD等)所以我通常只是要求他们使用netcat创建一个连接shell( nc -e / bin / bash)。如果他们没有netcat我可以让他们获取一个静态编译的二进制文件的副本,下载和运行并不困难或耗时。

虽然这对我输入简单的命令非常有效,但是我无法运行任何需要tty(例如vi)且不能使用任何作业控制功能的应用程序。我设法通过在连接后shell中使用一些参数运行in.telnetd来绕过这个问题,这将为我分配一个终端并将我放到shell中。不幸的是,默认情况下,大多数系统都不会安装in.telnetd。

在不需要任何非标准软件包的情况下,获得功能齐全的连接终端外壳的最简单方法是什么?

(完成这项工作的小型C程序也没问题,我似乎无法找到关于如何分配/分配TTY的大量文档。一个不需要我来源的解决方案SSHD和TELNETD的代码会很好:))

作者:Asad R.

最佳答案

有一点需要注意,互联网上未加密的shell是一件坏事,这个pentestmonkey post有一些技术可用于在现有shell会话上获取TTY。最有可能在任何系统上工作的都使用Python:

python -c 'import pty; pty.spawn("/bin/sh")'

用您选择的替换shell。


相关问答

添加新评论