Kali Linux安全渗透教程(内部资料)
大学霸内部资料Kali Linux安全渗透教程大学霸www.daxueba.net ,·28· Kali Linux安全渗透教程(内部资料)——daxueba.net 版权

大学霸内部资料
Kali Linux

安全渗透教程
大学霸
www.daxueba.net
,·28· Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
目录
第1章 Linux安全渗透简介
1.1 什么是安全渗透
1.2 安全渗透所需工具
1.3 Kali Linux 简介
1.4 安装Kali Linux
1.4.1 安装至硬盘
1.4.2 安装至USB 驱动器
1.4.3 安装至VMware Workstation
1.4.4 安装WMware Tools
1.5 Kali更新与升级
1.6 基本设置
1.6.1 启动默认的服务
1.6.2 设置无线网络
第2章 配置Kali Linux
2.1 准备内核头文件
2.2 安装并配置NVIDIA 显卡驱动
2.2 应用更新和配置额外安全工具
2.3 设置ProxyChains
2.4 目录加密
2.4.1 创建加密目录
2.4.2 文件夹解密
第3章 高级测试实验室
3.1 使用VMwareWorstation
3.2 攻击WordPress 和其它应用程序
3.4.1 获取WordPress 应用程序
3.4.2 安装WordPress Turnkey Linux
3.4.3 攻击WordPress 应用程序
第4章 信息收集
4.1 枚举服务
4.1.1 DNS枚举工具DNSenum
4.1.2 DNS枚举工具fierce
4.1.3 SNMP枚举工具Snmpwalk
4.1.4 SNMP枚举工具snmpcheck
4.1.5 SMTP枚举工具smtp-user-enum
4.2 测试网络范围
4.2.1 域名查询工具DMitry
4.2.2 跟踪路由工具Scapy
4.3 识别活跃的主机
4.3.1 网络映射器工具Nmap
4.3.2 使用NMAP 识别活跃主机
4.4 查看打开的端口
4.4.1 TCP端口扫描工具Nmap
4.4.2 图形化TCP 端口扫描工具Zenmap
4.5 系统指纹识别
4.5.1 使用NMAP 工具识别系统指纹信息
,Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
4.5.2 指纹识别工具p0f
4.6 服务的指纹识别
4.6.1 使用Nmap 工具识别服务指纹信息
4.6.2 服务枚举工具Ampa
4.7 使用Maltego 收集信息
4.7.1 准备工作
4.7.2 使用Maltego 工具
4.8 绘制网络结构图 ·29·
第5章 漏洞扫描
5.1 使用Nessus
5.1.1 安装和配置Nessus
5.1.2 扫描本地漏洞
5.1.3 扫描网络漏洞
5.1.4 扫描指定Linux 系统漏洞
5.1.5 扫描指定Windows 的系统漏洞
5.2 使用OpenV AS
5.2.1 配置OpenV AS
5.2.2 创建Scan config和扫描任务
5.2.3 扫描本地漏洞
5.2.4 扫描网络漏洞
5.2.5 扫描指定Linux 系统漏洞
5.2.6 扫描指定Windows 系统漏洞
第6章 漏洞利用
6.1 Metasploitable操作系统
6.2 Metasploit基础
6.2.1 Metasploit的图形管理工具Armitage
6.2.2 控制Metasploit 终端(MSFCONSOLE )
6.2.3 控制Metasploit 命令行接口(MSFCLI )
6.3 控制Meterpreter
6.4 渗透攻击应用
6.4.1 渗透攻击MySQL 数据库服务
6.4.2 渗透攻击PostgreSQL 数据库服务
6.4.3 渗透攻击Tomcat 服务
6.4.4 PDF文件攻击
6.4.5 使用browser_autopwn模块渗透攻击浏览器
第7章 权限提升
7.1 使用假冒令牌
7.1.1 工作机制
7.1.2 使用假冒令牌
7.2 本地权限提升
7.3 使用社会工程学工具包(SET )
7.3.1 启动社会工程学工具包
7.3.2 传递攻击载荷给目标系统
7.3.3 收集目标系统数据
7.3.4 清除踪迹
7.3.5 创建持久后门
7.3.6 中间人攻击(MITM )
,·30· Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
第8章 密码攻击
8.1 密码在线破解
8.1.1 Hydra工具
8.1.2 Medusa工具
8.2 分析密码
8.2.1 Ettercap工具
8.2.2 使用MSFCONSOLE 分析密码
8.3 破解Windows 用户密码
8.4 创建密码字典
8.4.1 Crunch工具
8.4.2 rtgen工具
8.5 使用NVIDIA 计算机统一设备架构(CUDA )
8.6 物理访问攻击
第9章 无线网络密码破解
9.1 Aircrack-ng破解无线网络
9.1.1 破解WEP 加密的无线网络
9.1.2 破解WPA/WPA2无线网络
9.2 Gerix Wifi Cracker破解无线网络
9.2.1 Gerix破解WEP 加密的无线网络
9.2.2 使用Gerix 创建假的接入点
9.3 Arpspoof工具
9.3.1 URL流量操纵攻击
9.3.2 端口重定向攻击
第2章 配置Kali Linux
上一章介绍了Kali Linux的概念及安装。本章将介绍Kali 的配置,以便于用户能充分利用它。本章主要介绍配置内核头文件、配置额外安全工具和设置ProxyChanis 等。本章主要知识点如下:
❑ 准备内核头文件
❑ 应用更新并配置额外的安全工具
❑ 设置ProxyChains
❑ 目录加密
2.1 准备内核头文件
内核头文件是Linux 内核的源代码。有时候,用户会面临需要编译内核头文件代码。为以后使用内核头文件做准备,本节将介绍编译内核头文件的详细步骤。
准备内核头文件的具体操作步骤如下所示:
(1)更新软件包列表。执行命令如下所示:
,Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
root@Kali:~# apt-get update ·31·
输出结果如下所示:
Binary 20130905-08:50] kali/non-free Translation-en
获取:1 http://mirrors.neusoft.edu.cn kali Release.gpg [836 B]
获取:2 http://mirrors.neusoft.edu.cn kali/updates Release.gpg [836 B]
命中 http://mirrors.neusoft.edu.cn kali Release
获取:3 http://mirrors.neusoft.edu.cn kali/updates Release [11.0 kB]
命中 http://mirrors.neusoft.edu.cn kali/main i386 Packages
命中 http://mirrors.neusoft.edu.cn kali/non-free i386 Packages
命中 http://mirrors.neusoft.edu.cn kali/contrib i386 Packages
获取:4 http://security.kali.org kali/updates Release.gpg [836 B]
......
获取:5 http://mirrors.neusoft.edu.cn kali/updates/main i386 Packages [205 kB]
获取:6 http://http.kali.org kali Release.gpg [836 B]
命中 http://mirrors.neusoft.edu.cn kali/updates/contrib i386 Packages
命中 http://http.kali.org kali Release
命中 http://mirrors.neusoft.edu.cn kali/updates/non-free i386 Packages
获取:7 http://security.kali.org kali/updates Release [11.0 kB]
命中 http://http.kali.org kali/main Sources
获取:8 http://security.kali.org kali/updates/main i386 Packages [205 kB]
忽略 http://mirrors.neusoft.edu.cn kali/contrib Translation-zh_CN
忽略 http://mirrors.neusoft.edu.cn kali/contrib Translation-zh
输出的信息是在更新软件源中指定的软件下载链接。此过程中需要等待一段时间,如果网速好的话,更新的速度会快一点。由于篇幅的原因,这里只列出了一少部分的输出信息。
(2)使用apt-get 命令准备内核头文件。执行命令如下所示:
root@Kali:~# apt-get install linux-headers- `uname -r`
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
Package 'linux-headers' is not installed, so not removed
注意,根据正则表达式 3.12-kali1-686-pae 选中了 nvidia-kernel-3.12-kali1-686-pae
注意,根据正则表达式 3.12-kali1-686-pae 选中了 linux-image-3.12-kali1-686-pae
注意,根据正则表达式 3.12-kali1-686-pae 选中了 linux-image-3.12-kali1-686-pae-dbg
注意,根据正则表达式 3.12-kali1-686-pae 选中了 linux-modules-3.12-kali1-686-pae
注意,根据正则表达式 3.12-kali1-686-pae 选中了 linux-latest-modules-3.12-kali1-686-pae
注意,根据正则表达式 3.12-kali1-686-pae 选中了 linux-headers-3.12-kali1-686-pae
注意,选取 linux-image-3.12-kali1-686-pae 而非 linux-modules-3.12-kali1-686-pae
注意,选取 linux-image-686-pae 而非 linux-latest-modules-3.12-kali1-686-pae
linux-image-3.12-kali1-686-pae 已经是最新的版本了。
linux-image-3.12-kali1-686-pae 被设置为手动安装。
linux-image-686-pae 已经是最新的版本了。
下列软件包是自动安装的并且现在不需要了:
libmozjs22d libnfc3 libruby libwireshark2 libwiretap2 libwsutil2 python-apsw
ruby-crack ruby-diff-lcs ruby-rspec ruby-rspec-core ruby-rspec-expectations
ruby-rspec-mocks ruby-simplecov ruby-simplecov-html xulrunner-22.0
Use 'apt-get autoremove' to remove them.
将会安装下列额外的软件包:
glx-alternative-mesa glx-alternative-nvidia glx-diversions
linux-headers-3.12-kali1-common linux-kbuild-3.12 nvidia-alternative
,·32· Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
nvidia-installer-cleanup nvidia-kernel-common
建议安装的软件包:
nvidia-driver
下列【新】软件包将被安装:
glx-alternative-mesa glx-alternative-nvidia glx-diversions
linux-headers-3.12-kali1-686-pae linux-headers-3.12-kali1-common
linux-image-3.12-kali1-686-pae-dbg linux-kbuild-3.12 nvidia-alternative
nvidia-installer-cleanup nvidia-kernel-3.12-kali1-686-pae nvidia-kernel-common
升级了 0 个软件包,新安装了 11 个软件包,要卸载 0 个软件包,有 5 个软件包未被升级。
需要下载 361 MB 的软件包。
解压缩后会消耗掉 1,812 MB 的额外空间。
您希望继续执行吗?[Y/n]y
输出的信息显示了,linux-headers 相关软件包的一个信息。提示将会安装哪些软件包及软件包的大小等信息。此时输入y ,继续安装。安装完后,将退出程序。
(3)复制generated 下的所有内容。执行命令如下所示:
root@Kali:~# cd /usr/src/linux-headers-3.12-kali1-686-pae/
root@Kali:/usr/src/linux-headers-3.12-kali1-686-pae# cp -rf include/generated/* include/linux/
(4)编译内核头文件代码。
2.2 安装并配置NVIDIA 显卡驱动
显卡驱动程序就是用来驱动显卡的程序,它是硬件所对应的软件。驱动程序即添加到操作系统中的一小块代码,其中包含有关硬件设备的信息。有了此信息,计算机就可以与设备进行通信。驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。操作系统不同,硬件的驱动程序也不同。本节将介绍在Kali 中安装NVIDIA 显卡驱动的方法。
安装NVIDIA 显卡驱动的具体操作步骤如下所示:
(1)将开源的NVIDIA 驱动nouveau 加入黑名单。方法如下所示:
root@kali:~# vi /etc/modprobe.d/blacklist.conf
blacklist nouveau
以上信息表示在blacklist.conf 文件中添加了blacklist nouveau一行内容。 (2)查看当前的系统信息。执行命令如下所示:
root@kali:~# uname -a
Linux kali 3.12-kali1-kali-amd64 #1 SMP Debian 3.12.6-2kali1 (2014-01-06) x86_64 GNU/Linux
从输出的信息中可以看到当前系统安装的是Kali ,其内核版本为3.12,系统架构是x86_64位。
(3)安装Linux 头文件。执行命令如下所示:
root@kali:~# aptitude -r install linux-headers-$(uname -r)
下列“新”软件包将被安装。
linux-headers-3.12-kali1-686-pae linux-headers-3.12-kali1-common{a}
linux-kbuild-3.12{a}
下列软件包将被“删除”:
firmware-mod-kit{u} libadns1{u} libcrypto 9{u} liblzma-dev{u}
libsmi2-common{u} libwebkit-dev{u} msgpack-python{u} p7zip{u}
python-adns{u} python-bs4{u} python-easygui{u} python-ipy{u}
python-levenshtein{u} python-mechanize{u} python-metaconfig{u}
,Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
python-paramiko{u} python-pycryptopp{u} python-pysnmp4{u}
python-pysnmp4-apps{u} python-pysnmp4-mibs{u} sqlmap{u} unrar-free{u}
0 个软件包被升级,新安装 3 个,22 个将被删除, 同时 206 个将不升级。
需要获取 4,848 kB 的存档。解包后将释放 55.4 MB。
您要继续吗?[Y/n/?] y ·33· 以上输出信息显示了当前要安装的软件包数、将被删除的软件包、升级的软件包等。此时输入y ,继续安装。
(4)安装NVIDIA 内核。执行命令如下所示:
root@kali:~# apt-get install nvidia-kernel-3.12-kali1-adm64
执行以上命令后,将显示安装nvidia-kernel 包的安装过程。此时不需要手动设置任何信息,将自动安装完成。 (5)安装NVIDIA 驱动nvidia-kernel-dkms 包。执行命令如下所示:

root@kali:~# aptitude install nvidia-kernel-dkms
下列“新”软件包将被安装。
dkms{a} glx-alternative-mesa{a} glx-alternative-nvidia{a}
glx-diversions{a} libgl1-nvidia-glx{a} libvdpau1{a}
linux-headers-3.12-kali1-686-pae{a} linux-headers-3.12-kali1-common{a}
linux-headers-686-pae{a} linux-kbuild-3.12{a} nvidia-alternative{a}
nvidia-driver{a} nvidia-installer-cleanup{a} nvidia-kernel-common{a} nvidia-kernel-dkms nvidia-vdpau-driver{a} xserver-xorg-video-nvidia{a}
0 个软件包被升级,新安装 17 个,0 个将被删除, 同时 207 个将不升级。
需要获取 29.4 MB 的存档。解包后将要使用 108 MB。
您要继续吗?[Y/n/?] y 以上输出信息显示了将安装的软件包、及软件包的大小。此时输入y ,继续安装。在安装过程中,会出现如图2.1所示的界面。
2.1 配置xserver-xorg
该界面提示需要配置xserver-xorg-video-nvidia 。在该界面单击OK 按钮,后面手动进行配置。
(6)安装NVIDIA 显卡驱动应用程序nvidia-xconfig 包。执行命令如下所示:
root@kali:~# aptitude install nvidia-xconfig
(7)生成Xorg 服务配置文件。执行命令如下所示:
root@kali:~# nvidia-xconfig
执行以上命令后,将输出如下所示的信息。
WARNING: Unable to locate/open X configuration file.
New X configuration file written to '/etc/X11/xorg.conf'
输出的信息,表示重新生成了xorg.conf 文件。然后,重新启动系统。
(8)检查NVIDIA 显卡驱动是否成功安装。首先检查GLX 模块,执行命令如下所示: root@kali:~# glxinfo | grep -i "direct rendering"
,·34· Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
direct rendering: Yes 检查NVIDIA 驱动模块。执行命令如下所示:
root@kali:~# lsmod | grep nvidia
nvidia 9442880 29
i2c_core 24129 2 i2c_i801,nvidia
root@kali:~# lsmod | grep nouveau
确认开源的NVIDIA 驱动nouveau 是否被加入黑名单。通过查看以下文件的内容,确定nouveau 是否被加入黑名单。如下所示:
root@kali:~# cat /etc/modprobe.d/nvidia.conf
alias nvidia nvidia-current
remove nvidia-current rmmod nvidia
root@kali:~# cat /etc/modprobe.d/nvidia-blacklists-nouveau.conf
# You need to run "update-initramfs -u" after editing this file.
# see #580894
blacklist nouveau
root@kali:~# cat /etc/modprobe.d/nvidia-kernel-common.conf
alias char-major-195* nvidia
options nvidia NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=44 NVreg_DeviceFileMode=0660 # To enable FastWrites and Sidebus addressing, uncomment these lines
# options nvidia NVreg_EnableAGPSBA=1
# options nvidia NVreg_EnableAGPFW=1
看到以上输出信息,就表示nouveau 已被加入黑名单。
为了加快用户破解一些大数据文件,需要安装CUDA (Compute Unified Device Architecture)。CUDA 是一种由NVIDIA 推出的通用并行计算架构,该架构使GPU 能够解决复杂的计算问题。
安装NVIDIA CUDA工具集和NVIDIA openCL。执行命令如下所示:
root@kali:~# aptitude install nvidia-cuda-toolkit nvidia-opencl-icd
执行以上命令后,如果输出过程中没有出错的话,表示该软件包安装成功。以后就可以使用CUDA 破解加密的大数据文件。
2.2 应用更新和配置额外安全工具
本节将介绍更新Kali 的过程和配置一些额外的工具。这些工具在后面的章节中将是有用的。Kali 软件包不断地更新和发布之间,用户很快发现一套新的工具比最初在DVD ROM上下载的软件包更有用。本节将通过更新安装的方法,获取Nessus 的一个激活码。最后安装Squid 。
应用更新和配置额外安全工具的具体操作步骤如下所示:
(1)更新本地软件包列表库。执行命令如下所示:
root@Kali:~# apt-get update
执行以上命令后,需要等待一段时间。执行完后,会自动退出程序。
(2)升级已存在的包。执行命令如下所示:
root@Kali:~# apt-get upgrade
(3)升级到最新版本。执行命令如下所示:
root@Kali:~# apt-get dist-upgrade
(4)从http://www.nessus.org/products/nessus/nessus-plugins/obtain-an-activation-code官网获取一个激活码。在浏览器中输入该地址后,将显示如图2.1所示的界面。
,Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有

·35·
图2.1 获取激活码
在该界面选择免费版

Using Nessus at Home?单击Select 按钮,将显示如图2.2所示的界面。
图2.2 注册信息
在该界面填写一些注册信息,填写完后,单击Register 按钮,将在注册的邮箱中收到一份邮件。进入邮箱后,可看到该邮件中有一个激活码。
(5)为Nessus 网络接口创建一个用户账户。执行命令如下所示:
root@Kali:~# /opt/nessus/sbin/nessus-adduser
,·36· Kali Linux安全渗透教程(内部资料)——daxueba.net 版权所有
#输入用户名为admin #输入用户密码 #输入确认密码 Login : admin Login password : Login password (again) :
Do you want this user to be a Nessus 'admin' user ? (can upload plugins, etc...) (y/n) [n]: y
User rules #用户规则
----------
nessusd has a rules system which allows you to restrict the hosts
that admin has the right to test. For instance, you may want
him to be able to scan his own host only. Please see the nessus-adduser manual for the rules syntax
Enter the rules for this user, and enter a BLANK LINE once you are done :
(the user can have an empty rules set) #按下空格键提交输入
Login : admin
Password : ***********
This user will have 'admin' privileges within the Nessus server
Rules :
Is that ok ? (y/n) [y] y User added #用户被添加
从输出的信息中可以看到admin 用户被添加成功了。(6)激活Nessus 。执行命令如下所示: root@Kali:~# /opt/nessus/bin/nessus-fetch --register XXXX-XXXX-XXXX-XXXX-XXXX
以上命令中的XXXX-XXXX-XXXX-XXXX-XXXX 指的是在邮件中获取到的激活码。执行以上命令后,输出信息如下所示:
Your Activation Code has been registered properly - thank you.
Now fetching the newest plugin set from plugins.nessus.org #等待一段时间Could not verify the signature of all-2.0.tar.gz #不能证实all-2.0.tar.gz 的签名
(7)启动Nessus 服务。执行命令如下所示:
root@Kali:~# /etc/init.d/nessusd start
在第(6)步骤中激活Nessus 时,输出和以上相同的信息,表示没有激活Nessus 。这个问题在RHEL 上不会出现的。不过,这里有方法来解决这个问题。具体操作步骤如下所示:
(1)删除文件nessus-fetch.rc 。执行命令如下所示:
root@Kali:~# rm /opt/nessus/etc/nessus/nessus-fetch.rc
(2)使用nessus-fetch --challenge获取挑战码。执行命令如下所示:
root@Kali:~# /opt/nessus/bin/nessus-fetch --challenge
Challenge code: xxxxxxxxxxxxxxxxxxxxxxxx
You can copy the challenge code above and paste it alongside your
Activation Code at:
其中,xxxxxxxxxxxxxxxxxxxxxxxx 是输出的挑战码。
(3)重新登录http://www.nessus.org/products/nessus/nessus-plugins/obtain-an-activation-code网站获取激活码。
(4)登录https://plugins.nessus.org/offline.php网站,在该界面输入生成的挑战码和激活码,如图2.1所示的界面。