实战打靶集锦-023-oscp

news2024/11/13 23:09:33

文章目录

  • 1. 主机发现
  • 2. 端口扫描
  • 3. 服务枚举
  • 4. 服务探查
    • 4.1 探查ssh
    • 4.2 探查Apache
      • 4.2.1 爆破admin
      • 4.2.2 利用secret.txt
  • 5. 提权
    • 5.1 枚举主机信息
    • 5.2 查看passwd文件
    • 5.3 枚举定时任务
    • 5.4 枚举可执行文件
    • 5.5 查看EXP
    • 5.6 Capabilities位
    • 5.7 Linpeas提权


靶机地址:https://download.vulnhub.com/infosecprep/oscp.zip

1. 主机发现

目前只知道目标靶机在56.xx网段,通过如下的命令,看看这个网段上在线的主机。

$ nmap -sP 192.168.232.0/24

在这里插入图片描述
锁定靶机地址为141。

2. 端口扫描

通过下面的命令进行端口扫描。

$ sudo nmap -p 1-1000 192.168.232.141
$ sudo nmap -p 1001-65535 192.168.232.141

在这里插入图片描述
开放的端口也不少,枚举一下端口上的服务。

3. 服务枚举

通过下面的命令枚举一下端口上运行的服务。

$ sudo nmap -p22,80,33060 -A -sV -sT 192.168.232.141

在这里插入图片描述

4. 服务探查

看了上面枚举出来的内容,还没有太多收获,探查一下每个端口上的服务看看。

4.1 探查ssh

直接看看这个ssh版本有没有合适的EXP,没有就直接跳过。

4.2 探查Apache

先通过searchsploit搜索一下看看。
在这里插入图片描述
从输出结果来看,只有一个缓冲区溢出的EXP貌似可用,先放一边,用浏览器访问一下。
在这里插入图片描述
是一个页面,从内容来看,貌似是一个WordPress的站点。
在这里插入图片描述
也有login之类的链接,还可以回复内容(这里可能可以构建反弹shell),如下图所示。
在这里插入图片描述
先枚举一下目录再说。

$ dirsearch -u http://192.168.232.141/

在这里插入图片描述
枚举出了不少的内容,先进入登录页面看看。
在这里插入图片描述
这个页面可以进行用户枚举,admin用户是存在的。既然有WordPress,就用wpscan扫描一下试试看。

$ wpscan --update
$ wpscan --url http://192.168.232.141/

在这里插入图片描述
扫出来了一些东西,但是感觉价值没有想象中的大。这里有个robots.txt文件,内容如下。
在这里插入图片描述
根目录下有个secret.txt文件是不允许爬取的,手工访问一下试试看。
在这里插入图片描述
竟然是个密钥文件,等会儿试试,说不定可以用于ssh登录。下面是XML-RPC服务的情况。
在这里插入图片描述
接下来searchsploit搜索一下WordPress 5.4.2版本有没有合适的EXP,遗憾的是没有合适的,基本都是跟插件有关的漏洞,而且我们目前通过wpscan扫描结果中是不含插件的。再试试大杀器metasploit试试看。
在这里插入图片描述
貌似第一个,xmlrpc跟我们wpscan搜索出来的第一条很像,使用一下看看。
在这里插入图片描述
没法创建反弹shell,暂时放弃。感觉无计可施了,下面干两件事:第一,admin密码爆破一把;第二,想办法看看怎么用前面发现的那个类似密钥的secret.txt文件中的内容登录shell。

4.2.1 爆破admin

直接在burp上挂载rockyou爆破admin用户。
在这里插入图片描述
爆破半天都是失败的,暂时放弃。

4.2.2 利用secret.txt

要想利用secret.txt,得先确定通过什么账号ssh到靶机,随便先用root试一下。
在这里插入图片描述
嗯,这说明靶机禁用了密码登录,看来只有通过密钥登录,跟我们的猜测有些不谋而合啊,试试吧。首先在~/.ssh/id_rsa的文件,文件内容就是secret.txt的内容,不多赘述。
在这里插入图片描述
接下来,见证奇迹的时刻。

$ ssh root@192.168.232.141 -i ~/.ssh/id_rsa

在这里插入图片描述
嗯,私钥的权限太大,修改一下。

$ chmod 600 ~/.ssh/id_rsa

在这里插入图片描述
看来我们考虑的是对的,这个不太可能是root的私约,我们仔细看看站点,登录的用户名可能是谁。
在这里插入图片描述
有点意思,这个帖子里说这个靶机的唯一用户是oscp,试试看吧。
在这里插入图片描述
会不会这个证书不是用来ssh登录的,手工生成一个ssh登录的密钥试试看。
在这里插入图片描述
完全不一样啊,难道这样就结束了?不应该的,按照靶机的尿性,这个secret一定是有用的。先通过identifier看看这是个什么样的东西。

$ hash-identifier "LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVE.....

在这里插入图片描述
结果啥都没发现,不知道是不是换行的原因,弄成一行试试。
在这里插入图片描述
还是不行,但是总感觉像是编码过的,死马当活马医,base64试试看。
在这里插入图片描述
哈,还真是,base64解码以后,更像是一个密钥了,并且开头结尾明确写了,openssh私钥,这下应该妥了。重新做成~/.ssh/id_rsa文件,再次尝试登录。
在这里插入图片描述

$ chmod 600 ~/.ssh/id_rsa
$ ssh oscp@192.168.232.141 -i ~/.ssh/id_rsa

在这里插入图片描述
确实成功登录了,边界已经突破,下一步提权。

5. 提权

优化一下ssh。

$ /usr/bin/python3.8 -c "import pty;pty.spawn('/bin/bash')"

在这里插入图片描述

5.1 枚举主机信息

$ uname -a
$ cat /etc/*-release

在这里插入图片描述
64位的Ubuntu 20.04。

5.2 查看passwd文件

$ cat /etc/passwd

在这里插入图片描述
尝试写入一个用户。

$ openssl passwd test123

在这里插入图片描述

$ echo "testusr:$1$PR0EMvBa$Y6BsWQAQVRKB3ZfEnS1Ow0:0:0:root:/root:/bin/bash" >> /etc/passwd

在这里插入图片描述
有写保护,写入用户失败。

5.3 枚举定时任务

$ cat /etc/crontab

在这里插入图片描述
没有可以利用的。

5.4 枚举可执行文件

$ sudo –l
$ find / -type f -user root -perm -o=w 2>/dev/null | grep -v "/sys/" | grep -v "/proc/"
$ find / -user root -perm -4000 2>/dev/null

在这里插入图片描述

好像也没有发现太有用的信息。

5.5 查看EXP

根据系统和内核版本,查一下searchsploit。
在这里插入图片描述
Ubuntu 20.04没有合适的,看一下内核版本。
在这里插入图片描述
貌似有两个提权的EXP跟我们的内核有关系,逐个试试看。

$ gcc -static -o 50135 50135.c

在这里插入图片描述
第一个失败,再看看第二个。

$ gcc -o 41886 41886.c 

在这里插入图片描述
出错,在老版linux内核上编译一下,结果几个linux内核上都报如下的错误,放弃。
在这里插入图片描述

5.6 Capabilities位

试一下上次打靶的capabilities位提权的方法。

$ /usr/sbin/getcap -r / 2>/dev/null

在这里插入图片描述
没有合适的。

5.7 Linpeas提权

第一个仍然是sudo。
在这里插入图片描述
搜索一下EXP。
在这里插入图片描述
利用一下试试看。
在这里插入图片描述
仍然是需要oscp用户的密码,继续往下看。
有个CVE-2022-2586漏洞,EXP在https://www.openwall.com/lists/oss-security/2022/08/29/5/1。试一下

$ gcc 1.c -o 1 -lmnl -lnftnl -no-pie -lpthread

在这里插入图片描述
无法编译,继续下一个CVE-2021-4034,EXP在https://codeload.github.com/berdav/CVE-2021-4034/zip/main

$ unzip main.zip
$ cd CVE-2021-4034-main
$ make

这时候目录下会生成一个名为cve-2021-4034的可执行文件,上传到靶机,执行一下。

$ chmod u+x cve-2021-4034

在这里插入图片描述
还是有些问题,在老的系统试一下,可惜的是在两个老版本的机器上都出现如下的错误。
在这里插入图片描述
接下来试一下CVE-2021-22555,EXP地址为https://raw.githubusercontent.com/google/security-research/master/pocs/linux/cve-2021-22555/exploit.c
在这里插入图片描述
继续往下,发现具备SUID权限的可执行程序中有个/usr/bin/bash。
在这里插入图片描述
这下好了,直接用bash提权。

$ bash -p

在这里插入图片描述
这是发现命令提示符由$变成了#,应该是提权成功,进一步验证一下。
在这里插入图片描述
确实成功了,直接找一下flag。
在这里插入图片描述
提权成功。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[python]基于LSTR车道线实时检测onnx部署

【框架地址】 https://github.com/liuruijin17/LSTR 【LSTR算法介绍】 LSTR车道线检测算法是一种用于识别和定位车道线的计算机视觉算法。它基于图像处理和机器学习的技术,通过对道路图像进行分析和处理,提取出车道线的位置和方向等信息。 LSTR车道线…

深入理解网络通信和TCP/IP协议

目录 计算机网络是什么? 定义和分类 计算机网络发展简史 计算机网络体系结构 OSI 七层模型 TCP/IP 模型 TCP/IP 协议族 TCP/IP 网络传输中的数据 地址和端口号 MAC地址 IP 地址 端口号 为什么端口号有65535个? 综述 TCP 特性 TCP 三次握…

【Linux】统信服务器操作系统V20 1060a-AMD64 Vmware安装

目录 ​编辑 一、概述 1.1 简介 1.2 产品特性 1.3 镜像下载 二、虚拟机安装 一、概述 1.1 简介 官网:统信软件 – 打造操作系统创新生态 统信服务器操作系统V20是统信操作系统(UOS)产品家族中面向服务器端运行环境的,是一款…

外贸流程的基本流程图怎么画?这样画简单快速

外贸流程的基本流程图怎么画?随着全球化的不断深入,外贸行业逐渐成为了国家经济发展的重要支柱。对于许多企业和个人来说,掌握外贸基本流程是非常必要的。但是,很多人在初次接触外贸时,对于流程的各个环节并不熟悉&…

c语言--二进制和其他进制之间的转换

目录 一、前言二、二进制、十进制、十六进制、八进制的组成2.1二进制的组成2.2十进制的组成2.3八进制的组成2.4十六进制的组成 三、二进制转换为十进制3.1 二进制转换为十进制3.2十进制转换为二进制 四、二进制转八进制和十六进制4.1二进制转八进制4.2二进制转换为十六进制 五、…

【Iot】什么是串口?什么是串口通信?串口通信(串口通讯)原理,常见的串口通信方式有哪些?

串口通信原理 1. 串口2. 串口通信4. 波特率与比特率5. 帧格式3. 串口通讯的通讯协议3.1. RS2323.2. RS485 总结 1. 串口 串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。 串口可…

浅谈安科瑞消防产品在酒店行业的应用-安科瑞 蒋静

摘要:进入 21 世纪以来,随着网络技术的发展,世界经济呈现全球化趋势,作为消费者衣食住行的重要组成部分,酒店行业也是生活服务市场重要的组成部分。在经济发展的环境下,在旅游业兴起的趋势下,酒…

Multisim14.0仿真(四十七)基于74LS161计数器设计

一、74LS161简介: 74LS161是4位二进制同步计数器,该计数器能同步并行预置数据,具有清零置数、计数和保持功能,具有进位输出端。可串接计数器使用。 二、74LS161引脚定义及说明: CLR:为异步清零控制端。 LOAD:为同步置数控制端 ENP,ENT:为计数控制端 D , C , B , A :为…

如何提高销售线索的质量和数量?这篇文章教会您

提高销售线索质量和数量的方法有:一、优化网站和营销内容;二、利用社交媒体和网络营销;三、提供优质的客户服务和体验;四、定期的市场调研和数据分析;五、建立合作关系和联盟;六、持续学习和创新。通过这些…

多名汇友爆料:在Primemax平台怎么也提不了现!

近期,有多名汇友向我站爆料,称其交易的Primemax平台怎么也出不了金。多名用户在Primemax平台无法出金 据一汇友描述,骗子最初是通过Line加了她好友,聊天中,对方俨然一副阳光帅气的精英人士形象,然后套近乎获…

C++初阶:适合新手的手撕string类(模拟实现string类)

上次讲了常用的接口:C初阶:初识STL、String类接口详细讲解(万字解析) 今天就来进行模拟实现啦 文章目录 1.基本结构与文件规划2.构造函数(constructor)2.1构造函数2.1.1无参有参分开2.1.2利用缺省参数合起来 2.2拷贝构…

Vue 学习随笔系列九 -- 表格中插入图片、背景、自定义表头

表格中插入图片和icon 文章目录 表格中插入图片和icon一、如何插入图片1、代码2、效果 二、文字添加背景1、代码2、效果 三、表头悬浮提示语四、表头添加图标 一、如何插入图片 1、代码 <template><div><el-tablesize"small"borderv-loading"l…

WordPress每天发布60s插件

源码名称:WordPress每天发布60s插件 适用平台:WordPress Wordpress还是比较适合个人博客网站&#xff0c;这个60秒插件适合一些喜欢自动发新闻早报晚报人员 喜欢的赶紧下手。找 万能工具箱合集 小程序即可找到资源

乐鑫与 Elektor 杂志合作推出特刊,聚焦 AIoT 创新

在新一年的起始之际&#xff0c;我们很荣幸地与 Elektor 合作推出由乐鑫领衔编辑的杂志特刊。欢迎点此阅读电子版本。 Elektor 杂志作为国际电子工程和科技创新的重要平台&#xff0c;自 20 世纪 60 年代起&#xff0c;就引领着电子制造的发展潮流。如今&#xff0c;它已经发展…

【Java程序设计】【C00190】基于SSM的餐厅点餐管理系统(论文+PPT)

基于SSM的餐厅点餐管理系统&#xff08;论文PPT&#xff09; 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于ssm的餐厅点餐系统 本系统分为前台用户和后台管理员2个功能模块。 前台用户&#xff1a;当游客打开系统的网址后&#xff0c;首先看到的就是首页界…

Spark 依赖包加载方式

1 Spark 依赖包来源 我们知道Spark application运行加载依赖有三个地方&#xff1a; systemClasspath&#xff1a;Spark安装时候提供的依赖包&#xff0c;${SPARK_HOME}/jars下的包。spark-submit --jars 提交的依赖包spark-submit --config "spark.{driver/executor}.e…

如何恢复删除的文件?五个步骤搞定文件恢复

在数字洪流汇聚的今日&#xff0c;我们的信息大多以电子的形态保存。这些电子文件&#xff0c;无论是职场上的重要文书&#xff0c;还是个人生活中的照片与视频&#xff0c;一旦消失&#xff0c;就可能带来无法弥补的遗憾。所幸的是&#xff0c;随着科技的马不停蹄&#xff0c;…

vue3学习——自定义插件,注册组件(引入vue文件报红线)

在src/components文件夹目录下创建一个index.ts文件 import { App, Component } from Vue import SvgIcon from /components/SvgIcon/index.vue import Pagination from /components/Pagination/index.vue const globalComponents: { [name: string]: Component } { SvgIcon,…

Stable Code 3B:轻量级编程助手,无GPU本地运行

引言 Stability AI近期发布了Stable Code 3B&#xff0c;这是一个集中了多项创新技术的轻量级编程辅助模型。它在保持轻量的同时&#xff0c;展现出了与大型模型如CodeLLaMA 7B相媲美的性能&#xff0c;这一特性使其在没有GPU的环境中也能运行&#xff0c;极大地拓宽了其应用范…

面试经典150题——验证回文串

​"Challenges are what make life interesting and overcoming them is what makes life meaningful." - Joshua J. Marine 1. 题目描述 2. 题目分析与解析 在解决这个问题之前我们先想一下普通的回文串是如何判断的。 方法1&#xff1a;通过将字符串反转&#xff…