6、evil box one

低—>中

目标:获取root权限以及2个flag

主机发现

靶机 192.168.1100.40

或者使用fping -gaq 192.168.100.1/24发现主机使用ping的方式。

端口扫描

发现开放了22和80

可以使用-A参数,-A参数会得到更多的扫描细节

访问80端口就是一个apache的基本的页面,按照管理习惯性的扫描目录

使用gobuster进行扫描

需要指定字典,这里使用的seclists的字典,这个字典我之前也没用过也不知道怎么样,不过应该也是挺全的吧

gobuster dir -u http://192.168.100.40 -w /usr/share/seclists/Discovery/Web-Content/directory-list-1.0.txt -x txt,php,html

爆出一个secret和robots

访问secret什么都没有,robots里面有个Hello H4x0r 可以留意一下这个H4x0r,可以拿去尝试进行一下ssh的爆破。

不过这个gobuster确实速度很快,dirsearch慢多了

有了secret继续爆下一级目录看有没有其他的东西

扫到一个evil.php 一看就是很有关系的页面,但是访问了还是以前空白啥也没有,这个时候就可以尝试fuzz一下参数了

使用ffuf,此为kali自带的工具

首先正常的思路是参数和值两个位子都进行fuzz,那么命令:

分别指定两个字典并且赋予别名然后填在url的位置,-fs的意思是不看返回的结果大小为0 -c是上色

这样也并没有跑出东西来,字典我就随便加了几个数字字符啥的。

这里想到了就有也就是文件包含漏洞,挺抽象的有种做ctf的感觉要靠猜。参数还是未知的,值可以尝试使用../index.html看能否包含根目录下的index.html

改变一下命令

在只有一个字典的情况下使用FUZZ占位

可以看到有反应了,在command的参数下有了数据

确实包含到了文件

既然可以包含本地文件那么可以尝试是否可以包含远程文件,但是远程文件的包含需要开启一个东西一般情况下是默认关闭的。

尝试包含了kali的80端口下的文件发现没有反应。说明并没有开启这个功能。

尝试php://input直接执行也不可以

使用filter过滤器读取evil的源码,成功读取了但是源码内容真就是include()。。。

尝试使用filter写入文件,我之前从没有遇到过可以写入的所以都忘记了filter还有写的方式

写入的数据可以使用base64也可以使用其他的比如什么rot13

php://filter/write=convert.base64-decode/resource=test.php&txt=PD8gcGhwaW5mbygpOyA/Pg==

我估计写入是需要权限的一般情况下也是无法写入数据的所以这里也是失败了。

到此处利用文件包含似乎无法直接通过封装器拿到shell,那么转换思路继续使用文件读取读取一些敏感文件看是否有新的收获

当读取到etc/passwd的文件的时候,发现除了root用户还有一个可以登录的用户mowree。很好线索来了,可以尝试利用此账户去爆破ssh

不过这里的利用方式也是挺细节的

ssh mowre@192.168.100.40 -v 使用-v显示详细的细节

可以使用秘钥进行登录,一般在服务器上开启了这个功能的话会在.ssh下面生成一个公钥文件authorized_keys

那么尝试一下看能否读取到文件

成功读取到这个公钥文件

文件也提示了使用的rsa的加密算法那么如果没有改名的话默认的私钥名称就是id_rsa

成功读取到私钥

把它复制保存下来并且赋权chmod 600 不赋权是使用不了的这是Linux的保护机制

在使用私钥登录时又遇到了新的问题,私钥还被进行了一层加密。。。

┌──(root㉿kali)-[~/.ssh]

└─# ssh mowre@192.168.100.40 -i mowre_rsa

Enter passphrase for key 'mowre_rsa':

没有办法,只能尝试使用工具来爆破这个私钥了

这里使用john

首先需要使用john自带的脚本将id_rsa转换为hash文件

cd /usr/share/john

./ssh2john.py ~/.ssh/mowre_rsa > /home/vanish/scripts/hash

爆破的字典使用kali自带的名为rockyou的大字典

cp /usr/share/wordlists/rockyou.txt.gz ./

gunzip rockyou.txt.gz

然后使用john进行爆破

也是很快就爆破出来了

密码为unicorn

终于成功的突破了边界

接下来就是尝试提权的操作了,但是尝试了常见的提权方式并没有结果

这个时候选择直接上传提权辅助脚本上去刷一下

项目连接:https://github.com/peass-ng/PEASS-ng 挺全的,一直在更新

脚本提示匹配到了两个CVE可以利用,不过继续往后看到了

/etc/passwd竟然是可写的

那直接向里面写入一个新的高权限用户可以吗,正常情况下这个文件是只有root才可以改写的

那么这里可以选择写入一个新的用户或者修改原来的里面用户的内容

这个x其实就是秘密的地方,但是为了安全都放到shadow下面去了,如果对这里的x进行修改为密码那么就会会使用这里的密码额而不是shadow那边的密码

但是Linux中的密码都有加密算法的,这里使用openssl passwd -1生成 也就是MD5

123456加密结果为$1$RS8gC1Yn$yuaP7i.uPcRZ5XMclvJC9.

成功修改后

使用nano进行的编辑,用的不怎么习惯啊,ctrl +O 保存 ctrl + X 退出

成功提权至root权限

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Redis 7.x 系列【23】哨兵模式

有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 工作原理2.1 监控2.2 标记下线2.3 哨兵领袖2.4 新的主节点2.5 通知更新 3. …

JMeter案例分享:通过数据验证的错误,说说CSV数据文件设置中的线程共享模式

前言 用过JMeter参数化的小伙伴,想必对CSV Data Set Config非常熟悉。大家平时更关注变量名称,是否忽略首行等参数,其余的一般都使用默认值。然而我最近遇到一个未按照我的预想读取数据的案例,原因就出在最后一个参数“线程共享模…

服务重启时容器未自动启动

1、容器重启策略 通过设置容器的重启策略,‌可以决定在容器退出时Docker守护进程是否重启该容器。‌常见的重启策略包括:‌ no:‌不重启容器,‌默认策略。‌always:‌无论容器是如何退出的,‌总是重启容器…

keil配置irom偏移地址进行IAP,偏移地址不生效问题解决

如果keil配置了 IROM1 偏移地址,但是生成的hex,程序并没有偏移,问题多半是出现在linker里如下图所示。选择了分散加载,所以keil配置地址偏移不生效。 点开edit 更改分散加载的地址偏移即可。 偏移成功,可以IAP了。

算法学习笔记(8.5)-零钱兑换问题二

目录 Question: 动态规划思路: 代码实现: 空间优化代码 Question: 给定n种硬币,第i种硬币的面值为coins[i-1],目标金额为amt,每种硬币可以重复选取,问凑出目标金额的硬币组合数量。 动态规划思路…

Java 线程池详解

序言 在高并发编程中,线程池是一个非常重要的组件。它不仅能够有效地管理和复用线程资源,还可以提升应用程序的性能和稳定性。本文将详细介绍Java中的线程池机制,以及如何正确地使用线程池。 一、什么是线程池 线程池是一组已经初始化并等…

ftp pool 功能分析及 golang 实现

本文探究一种轻量级的 pool 实现 ftp 连接。 一、背景 简要介绍:业务中一般使用较多的是各种开源组件,设计有点重,因此本文探究一种轻量级的 pool 池的思想实现。 期望:设置连接池最大连接数为 N 时,批量执行 M 个 F…

超时导致SparkContext构造失败的问题探究

文章目录 1.前言2. 基于事故现场对问题进行分析2.1 日志分析2.2 单独测试Topology代码试图重现问题 3. 源码解析3.1 Client模式和Cluster模式下客户端的提交和启动过程客户端提交时在两种模式下的处理逻辑ApplicationMaster启动时在两种模式下的处理逻辑 3.2 两种模式下的下层角…

OSPF.综合实验

1、首先将各个网段基于172.16.0.0 16 进行划分 1.1、划分为4个大区域 172.16.0.0 18 172.16.64.0 18 172.16.128.0 18 172.16.192.0 18 四个网段 划分R4 划分area2 划分area3 划分area1 2、进行IP配置 如图使用配置指令进行配置 ip address x.x.x.x /x 并且将缺省路由…

uniapp编译成h5后接口请求参数变成[object object]

问题:uniapp编译成h5后接口请求参数变成[object object] 但是运行在开发者工具上没有一点问题 排查: 1:请求参数:看是否是在请求前就已经变成了[object object]了 结果: 一切正常 2:请求头:看…

2024辽宁省数学建模C题【改性生物碳对水中洛克沙胂和砷离子的吸附】原创论文分享

大家好呀,从发布赛题一直到现在,总算完成了2024 年辽宁省大学数学建模竞赛C题改性生物碳对水中洛克沙胂和砷离子的吸附完整的成品论文。 本论文可以保证原创,保证高质量。绝不是随便引用一大堆模型和代码复制粘贴进来完全没有应用糊弄人的垃…

OpenGL笔记九之彩色三角形与重心插值算法

OpenGL笔记九之彩色三角形与重心插值算法 —— 2024-07-07 晚上 bilibili赵新政老师的教程看后笔记 code review! 文章目录 OpenGL笔记九之彩色三角形与重心插值算法1.运行3.main.cpp 1.运行 3.main.cpp 代码 #include <iostream>#define DEBUG//注意&#xff1a;glad…

虚拟机centos连接xshell

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 ☁️运维工程师的职责&#xff1a;监…

VsCode远程ssh连接失败:Could not establish connection to XXX

一、问题描述 在VsCode中按下"F1"&#xff0c;选择Remote-SSH:Connect to Host 选择一个已经配置好的SSH主机&#xff0c;比如我选择的是192.168.0.104&#xff1a; 结果提示&#xff1a;Could not establish connection to XXX 二、解决方法 观察VsCode的输出信息…

几何建模-Parasolid中GO功能使用

1.背景介绍 1.1 Parasolid和它的接口间关系 1.2 什么是GO GO全称是Graphical Output.你的程序需要在屏幕或者打印设备上显示模型数据时。在需要使用PK中的某个渲染函数时创建图形显示数据时&#xff0c;Parasolid会调用GO相关的函数。GO函数会输出绘图指令给你的应用程序提供…

《昇思25天学习打卡营第20天|onereal》

应用实践/LLM原理和实践/基于MindSpore的GPT2文本摘要 基于MindSpore的GPT2文本摘要 数据集加载与处理 数据集加载 本次实验使用的是nlpcc2017摘要数据&#xff0c;内容为新闻正文及其摘要&#xff0c;总计50000个样本。 数据预处理 原始数据格式&#xff1a; article: [CLS…

MySQL-基础点

目录 MySQL概念 数据库三大范式是什么&#xff1f; blob 和 text 有什么区别&#xff1f; DATETIME 和 TIMESTAMP 的异同&#xff1f; MySQL 中 in 和 exists 的区别&#xff1f; MySQL 里记录货币用什么字段类型比较好&#xff1f; MySQL 怎么存储 emoji? 用过哪些 M…

MongoDB7出现:Windows下使用mongo命令提示不是内部或外部命令

确保环境变量添加正确的情况&#xff0c;仍然出现这种问题。如果安装的是新版本&#xff0c;则大概率是新版本mongodb的bin里面没有mongo命令 解决方案&#xff1a; 下载mongodb shell 下载链接 把shell的命令放进来 启用命令&#xff1a;mongosh

浅谈数学模型在UGC/AIGC游戏数值调参中的应用(AI智能体)

浅谈数学模型在UGC/AIGC游戏数值调参中的应用 ygluu 卢益贵 关键词&#xff1a;UGC、AIGC、AI智能体、大模型、数学模型、游戏数值调参、游戏策划 一、前言 在策划大大群提出《游戏工厂&#xff1a;AI&#xff08;AIGC/ChatGPT&#xff09;与流程式游戏开发》讨论之后就已完…

每日一练,java

目录 描述示例 总结 描述 题目来自牛客网 •输入一个字符串&#xff0c;请按长度为8拆分每个输入字符串并进行输出&#xff1b; •长度不是8整数倍的字符串请在后面补数字0&#xff0c;空字符串不处理。 输入描述&#xff1a; 连续输入字符串(每个字符串长度小于等于100) 输…