编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

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

wxchong 2024-06-13 22:30:43 开源技术 17 ℃ 0 评论

首先介绍一下今天的主角——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的模拟攻击完毕。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表