龙空技术网

攻防论道 | 简析“瑞士军刀”——NetCat

聚铭网络 246

前言:

此刻咱们对“netcat命令”可能比较珍视,同学们都需要剖析一些“netcat命令”的相关资讯。那么小编也在网摘上汇集了一些有关“netcat命令””的相关资讯,希望大家能喜欢,看官们快快来学习一下吧!

首先介绍一下今天的主角——NetCat,NetCat简称nc,诞生于1995年,距今已经25年。相比较于nmap,nc是一个相对轻量的工具,但是轻量并不意味着其简单,它更像是一把“瑞士军刀”,无论是开发还是安全,乃至于个人使用。它囊括了扫描、获取反弹shell乃至于文件传输、脚本执行等功能。今天,我们就从基本命令和和一个渗透实例来看看nc的简单用法。

一、NetCat命令简介

nc -z -v {ip} {port[:port]} – 进行一次简单的端口扫描。

例如:

$ nc -z -v 127.0.0.1 1-1000

Localhost [127.0.0.1] 631 (ipp) open

nc -l -p {port} - 监听指定端口,支持TCP或UDP方式。

例如:监听 1234端口

$ nc -l -p 1234

bytes (pip) nc remote.site port - 使用nc发送一个文件

1. 首先启动接收端,为接收服务器,接收端必须先启动

$ nc -l -p 1234 > somefile < /dev/null

2. 再启动发送端

$ cat somefile | nc remote.site 1234

例如:

$ nc -l -p 1234 > misc.py < /dev/null # 接收端

$ cat misc.py | nc 127.0.0.1 1234 # 发送端

二、NetCat渗透实例

准备存在漏洞的Flask实例

这段Python代码开启了Debug,并且存在一个漏洞,当num为字符串的时候,会触发报错。这里可以执行console代码,因为不是Flask漏洞专题,所细节就不说了。

浏览器正常返回

我们来制造一个异常

尝试一下shell指令uname -a

OK, 返回正常。

nc获取反弹shell

监听1234端口

$ nc -l -p 1234

在console端创建反弹shell连接

成功获取shell

在被攻击机上开启nc,监听1233端口,等待上传木马

客户端上传木马后

至此基于nc的模拟攻击完毕。

标签: #netcat命令