什么是 Kali Linux?
Kali Linux 是源自 Debian 的 Linux 安全发行版,专为计算机取证和高级渗透测试而设计。它是由 Mati Aharoni 和 Devon Kearns 通过重写 BackTrack 开发的。 Kali Linux 包含数百个针对各种信息安全任务而精心设计的工具,例如渗透测试、安全研究、计算机取证和逆向工程。
Kali Linux 是一个可供任何人免费使用的Linux系统,它可以用于检测和防范安全漏洞,也可做渗透测试,系统内预装了600多个实用工具,这使得 Kali Linux 能够成为任何安全专业人员手中的瑞士军刀。
Kali Linux 可以用来做什么:
学习Linux:任何对Linux感兴趣的用户都可以用他来学习
信息取证:磁盘恢复、内存分析、PDF审计、注册表审计
渗透测试:评估网络系统安全
网络嗅探:利用网络接口截获其它计算机的数据报文。
WiFi破密:攻击WPA/WPA2保护的无线网络
破解密码:离线破解哈希密码、在线破解网站登录密码
逆向工程:将android、Java、C++编写的程序反编译成代码
社会工程:黑帽黑客的最爱
Kali Linux有哪些应用?
Kali Linux 的应用软件,主要分为以下几类:
信息收集
TracerRoute: 网络运维中,我们经常需要排错,判断网络到底哪里出了问题,而traceroute命令是网络中排错路由不可达的一个最重要的命令。
WhatWeb: Whatweb是一个基于Ruby语言的开源网站指纹识别软件,正如它的名字一样,whatweb能够识别各种关于网站的详细信息包括:CMS类型、博客平台、中间件、web框架模块、网站服务器、脚本类型、JavaScript库、IP、cookie等等。
Nmap: 是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统。
Dirbuster: 是一个多线程的基于Java的应用程序设计用于暴力破解Web 应用服务器上的目录名和文件名的工具; 主要用来探测web目录结构和隐藏文件。
Web应用分析
SQLiv: 这个工具是最常用的一款批量SQL注入漏洞扫描工具,使用非常广泛。
BurpSuite: 是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描web应用程序漏洞,以暴力破解登陆表单,执行会话令牌等多种的随机性检查。
OWASP-ZAP: 是世界上最受欢迎的免费安全审计工具之一,由数百名国际志愿者积极维护。它可以帮助你在开发和测试应用程序时自动查找Web应用程序中的安全漏洞。
漏洞分析
Nikto: 一个开源的WEB扫描评估软件,可以对Web服务器进行多项安全测试。
破解密码
Hash-identifier: 此工具可帮助用户识别用于加密数据和密码的各种哈希。除了他的工具,另一个名为 findmyhash 的工具用于使用在线服务破解数据。假设我们收到一个加密文本;它通过 hash-identifier 来确定附加到它的哈希类型,然后 findmyhash 将数据破解为其原始字符串。
Crunch: 是一种创建密码字典工具,按照指定的规则生成密码字典,可以灵活地制定自己的字典文件。使用crunch工具生成的密码可以输出到屏幕,保存到文件、或另一个程序。
John the Ripper: 是一个快速的密码破解工具,用于在已知密文的情况下尝试破解出明文的破解密码软件,支持大多数的加密算法。
数据库评估
SQLMap: 是一个开源渗透测试工具,它可以自动检测和利用 SQL 注入漏洞并接管数据库服务器。它具有强大的检测引擎,同时有众多功能,包括数据库指纹识别、从数据库中获取数据、访问底层文件系统以及在操作系统上带内连接执行命令。
网络嗅探测试
Aircrack-NG: 是一个与802.11标准的无线网络分析有关的安全软件,主要功能有:网络侦测,数据包嗅探,WEP和WPA/WPA2-PSK破解。Aircrack-ng可以工作在任何支持监听模式的无线网卡上(设备列表请参阅其官方网站)并嗅探802.11a,802.11b,802.11g的数据。
Fluxion: 是一个无线破解工具,很多人都在使用。
Wireshark: 是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。
BetterCAP: Bettercap是一个非常强大、灵活可移植的中间人攻击框架,它具有跨平台、轻量级以及模块化等优点,在渗透测试过程中能够非常好的进行中间人测试。
匿名伪装
MacChanger: 是一款修改电脑MAC地址的一款修改器工具,如果作为一名黑客在进行攻击时必须确保我们的身份不被泄露,用它能够对Mac地址进行伪装,以保持身份匿名!
如何使用 Kali Linux ?
安装到PC设备上
如果有多余的电脑设备,您可以使用 Kali Linux ISO 镜像,用常规安装的方式直接安装到 PC 或笔记本电脑上,建议将 Kali Linux 直接安装到支持 Wi-Fi 的笔记本电脑上。
虚拟化平台(私有云)
Kali Linux 支持大多数已知的虚拟机管理程序(VMware、Hyper-V、Oracle VirtualBox、Citrix),并且可以轻松融入最流行的管理程序。可以下载预配置的镜像,或者可以使用 ISO 手动将操作系统安装到首选的虚拟机管理平台中。
树莓派
Kali Linux 基于树莓派定制了专用的系统镜像,可以通过烧录软件将系统烧录到TF卡中,使用小巧的树莓派来作为Kali Linux的载体。
云部署
Kali Cloud 镜像可以快速部署在多个不同云厂商提供商的平台中(AWS, Azure, Digital Ocean, & Linode)。
USB 引导盘
利用 Kali Linux 的 ISO镜像烧录到USB设备中,可以在任何PC设备上通过引导USB设备启动直接运行,并且而无需安装即可使用。
Docker部署
可以在容器中部署,使用Docker和LXC / LXD等容器技术,Kali 容器版允许访问主机操作系统上的 Kali 工具集,而无需运行额外的完整操作系统。但是这样会有一些限制,因为没有直接的设备访问权限,而且配置可能有些复杂。
Windows (WSL)
WSL,是Window上的Linux子系统简称,可以通过 Windows 10
及 Windows 11
的应用商店安装部署 Kali Linux ,并通过shell命令行直接使用。
移动端
Kali NetHunter 项目是第一个针对 Android 设备的开源 Android 渗透测试平台,允许从各种受支持的 Android 设备访问 Kali 工具集。
目前支持: ZTE、Nexus、Xiaomi、Nokia、Gemini、Samsung、LG、Sony、OnePlus、TicWatch等30余款机型。
使用 Virtual Box 快速安装 Kali Linux
以下是有关如何通过 Vitual Box 快速部署 Kali Linux 以及如何使用的流程。
请确保您已经正确安装 VirtualBox
,并且在 Bios 中启用了 64 位虚拟化选项 VT-x
及VT-d
选项。
下载镜像
登录Kali首页 https://www.kali.org/
后点击Download
进入下载页面,我们选择 Virtual Machines
。
点击 Virtual Machines
链接跳转到下载页面,下载VirtualBox专属镜像文件。
https://kali.download/virtual-images/kali-2022.3/kali-linux-2022.3-virtualbox-amd64.7z
解压 kali-linux-2022.3-virtualbox-amd64.7z
得到如下图中两个后缀名为 .vbox
和 .vdi
的文件
导入镜像
双击 kali-linux-2022.3-virtualbox-amd64.vbox.vbox
文件,只要VirtualBox 安装正确的情况下会马上成功导入到系统列表中。
如果得到后缀名为 .OVA
的镜像文件则需要通过
打开 Oracle VM VirtualBox 管理器,然后从文件菜单中选择 管理 - 导入虚拟电脑
在以下屏幕 “要导入的设备”中 浏览到下载的 OVA 文件的位置,然后单击 打开
如下图所示,在 虚拟电脑导入设置
中调整系统配置,一般保留默认设置即可,可以设置 虚拟电脑位置
然后单击 导入
此时 VirtualBox 将导入 Kali Linux OVA系统镜像,这个过程需要持续几分钟时间,导入成功后选择列表中的Kali Linux,设置网络调整为 桥接网卡
启动 Kali Linux
导入成功后,在 Oracle VM VirtualBox 管理器中可以看到 Kali Linux ,接下来点击管理列表中的 Kali Linux VM,然后点击 启动
按钮。
在登录界面,输入用户名 kali
,密码 kali
点击 Log In
登录。
进入系统后你就可以看到 Kali Linux 的GUI 桌面了,至此恭喜你成功登录 Kali Linux。
Nmap
nmap 简介
Nmap(也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包)是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。
Nmap 扫描
Nmap默认发送一个arp(地址解析协议)的ping数据包,来探测目标主机子在1~1000 范围内所开放的端口,默认只扫描前1000个 端口。
命令语法:
工作方式 | 操作指令 |
---|---|
扫描单个IP | nmap 192.168.1.1 |
扫描主机 | nmap www.testnetwork.com |
扫描IP段 | nmap 192.168.1.1-20 |
扫描子网 | nmap 192.168.1.0/24 |
从文本文件扫描目标 | nmap -iL list-of-ipaddresses.txt |
我们将在 Kali Linux 中运行Nmap 进行扫描操作,本示例将扫描本机IP地址。
使用组合键 Ctrl + Alt + T 启动终端
在终端中输入命令
ifconfig
, 记住系统返回的本地 IP 地址,如图所示,本地 IP 地址为10.0.2.15
在终端窗口中再次输入
nmap 10.0.2.15
,这将扫描本地主机上的前 1000 个端口默认情况下,nmap 只扫描前 1000 个端口,如果需要完整扫描到 65535 端口,您只需修改上述命加上 -p-
Nmap 10.0.2.15 -p-
Nmap 全面扫描
在 终端 窗口中输入以下 nmap 命令,添加 -A 告诉 nmap 对系统进行全面扫描。
nmap 10.0.2.15 -A
Nmap 帮助
关于nmap的更多用法这里不再做过多的阐述,我们可以通过 nmap -h
命令来查看所有命令参数。