繁体   English   中英

可以使用stdin和stdout作为tcp套接字执行bash

[英]can bash be executed with stdin and stdout being a tcp socket

为了提供一些背景信息,我正在尝试学习伪终端(pty)。 伪终端在用户进程(例如bash)中似乎是真实终端。 这允许做各种好事,例如telnet,ssh等。

我的问题是,对于像telnet这样的事情,是否可以只执行“ bash” bash并将stdin和stdout设置为远程客户端计算机的tcp连接。 因为如果可能的话,那么我不完全理解使用伪终端的价值

是的,这是有可能的-实际上,这是传统上针对网络服务的大量“ shellcode”漏洞给攻击者提供了一个shell-但您将无法以通常的程度进行交互式控制。 这是因为套接字不是tty。 它无法将通过该行发送的字节转换为用于附加进程的信号(诸如^C^Z等),它无法将EOF作为数据发送,也无法执行作业控制(挂在^Z ,在后台等时暂停输入),并且无法传达模式切换(规范/“熟化”模式与原始模式)。

暂无
暂无

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

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