从零开始学KALI
1.安装KALILinux系统
下载Kali镜像
安装kali的方法有很多,但最常用的是在虚拟机,物理机,和docker中安装KALI系统
而我们推荐在虚拟机安装kali系统,利用虚拟机可以借助虚拟机的快照功能,用来备份恢复kali系统。
**KALI的官方网站: Kali Linux | Penetration Testing and Ethical Hacking Linux Distribution **
我们选择downloads选项,向下滑动即可看到KALI系统的iso镜像,其中包含4个版本,
分别为Installer(通过自定义完成脱机安装)Weekly(每周更新具有最新的未经测试的镜像—可能不稳定)Everything(包含所有可能的工具)NetInstaller(网络镜像—所有的软件包都在安装过程中下载)
由于KALI的镜像存放在国外的服务器中下载较慢可以使用国内的克隆网站例如中科大开源镜像站( USTC Open Source Software Mirror ),清华大学开源镜像站。中科大开源镜像站速度快于清华大学开源镜像站,而且界面明显,在主界面点击获取安装镜像,选择kali linux 和发行版本,建议下载Installer版本。
下载虚拟机软件
虚拟机是借助于CPU虚拟化功能实现的如要使用虚拟机需要进入BIOS打开CPU虚拟化,部分笔记本默认打开。常见的虚拟机软件有 WindowsHyper-V Oracle VM VirtualBox (开源免费,界面比较复杂,不适合新手)VMware Workstation Player (免费不开源)且有商业版本VMware Workstation Pro 而两者差别不大此教程所使用的软件为VMware Workstation Pro ,建议大家支持正版,下载正版有三十天的试用期(下载Pro版本会自带VMware Workstation Player无需重新下载)
开始安装
打开虚拟机软件(这里以VM16pro为例其他虚拟机软件创建过程相似)选择创建新的虚拟机,选择典型,再选择你下载的镜像
选择Linux 版本为Debian10.x64位
建议为虚拟机分配40GB的磁盘空间(分配40GB并不会立马占用四十GB,而是按照镜像的实际大小)完成后开启虚拟机即可
选择第一项图像化安装[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-
进入虚拟机后如要进入物理机可以按快捷键Ctrl+Alt即可返回物理机
之后按照步骤进行安装即可在磁盘分区时直接使用默认设置即可,在最后选择是即可完成分区。
建议桌面环境选择GNOME桌面,默认的Xfce桌面无法使用全局代理
2.配置KALI
安装VMwareTools
VMwareTools可以实现虚拟机与物理机之间的文件传输和复制粘贴
一般vmware虚拟机安装完成后就会自动给虚拟机安VMwareTools
为KALI跟换软件源
打开终端
使用Vim编辑 /etc/apt/sources.list 文件, 在文件最前面添加以下条目:
┌──(kali㉿kali)-[~]
└─$ sudo vim /etc/apt/sources.list
我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:
#1) 尊重别人的隐私。
#2) 输入前要先考虑(后果和风险)。
#3) 权力越大,责任越大。
[sudo] kali 的密码:
“linux输入密码时不会显示任何东西直接输入就可以密码是你安装时创建的账户的密码”
按字母i进入编辑模式
在KALI的默认源前添加”#“代表注释
再把下面的链接复制到文件中去,Linux中的粘贴快捷键为Ctrl+Shift+V
deb https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
按键盘上的ESC键退出编辑模式再安”:“冒号键输入wq回车保存退出,注意看这张图的最下面就是输入的:wq
更改完 sources.list 文件后请运行 sudo apt update 更新索引以生效。
更新KALI
通常安装的KALI不是最新的版本我们需要执行
┌──(kali㉿kali)-[~]
└─$ sudo apt upgrade
进行更新,更新可能升级内核,更新完后建议重启虚拟机,以使更新的内核生效。
如果更新过程中遇到这个问题
下列软件包有未满足的依赖关系:
libwacom9 : 依赖: libwacom-common (= 2.1.0-2) 但是 1.12-1 正要被安装
E: 破损的软件包
可以执行如下命令
sudo apt install libwacom9 libwacom2-
之后再重新执行更新命令
备份虚拟机
点击虚拟机 > 快照 > 拍摄快照
可以在此对拍摄的快照填写相关描述
如要恢复快照,点击虚拟机 > 快照 > 快照管理器
再选择拍摄的快照点击转到即可。
3.通过phpstudy搭建靶场环境
phpstudy下载地址:https://www.xp.cn/download.html
笔者在这里选择2018版的操作简单,容易上手。
下载完成后将压缩包进行解压安装
选择目录后点击是即可
安装完成会提示没有运行库我们点击是确定后会直接跳转下载运行库
我们直接选择缺少的运行库下载即可,下载完成相应的运行库后,点击启动按钮,
我们选择打开网站根目录将靶场的源码解压复制到网站根目录
DVWA靶场源码下载地址:https://github.com/digininja/DVWA/archive/master.zip
我们将解压的源码文件夹重命名为dvwa,方便在浏览器中访问。
我们可以直接在浏览器输入虚拟机的IP地址(直接在虚拟机中按windows键加R键输入CMD,在命令提示符中输入ipconfig查看ip地址,如果在物理机安装的话可以直接在浏览器输入127.0.0.1/dvwa)后面加上/dvwa(就是我们下载的源码文件夹的名字)
我们访问后看到浏览器报错
其报错的意思为让我们吧dvwa目录下的config文件夹下的config.inc.php.dist重命名为config.inc.php然后同时修改这个文件
把原来的数据库账户名和密码改为root即可,我们再次刷新点击创建数据库,就完成了DVWA靶场的搭建。DVWA的默认登录帐号密码为admin;password
信息收集
1.通过nmap对网站进行信息收集
nmap分为两个版本命令行版本和可视化版本(Zenmap),而kali包含了命令行版本的nmap,由于Zenmap的Linux版本只有.rpm包格式,而kali支持的包格式为.deb格式,所以无法在Kali中安装,可以在Windows,macos,和支持.rpm包格式的Linux系统安装,例如Redhat系统。
通过namp扫描网站开放的端口
namp [网站ip地址或域名]
例如我们扫描DVWA靶场
┌──(kali㉿kali)-[~]
└─$ nmap 192.168.236.130
Starting Nmap 7.92 ( https://nmap.org ) at 2022-03-23 08:01 CST
Nmap scan report for 192.168.236.130
Host is up (0.0010s latency).
Not shown: 997 filtered tcp ports (no-response)
PORT STATE SERVICE
80/tcp open http
3306/tcp open mysql
5357/tcp open wsdapi
Nmap done: 1 IP address (1 host up) scanned in 4.00 seconds
PORT :端口
STATE:状态
SERVICE:服务
我们可以看到当前的网站开放了80,3306,5357端口,所对应的服务分别为http,mysql,wsdapi服务
指定DNS域名解析服务器
nmap --dns-servers [DNS服务器地址如8.8.8.8] [IP或网址]
例如我们指定DNS服务器为8.8.8.8(Google域名解析服务器)来扫描nmap靶场scanme.nmap.org(依据中华人民共和国网络安全法规定,未经网站授权禁止对网站扫描。)
nmap --dns-servers 8.8.8.8 scanme.nmap.org
扫描结果如下
┌──(kali㉿kali)-[~]
└─$ nmap --dns-servers 8.8.8.8 scanme.nmap.org
Starting Nmap 7.92 ( https://nmap.org ) at 2022-03-23 08:27 CST
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.20s latency).
Other addresses for scanme.nmap.org (not scanned): 2600:3c01::f03c:91ff:fe18:bb2f
Not shown: 990 closed tcp ports (conn-refused)
PORT STATE SERVICE
22/tcp filtered ssh
53/tcp open domain
80/tcp open http
135/tcp filtered msrpc
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds
593/tcp filtered http-rpc-epmap
4444/tcp filtered krb524
9929/tcp open nping-echo
31337/tcp open Elite
Nmap done: 1 IP address (1 host up) scanned in 38.79 seconds
使用-Pn参数停止使用ICMP数据请求
使用-Pn参数停用ICMP数据请求,以用来绕过防火墙。
nmap -Pn scanme.nmap.org
扫描结果如下
┌──(kali㉿kali)-[~]
└─$ nmap -Pn scanme.nmap.org
Starting Nmap 7.92 ( https://nmap.org ) at 2022-03-23 08:40 CST
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.20s latency).
Other addresses for scanme.nmap.org (not scanned): 2600:3c01::f03c:91ff:fe18:bb2f
Not shown: 990 closed tcp ports (conn-refused)
PORT STATE SERVICE
22/tcp filtered ssh
53/tcp open domain
80/tcp open http
135/tcp filtered msrpc
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds
593/tcp filtered http-rpc-epmap
4444/tcp filtered krb524
9929/tcp open nping-echo
31337/tcp open Elite
Nmap done: 1 IP address (1 host up) scanned in 44.96 seconds
使用-p参数来指定扫描的端口
例如指定扫描1-1000端口
namp -p 1-1000 [ip]
┌──(kali㉿kali)-[~]
└─$ nmap -p 1-1000 scanme.nmap.org
Starting Nmap 7.92 ( https://nmap.org ) at 2022-03-23 08:59 CST
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.30s latency).
Other addresses for scanme.nmap.org (not scanned): 2600:3c01::f03c:91ff:fe18:bb2f
Not shown: 989 closed tcp ports (conn-refused)
PORT STATE SERVICE
22/tcp filtered ssh
53/tcp open domain
69/tcp filtered tftp
80/tcp open http
135/tcp filtered msrpc
136/tcp filtered profile
137/tcp filtered netbios-ns
138/tcp filtered netbios-dgm
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds
593/tcp filtered http-rpc-epmap
Nmap done: 1 IP address (1 host up) scanned in 74.23 seconds
对网站的系统信息进行收集
为了更好的进行渗透测试,我们需要收集网站的系统信息,服务信息,版本等。
使用nmap -sV [IP] 来识别服务信息
例如我们扫描dvwa靶场
┌──(kali㉿kali)-[~]
└─$ nmap -sV 192.168.236.130
Starting Nmap 7.92 ( https://nmap.org ) at 2022-03-23 09:22 CST
Nmap scan report for 192.168.236.130
Host is up (0.00030s latency).
Not shown: 997 filtered tcp ports (no-response)
PORT STATE SERVICE VERSION
80/tcp open http Apache httpd 2.4.23 ((Win32) OpenSSL/1.0.2j PHP/5.4.45)
3306/tcp open mysql MySQL (unauthorized)
5357/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 16.07 seconds