driftingblues1靶机
信息收集
- 使用nmap扫描得到目标靶机ip为
192.168.78.166
,开放80和22端口
web渗透
- 访问目标网站,在查看网站源代码的时候发现了一条注释的base64加密字符串
- 对其解密得到了一个目录文件
- 访问文件发现是一串ook加密的字符串,直接使用在线工具进行解密
- 通过解密得到了需要使用
host
文件,host
是可以修改ip和域名对应的文件,看来后续的目标要网域名方向靠拢了
- 因为域名的格式是
xxx.xxx
,发现网页上还真有这样子格式
- 尝试修改
hosts
文件内容,添加ip
和域名对应内容,再次尝试访问,可以正常访问
- 发现页面和往常一样,这里想到可能需要进行子域名爆破,关键点隐藏在子域名中,使用
layer
爆破发现卡住了,不得已转到kali主机下,使用ffuf
工具进行子域名爆破,得到了子域名为test
- 再次修改
hosts
文件内容,将test
子域名也添加在内
- 访问网站之后提示正常流程工作,也没有什么内容,尝试用
dirb
扫描一下目录,发现robots.txt
文件的存在
- 访问robots.txt文件,发现隐藏了一个ssh的文件
- 访问该文件提示ssh的登录密码为该字符串后面跟一个数字
- 尝试使用代码将可能的密码输出,保存到kali主机的文件中
获取shell
- 根据前面的提示,每个提示后面多次出现
-eric
,怀疑这个就是登录的用户名,可以使用Hyder或者美杜莎进行ssh
爆破登录,爆破结果显示带有6的字符串是登录密码 - 进行ssh登录,成功登陆到
eric
用户的shell
权限提升
- 第一思路依旧是尝试
suid
,sudo -l
和定时任务的查看,都没有什么收获
- 再访问了一下备份目录,发现有一个
backup.sh
的文件,查看了一下脚本里的内容,发现最后一条命令提示是一个后门,看这样子是可以使用root
权限执行后面文件
- 但是要如何去执行这个脚本呢,使用当前用户权限执行是需要
root
密码的,肯定是需要调用root
命令来执行这个脚本才行,来到eric
目录下看看有没有可以利用的内容,只有一个flag
可以查看
- 那样子能使用
root
权限执行该脚本就还剩下定时任务了,但是查看定时任务没有显示,查看了wp
发现可以使用一个工具pspy64
来查看主机所执行的所有进程,使用工具查看后发现等待一段实践执行了backup.sh
脚本,而且uid
是0,代表使用的是root权限
- 直接再
tmp
目录下创建后门文件,在里面写入获取root
权限的命令,一开始想着直接写入/bin/bash
和反弹shell
脚本直接获取root
权限,但是发现失败了。
- 但可以尝试的方式有很多,毕竟有着
root
权限,可以创建一个新的root
用户写入到passwd
文件中,也可以给eric
用户添加root
权限写入到sudoers
文件中,这里尝试的第二种方法,直接将eric
用户赋予所有权限并不需要密码
- 通过了解还有一个方法,可以将
shadow
文件内容存入到tmp
目录的一个文件中,查看shadow
内容可以对root
用户的密码进行hash
爆破,从而获取root
用户的密码
- 使用
sudo su -
切换到root
权限,查看flag
靶机总结
- 本次靶机进行了域名渗透操作,进行了子域名爆破,提权时隐藏了定时任务的信息
- 根据网页提示说和
host
文件有关系,接触到host就要想到ip和域名对应,既然涉及到域名那就少不了子域名爆破了,信息就隐藏在子域名网页中。还要讲子域名添加到hosts
文件中。子域名爆破的工具有很多,这里使用的是layer
和ffuf
- 再进行后渗透时,发现存在脚本需要使用
root
权限执行即可进行权限提升的利用,那多半就可能是定时任务来执行的,本次靶机就将定时任务的信息隐藏了,但是可以使用pspy64
工具查看得知存在定时任务 - 但是在利用后门文件时,出现了不会利用的情况,想着直接
/bin/bash
或者反弹shell直接等待root
的shell
返回就行了。看来似乎不是这样子,但是有了root
权限还是可以进行很多操作的,例如在passwd
和sudoers
文件中新增内容,查看shadow
文件内容,甚至可以访问root
目录,使用ls查看flag
文件名,再加上cat
命令直接查看文件,都可以不用获取root
用户权限